首页
/ 探索网络漏洞的利器:Inception

探索网络漏洞的利器:Inception

2024-05-20 00:51:22作者:冯爽妲Honey

Inception 是一款高度可配置的工具,用于对任意数量的主机进行自定义检查。它的使用简单,但功能强大,只需几分钟,通过providerCreate.html,您就可以创建所需的漏洞或服务指纹。

这款工具对于从事Bug bounty活动的猎手来说非常实用,他们可以快速扫描大量主机上的特定端点,并报告如果该端点返回指定字符串、状态码或Content-Length时的情况。

Inception是Go语言版本的Snallygaster,内置了来自Snallygaster的大量测试案例,以及由我添加的更多案例。默认测试包括公共访问git配置文件、.env文件、Magento配置文件、PHP信息文件、服务器状态页面、Rails和Symfony数据库配置文件、CORS配置错误检测以及根目录的基本XSS检查等。

与其他工具不同的是,Inception允许用户在不编写一行代码的情况下创建并提供自己的测试案例。

利用goroutine,Inception运行速度极快,但它不会对单个域并发发送大量请求,以防止WAF阻塞,并确保每个测试案例在移动到下一个测试之前针对所有指定域执行一次。

关键特性

  1. 使用providerCreate.html创建签名非常简单。
  2. 利用Go语言的goroutine实现高速扫描。
  3. 避免过度冲击单个服务器,减少被WAF阻止的风险。
  4. 可高度配置,支持GET/POST/HEAD/PUT/DELETE请求,并自定义头部和正文。
  5. 最小化误报率,可根据具体字符串、状态码、Content-Length过滤响应。

安装与更新

确保已安装Go,然后运行以下命令进行安装:

go get github.com/proabiral/inception

要更新Inception,请运行:

go get -u github.com/proabiral/inception

使用方法

查看命令行选项以了解详细用法:

▶️  inception -h

基本用法示例:

▶️ inception -d /path/to/domainlist.txt

所有检测到的问题将在屏幕上显示。如果没有发现问题,将显示“已完成”消息。如果出现类似provider.json: no such file or directory的错误,可以通过-provider选项提供provider.json文件的路径。

输出保存

▶️ inception -d /path/to/domainlist.txt -o /tmp/output

结果将以JSON格式保存,可以使用如jqgron这样的工具后期处理。

常见问题解答

  • 如何设置域名列表? 提供一个每行包含一个域名的文本文件,无需协议前缀,例如:

    facebook.com
    twitter.com
    gmail.com
    hackerone.com
    bugcrowd.com
    
  • 如何添加自定义测试案例? 使用providerCreate.html生成JSON,填写详细信息,然后生成的JSON如下所示:

    [
        ...
    ]
    

    将生成的JSON保存到文件中,并在运行工具时通过-provider选项提供其路径。

指令占位符

provider.json中,您可以使用预定义的指令占位符,它们会根据工具运行的目标URL自动替换:

  • $hostname:主域名
  • $domain:域名(不带www)
  • $fqdn:完全限定域名(包含www)

例如,如果目标是https://end8ej99anfko.x.pipedream.net,则:

  • $hostname 变为 end8ej99anfko
  • $domain 变为 x.pipedream.net
  • $fqdn 变为 end8ej99anfko.x.pipedream.net

这在处理CORS或查找以域名开头的文件等情况时非常有用。

名字背后的意义

Inception这个名字灵感来源于电影《盗梦空间》,在这部电影中,主角迪卡普里奥从人的潜意识中窃取秘密。如同电影,这款工具也从Web服务器中挖掘出隐藏的信息。

最后,感谢Iceman为本项目命名,并且它借鉴了他Subover项目中的并发模块。

立即尝试Inception,让它成为您的网络安全侦探,发掘那些潜藏在网络深处的秘密吧!

登录后查看全文
热门项目推荐