公眾號:None安全團隊
2020.9.19凌晨3點23
深夜難眠,回想起今天waf上一大堆誤報和寥寥無幾的告警,甲方爸爸提供的兩葷一素已經換成了白粥榨菜,農夫已經換成了怡寶,豬肉換成了榨菜,或許我們是時長一個月實習生的身份,已經徹底暴露了,明天不知道是不是只能吃開水泡面了。唉,明天又要穿上白襯衫,繼續假裝自己是5年工作經驗的安全專家,今晚終于認清現實,活捉紅隊0day依然是我們遙不可及的夢。
????????生而為人,我很抱歉。
材料準備:
burp suite、模擬器(把微信裝好)、node.js、wxappUnpacker、root explorer
操作流程:
步驟1: 配置Burp和模擬器(模擬器需導入ca證書),打開模擬器的WLAN-->高級設置-->輸入物理機的ip以及一個沒被占用的端口,Burp用于代理該端口
步驟2:打開微信-->隨便點擊一個小程序進入小程序主界面,然后打開文件管理器
在/data/data/com.tencent.mm/MicroMsg/xxxxxxx(不同微信文件夾也不同)/appbrand/pkg/目錄下存放著剛才訪問這個小程序的兩個數據包,
兩個包分為子包和主包?
壓縮后通過模擬器的微信發送到物理機進行反編譯
可以直接用notepad++ 但是會有亂碼,這里使用git下載的wxappUnpacker進行反編譯
CMD進入wxappUnpacker的下載目錄,安裝依賴包
微信小程序開發?Shell
?
npm install esprima
npm install css-tree
小程序可以獲取到用戶什么數據?npm install cssbeautify
npm install vm2
npm install uglify-es
小程序測試怎么測、npm install js-beautify
?復制?文本
依賴包安裝好后 使用命令node wuWxapkg.js C:\xxxxxx\xxxxxx\_-1971317095_1.wxapkg
進行反編譯(如果是子包的話需要加-s參數)
反編譯完成
接下來就是針對所有js、html進行漏洞分析,尋找突破口
通過簡單的信息收集得知該小程序是windows+iis7.5+.net+mssql
80、443、3389端口開啟
且程序采用了svc接口
從js中得到一個接口用于判斷手機號是否注冊
通過單引號 和 '--(單引號+mssql閉合) 發現返回包不同?
使用單個單引號 報錯:系統故障
使用 單引號跟閉合 返回正確數據包? 因此判斷該處通過單引號閉合
最后驗證存在SQL注入
注入點權限很小 --os-shell權限為iis
且注入點只能布爾和延遲,列目錄寫shell屬實浪費時間
通過子域名掃描得到后臺一枚,且發現該程序居然還是一個通用系統。。
通過注入點拿到后臺賬號密碼后 就是常規的滲透思路了,本文著重于微信公眾號的反編譯(最后好像有點跑題),有不足之處希望評論區留言指正,反正我也不會改的
個人怎么做微信小程序,
更多精彩內容 公眾號:None安全團隊
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态