記一次有點抽象的滲透經歷

0x01 獲取webshell

在各種信息蒐集中,發現某個ip的端口掛着一個比較老的服務。

首先看到了員工工號和手機號的雙重驗證,也不知道賬號是什麼結構組成的,基本上放棄字典爆破這一條路。於是乎打開之前用燈塔的掃描結果,看看文件泄露是否有什麼可用的點。發現其中有一個略顯突出的help.html。可能是系統的幫助文檔

看得出來也是一個年久失修的系統了,圖片的鏈接都已經404了。但是這裏得到了一個示例賬號zs001,也知道了初始密碼是123456(吐槽:果然年久失修了,這個系統就沒有輸入密碼的input,只有一個手機號驗證碼)。

知道了賬號,這裏還缺一個手機號。感覺這個系統應該沒做驗證,畢竟看上去是一個老舊的系統,估計有沒有人用用都不好說,可能是單位那種廢棄了但是還沒下架的邊緣資產。然後隨便輸入一個手機號上去。果然!

然後隨便找個手機接碼平臺等待驗證碼發過來,然後過了十幾分鍾無果,想到可能是廢棄資產的原因驗證碼接口早就失效了。於是沒辦法只能掏出burp開始爆破,估計驗證碼也是四位數,如果是六位數驗證碼大概率沒繫了。但是這波運氣還算可以。也是成功爆破出來了。

然後登錄後臺直接上傳一個木馬,沒有任何過濾。emmmmmmm開始懷念過去。那時候的洞是真好挖啊。

但是訪問的時候出現了一個壞消息。404了,404了怎麼辦呢。想到了可能目標服務器上有殺軟之類的東西。木馬可能是上傳到服務器上了,然後再上傳到服務器之後被殺軟自動隔離,那麼這時候訪問就會出現404。

【---- 幫助網安學習,以下所有學習資料免費領!領取資料加 we~@x:dctintin,備註 “開源中國” 獲取!】

① 網安學習成長路徑思維導圖
② 60 + 網安經典常用工具包
③ 100+SRC 漏洞分析報告
④ 150 + 網安攻防實戰技術電子書
⑤ 最權威 CISSP 認證考試指南 + 題庫
⑥ 超 1800 頁 CTF 實戰技巧手冊
⑦ 最新網安大廠面試題合集(含答案)
⑧ APP 客戶端安全檢測指南(安卓 + IOS)

0x02 webshell免殺

這裏中途又替換了幾個github上的免殺木馬,均無效。ps:我是懶狗,免殺什麼的能不寫代碼就不寫代碼。php這玩意有個好處,就是語法特別髒,各種免殺手法層出不窮,花裏胡哨。這裏就簡單的介紹幾種比較偷懶的方法。

2.1 無字母webshell

個人在實際滲透過程中還算挺好用的,無字母webshell本來是ctf的一些題目,但是事實上免殺效果確實也挺強,而且適應性也比較高,適合一句話木馬。之後可以直接上蟻劍鏈接。

舉例:

ps:當然都說了偷懶,肯定不是我寫的,直接去ctf平臺的題目的writeup偷一個就好了。或者直接百度搜索無字母webshell。

免殺效果如下:

ps: emmmmmmm,我只能說,無敵好吧。

2.2 一鍵免殺工具免殺

這裏不多說了,去github直接找就是,但是github特徵過於明顯,以至於被多個殺軟廠商標記。現在感覺免殺的效果也不太好了。基本上start高一些的工具生成的webshell都是秒殺。但是可以找一些start數量少的,效果也還不錯。

2.3 混淆免殺

混淆免殺,php有很多在線混淆的網站,也就是在不改變代碼的功能情況下打亂語法的結構使得代碼變爲不可讀或者可讀性很差的代碼防止其他人去修改。

可以直接去網上搜索php混淆

這裏就是用的就是在線混淆php代碼的方式直接過了目標主機上的殺軟。

0x03 繞過殺軟上線

接下來就是傳frp代理,上cs的操作了。這裏先上一個cs,但是由於目標機器上有殺軟,所以採用shellcode加加載器的方式去進行繞過。衆所周知,cs的特徵較爲明顯,很容易就會被殺軟攔截。

首先是shellcode免殺,shellcode免殺可以使用github上的sgn加密工具,免殺效果能達到vt0檢測。github鏈接:https://github.com/EgeBalci/sgn

使用方法也很簡單,把cs生成的shellcode放在sgn文件夾中執行 ,***.sgn就是免殺之後的shellcode了。

sgn.exe shellcode文件名

免殺前效果

免殺後效果

剩下的就是加載器本身的免殺了,這裏我就用github隨便clone下來的加載器。可以看到編譯完成都沒來得及運行就直接被殺了。那麼怎麼在不動加載器的源代碼的情況下。完成免殺效果呢。

其實有一個比較抽象的技巧,就是當文件足夠大之後,殺軟的沙箱就不會去運行該程序,從而實現繞過殺軟的檢測。比如一個幾百m的exe殺軟就不會去檢測。

那麼怎麼能讓文件變得足夠大呢?就是不斷往文件後面填充垃圾字符,比如\x00這樣既不會影響exe執行,又能夠讓exe變得足夠大。比如我用python不斷往文件後面追加\x00字符。

這裏上代碼

with open('1.exe', 'ab') as f:\f.write(b'\x00' * 1024 * 1024 * 100)

可以看到每次運行add.py 1.exe就大了100m。

然後多次運行,當1.exe達到2g的時候,根據每個殺毒軟件版本不一定能用。有些新的殺軟不會檢測文件大小判斷是否運行。(這個方法很玄學,不是很穩定,有時候能有有時候不能用。但是還是值得一試,畢竟是老前輩傳承下來的經典免殺手法。)

但是問題來了,2個g的文件怎麼上傳到服務器又是一個問題,這裏就要說明一下\x00的好處了,可以通過壓縮成zip的方式把exe壓縮,壓縮文件的體積其實還是和之前編譯好的文件差不多大。然後只能很方便的就能夠把壓縮包上傳到服務器,然後通過服務器的命令去進行解壓。也可以通過webshell去實現解壓文件的功能。

0x04 內網移動

之後便是熟悉的內網橫向環節了。首先是看到了一個弱口令,然後直接鏈接數據庫然後getshell。

然後直接net user add,之後3389鏈接上服務器,翻出了一個密碼本。

找到一個雙網卡的sql server服務器,然後上線,掃一波SMB

最後找到重要系統10.x.x.x 這個系統,看着是java寫的後端,也是一個看起來很老的界面了。

掃了一下路徑發現存在druid。

原本想找session登錄的,然後想了一下試一下運氣直接懟一波st2,成功拿下(也是運氣爆棚)

  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章