javascript
JS文件信息收集工具-LinkFinder
0x00 前言
我們?cè)跐B透測(cè)試的之前,信息收集是必要的步驟,而JS文件中往往會(huì)暴露出很多的信息,比如一些注釋的中銘感信息,內(nèi)網(wǎng)ip地址泄露等等,還會(huì)有一些絕對(duì)路徑或者相對(duì)路徑的url,而這些url中很有可能就存在著一些未授權(quán)訪問(wèn)或者其他更高級(jí)的漏洞,但是手動(dòng)的去一個(gè)個(gè)查看的效率太過(guò)于地下,所以這里分享一個(gè)JS文件的信息收集工具——LinkFinder
0x01 LinkFinder介紹
LinkFinder是一個(gè)Python腳本,旨在發(fā)現(xiàn)JavaScript文件中的端點(diǎn)及其參數(shù)。這樣,滲透測(cè)試人員和Bug獵手就可以在他們正在測(cè)試的網(wǎng)站上收集新的,隱藏的端點(diǎn)。導(dǎo)致新的測(cè)試環(huán)境,可能包含新的漏洞。它通過(guò)將jsbeautifier for python與相當(dāng)大的正則表達(dá)式結(jié)合使用來(lái)實(shí)現(xiàn)。正則表達(dá)式由四個(gè)小的正則表達(dá)式組成。這些負(fù)責(zé)查找:
- 完整網(wǎng)址(https://example.com/*)
- 絕對(duì)URL或點(diǎn)分URL(/\*或../*)
- 帶有至少一個(gè)斜杠(text/test.php)的相對(duì)URL
- 相對(duì)網(wǎng)址,不帶斜線(test.php)
輸出以HTML或純文本形式給出
0x02 安裝
2.1 手動(dòng)安裝
克隆到本地安裝
LinkFinder支持Python 3。
| 1 2 3 | $ git clone https://github.com/GerbenJavado/LinkFinder.git $ cd LinkFinder $ python setup.py install |
解決依賴關(guān)系
| 1 | pip3 install -r requirements.txt |
2.2 Docker一鍵安裝
創(chuàng)建docker鏡像
docker build -t linkfinder
運(yùn)行docker
docker run --rm -v $(pwd):/linkfinder/output linkfinder -i http://example.com/1.js -o /linkfinder/output/output.html
確保使用的``/linkfinder/output` 路徑在你的輸出路徑,
0x03 使用方法
3.1 參數(shù)解釋
| -i | –input | 輸入一個(gè)URL,文件或者文件夾,js文件必須要以.js后綴結(jié)尾 |
| -o | –output | 默認(rèn)是以html的結(jié)果輸出,也可以使用命令行的形式輸出 |
| -r | –regex | 使用正則快速的篩選我們需要的信息 (e.g. ^/api/) |
| -d | –domain | Toggle to use when analyzing an entire domain. Enumerates over all found JS files. |
| -b | –burp | Toggle to use when inputting a Burp ‘Save selected’ file containing multiple JS files |
| -c | –cookies | Add cookies to the request |
| -h | –help | show the help message and exit |
3.2 使用示例
- 在在線JavaScript文件中查找端點(diǎn)并將HTML結(jié)果輸出到results.html的最基本用法:
| 1 | python linkfinder.py -i https://example.com/1.js -o results.html |
- CLI / STDOUT輸出(不使用jsbeautifier,這使其非???#xff09;:
| 1 | python linkfinder.py -i https://example.com/1.js -o cli |
- 分析整個(gè)域及其JS文件:
| 1 | python linkfinder.py -i https://example.com -d |
- 打p輸入(在目標(biāo)中選擇要保存的文件,右鍵單擊,然后Save selected items將該文件作為輸入):
| 1 | python linkfinder.py -i burpfile -b |
- 枚舉JavaScript文件的整個(gè)文件夾,同時(shí)查找以/ api /開(kāi)頭的端點(diǎn),最后將結(jié)果保存到results.html中:
| 1 | python linkfinder.py -i 'Desktop/*.js' -r ^/api/ -o results.html |
0x04 使用截圖
https://www.mad-coding.cn/2019/12/23/JS%E6%96%87%E4%BB%B6%E4%BF%A1%E6%81%AF%E6%94%B6%E9%9B%86%E5%B7%A5%E5%85%B7-LinkFinder/#0x01-LinkFinder%E4%BB%8B%E7%BB%8D
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的JS文件信息收集工具-LinkFinder的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: fofa自动化爬虫脚本更新+详解
- 下一篇: Python----socket编程