LinkFinder查找js接口

关于链接查找器

LinkFinder是一个python脚本,用于发现JavaScript文件中的端点及其参数。通过这种方式,渗透测试人员和错误猎人能够在他们正在测试的网站上收集新的隐藏端点。导致新的试验场,可能包含新的漏洞。它通过使用python的jsbeautifier与相当大的正则表达式相结合来实现这一点。正则表达式由四个小正则表达式组成。这些负责查找:

  • 完整网址 (https://example.com/*)
  • 绝对网址或虚线网址( 或/\*../*)
  • 至少具有一个斜杠的相对 URL (text/test.php)
  • 不带斜杠的相对 URL (test.php)

输出以 HTML 或纯文本形式给出。@karel_origin为LinkFinder编写了一个Chrome扩展程序,可以在这里找到 。

截图

LinkFinder

安装

LinkFinder支持Python 3。

$ git clone https://github.com/GerbenJavado/LinkFinder.git
$ cd LinkFinder
$ python setup.py install

依赖

LinkFinder 依赖于 和 Python 模块。这些依赖项都可以使用pip安装。argparsejsbeautifier

$ pip3 install -r requirements.txt

用法

简写长篇描述
-i--输入输入:网址、文件或文件夹。对于文件夹,可以使用通配符(例如"/*.js")。
-o--输出"cli"打印到STDOUT,否则保存HTML文件的位置 默认:输出.html
-r--正则表达式正则表达式,用于针对找到的端点进行过滤(例如 ^/api/)
-d--域切换为在分析整个域时使用。枚举所有找到的 JS 文件。
-乙--打嗝切换为在输入包含多个JS文件的Burp"保存所选"文件时使用
-c--饼干向请求添加 Cookie
-h--帮助显示帮助消息并退出

例子

  • 在联机 JavaScript 文件中查找终结点并将 HTML 结果输出到结果的最基本用法.html:

python linkfinder.py -i https://example.com/1.js -o results.html

  • CLI/STDOUT 输出(不使用 jsbeautifier,这使得它非常快):

python linkfinder.py -i https://example.com/1.js -o cli

  • 分析整个域及其 JS 文件:

python linkfinder.py -i https://example.com -d

  • 打嗝输入(在目标中选择要保存的文件,右键单击,将该文件作为输入输入):Save selected items

python linkfinder.py -i burpfile -b

  • 枚举 JavaScript 文件的整个文件夹,同时查找以 /api/ 开头的终结点,最后将结果保存到结果.html:

python linkfinder.py -i 'Desktop/*.js' -r ^/api/ -o results.html

码头工人

  • 构建 Docker 映像:

    docker build -t linkfinder

  • 使用 Docker 运行

    docker run --rm -v $(pwd):/linkfinder/output linkfinder -i http://example.com/1.js -o /linkfinder/output/output.html

    请确保使用输出路径中的路径,否则当容器退出时,输出将丢失。/linkfinder/output

单元测试

  • 需要 pytest

pytest test_parser.py

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值