實戰|通過JS審計挖掘通用型CNVD證書的過程
0x00 本文涉及到的知識點
首先通過FOFA搜索引擎查找視頻監控相關的系統,然后利用弱口令、目錄掃描、JS審計進行漏洞挖掘出某個視頻監控系統存在未授權訪問漏洞,通過搜尋到的版權信息聯合企查查發現該公司注冊資金達到一億元,為了提高漏洞質量選擇繼續深入測試拿到SYSTEM權限,然后將視頻監控系統的指紋信息放在FOFA搜索3個以上進行復現,最后提交給CNVD獲得證書。
0x01 FOFA搜索
FOFA語法:
title="視頻" && title="監控" && title="系統" && country="CN" && country="CN" && region!="HK" && status_code="200"
這里要說一下為什么要用&&來分開,直接視頻監控系統不行嗎?答案是肯定是行的,但是如果業務系統標題是:視頻實時監控系統 或 監控XX視頻系統,這種如果FOFA的title為視頻監控系統是肯定搜索不出來的,而把title分開為多個就可以搜索出來的。

然后一個一個找,手工探測弱密碼、目錄掃描、JS審計(發現存在弱口令比較多admin/123456),總之一個一個試就得了。
0x02 JS審計出存在未授權訪問
發現目標站點:視頻監控管理系統,初步嘗試弱密碼無果后,進行JS審計

弱口令無果,JS審計搜索縮小范圍:登錄、成功、success等關鍵字。

其實到這里就已經能看出來了,首先是在Login.action獲得JSESSION,獲得JSESSION之后系統默認跳轉到/monitor/realt/init?curPageId=a1頁面(登錄成功后的頁面),這個漏洞就這么簡單,基本連工具都不用。只要師傅們細心就能夠挖到!

這里訪問Login.action已經獲取到了JSESSION,那么直接試著訪問后臺如何?

直接獲取了admin權限,并且可以在系統管理處直接增加新的用戶,給到admin權限。

因為該系統存在操作日志功能就沒有繼續往下做,此次的漏洞挖掘本應該就到這里結束了,可是呢發現了一個好玩的。
0x03 獲取版權發現該系統隸屬于1億元注冊資金的公司
在拿到權限后沒有對系統內部做多余的操作,但是又在內部審計了一下源代碼。

發現該系統隸屬于XXXX科技有限公司,之后又通過企查查得到注冊資金一億元

0x04 如何把漏洞質量提高
既然發現此漏洞為通用型-網絡設備漏洞,如果直接提交到CNVD最多可能就是一個中危的未授權訪問漏洞,那么如何將漏洞質量提高呢?(這里將最后提交給CNVD的是某某公司某網絡設備存在遠程代碼執行漏洞)
提高漏洞質量方式:
1、繼續測試發現更多漏洞(XSS也算,可以水進報告)
2、利用掃描工具去掃(Xray掛代理每個頁面進行測試)
3、是否適配某版本框架或中間件(檢測適配中間件or框架版本是否存在漏洞)
4、其它靠個人經驗總結,也可以往系統層面繼續滲透提高漏洞質量
本次提高漏洞質量進行繼續滲透,挖掘漏洞如下:
漏洞一:視頻監控管理系統默認使用了老款Struts2框架造成GETSHELL
因為是.action結尾的,可以看到此系統使用了Struts2框架,那么就測試一下

利用工具可以看到存在S2-046漏洞,試著whoami和getshell能否成功


瞬間覺得是不是提交這一個Struts2漏洞就可以了?我個人覺得不是的,貌似只能拿這個去提高漏洞質量,只有低版本框架漏洞是不給批的。
漏洞二:視頻監控管理系統多處存在XSS漏洞
直接掛Xray或者其它的工具掃就行了,也可以一個一個手工去測,這里沒有可說的,直接放poc驗證吧。
http://127.0.0.1/mgrcter/orgmgr/device/init?curPageId=%27-prompt(1)-%27http://127.0.0.1/monitor/runstate/init?curPageId=a7&navPageId=%27-prompt(1)-%27http://127.0.0.1/mgrcter/upgrade/init?curPageId=a7&navPageId=%27-prompt(1)-%27http://127.0.0.1/mgrcter/upgrade/init?curPageId=a7&navPageId=%27-prompt(1)-%27http://127.0.0.1/datacter/devicelog/init?curPageId=a3&navPageId=%27-prompt(1)-%27http://127.0.0.1/mgrcter/usermgr/user/init?curPageId=%27-prompt(1)-%27

0x05 FOFA搜索指紋信息
指紋信息這里就不敘述是什么了,那么我一般都注重于搜集那些更能精確到系統呢?
首先是ico圖標文件(但是大部分有些公司ico圖標都會改成自己的logo,但是本次的目的是要三個案例,所以可以用用),其次是就是標題了,最后最重要的就是body正文,我一般都會用body中帶有url鏈接的(因為可能獨一無二)內容
語法:
icon_hash="-30177135" && title="視頻監控管理系統" && body="monitor/realt"

11個夠用了,然后就是照著0x02進行漏洞復現(這里就不掩飾了),CNVD其實提交3個就夠用了,但是盡量多提交幾個,防止出現意外~(還沒審核呢網站突然就沒了~),多多益善。
0x06 結語
其實本次的漏洞挖掘毫無任何的技術含量,甚至有的連工具都沒有用上,基本全是手工進行挖掘的,最后挖出一個通用型的CNVD證書。所以本次的文章分享核心意義就是建議各位師傅挖洞要細心、仔細要有耐心。只要功夫深,鐵杵磨成針!