對網站的 javascript 文件進行分析,查找 js 文件中是否存在敏感信息,有的開發者會將接口、url、參數、accesskey 等信息放在 js 文件中,所以就可以分析 js 文件查找這些內容。
主要是找接口 url 或敏感參數,在漏洞掃描的時候,這種點很難去自動發現。
1、瀏覽器查看#
1.1 源碼#
瀏覽器打開目標網站,右鍵檢查
找到標籤,源代碼 / 來源
這個標籤下面可以找到網站的靜態資源,如 css、js 文件等,如上圖
在 mac 上,使用快捷鍵 option + command + F,可進行全局搜索
可以查找一些接口 url
1.2 SourceDetector#
SourceDetector 是一個自動發現.map 文件
1.3、findsomething#
該工具用於快速在網頁的 html 源碼或 js 代碼中提取一些有趣的信息,包括可能請求的資源、接口的 url,可能請求的 ip 和域名,洩漏的證件號、手機號、郵箱等信息。
https://github.com/ResidualLaugh/FindSomething/tree/master
2、burp suite#
2.1 js 腳本結合 burp#
打開瀏覽器控制台,複製如下腳本,回車
javascript:(function(){var scripts=document.getElementsByTagName("script"),regex=/(?<=(\"|\'|\`))\/[a-zA-Z0-9_?&=\/\-\#\.]*(?=(\"|\'|\`))/g;const results=new Set;for(var i=0;i<scripts.length;i++){var t=scripts[i].src;""!=t&&fetch(t).then(function(t){return t.text()}).then(function(t){var e=t.matchAll(regex);for(let r of e)results.add(r[0])}).catch(function(t){console.log("An error occurred: ",t)})}var pageContent=document.documentElement.outerHTML,matches=pageContent.matchAll(regex);for(const match of matches)results.add(match[0]);function writeResults(){results.forEach(function(t){document.write(t+"<br>")})}setTimeout(writeResults,3e3);})();
跳出如下頁面
複製到 intruder 模塊,利用 intruder 模塊進行遍歷
或者用 yakit 遍歷
2.2 HaE#
2.3 BurpJSLinkFinder#
2.4 findUriInjs#
一個既可主動,又可被動提取鏈接的 burp 插件
3、文件爬蟲 + nuclei#
3.1 rad#
rad --target https://www.wjbet777.com/ | grep ".js" > wjbet777.txt
3.2 argo#
基於 go-rod 的自動化通用爬蟲,用於自動化獲取網站的 URL
argo -t https://xxx.com/
3.3 URLFinder#
用於快速提取檢測頁面中 JS 與 URL 的工具,更快更全更舒服
urlFinder -u https://xxx.com/ -s all -m 3
4、jsleak#
echo https://www.xxx.com/ | jsleak -s
echo https://www.xxx.com/ | jsleak -l
完整 url
echo https://www.sishunwl.cn/ | jsleak -e
狀態檢查
echo https://www.sishunwl.cn/ | jsleak -c 20 -k
文本輸入
cat urls.txt | jsleak -l -s -c 30
cat ff.alive.txt | jsleak -l -s -c 30 -e -k