用于侦察和信息收集的攻击性安全工具

raccoon-scanner的Python项目详细描述


浣熊

Racoon

用于侦察和信息收集的进攻性安全工具

Build Statuslicenseospythonverraccoonver

功能
  • [X]DNS详细信息
  • [X]使用DNS转储程序的DNS可视映射
  • [X]whois信息
  • [X]TLS数据-支持的密码,TLS版本, 证书详细信息和SAN
  • [X]端口扫描
  • [X]服务和脚本扫描
  • [X]URL模糊和目录/文件检测
  • [X]子域枚举-使用google dorking、dns dumpster查询, SAN发现和暴力
  • [X]Web应用程序数据检索:
    • CMS检测
    • Web服务器信息和X-powered-by
    • robots.txt和站点地图提取
    • 饼干检查
    • 提取所有可模糊的URL
    • 发现HTML表单
    • 检索所有电子邮件地址
    • 扫描目标以查找易受攻击的s3存储桶并将其枚举 对于敏感文件
  • [X]检测已知WAF
  • [X]通过Tor代理支持
  • 匿名路由
  • [X]使用异步来提高性能
  • [X]将输出保存到文件-按文件夹分隔目标 以及按文件划分的模块
路线图和TODOS
  • []添加更多WAF,更好地检测
  • []owasp漏洞扫描(rfi、rce、xss、sqli等)
  • []支持多个主机(从文件读取)
  • []规避利率限制
  • []IP范围支持
  • []CIDR符号支持
  • []更多输出格式(至少是json)

关于

浣熊是一种用于侦察和信息收集的工具,强调简单性。
它可以从 获取dns记录,检索whois信息,获取tls数据,检测waf的存在,直到线程目录崩溃和 子域枚举。每次扫描都会输出到相应的文件。

由于浣熊的大部分扫描是独立的,不依赖彼此的结果, 它利用python的asyncio异步运行大多数扫描。

浣熊支持匿名路由的tor/proxy。它使用默认的单词列表(用于url模糊和子域发现) 来自惊人的SecLists存储库,但不同的列表可以作为参数传递。

有关更多选项-请参阅“用法”。

安装

对于最新的稳定版本:

pip install raccoon-scanner
# To run:
raccoon [OPTIONS]

请注意浣熊需要Python3.5+所以可能需要使用pip3 install raccoon-scanner
您还可以克隆github存储库以获取最新的功能和更改:

git clone https://github.com/evyatarmeged/Raccoon.git
cd Raccoon
python setup.py install # Subsequent changes to the source code will not be reflected in calls to raccoon when this is used
# Or
python setup.py develop # Changes to code will be reflected in calls to raccoon. This can be undone by using python setup.py develop --uninstall
# Finally
raccoon [OPTIONS] [TARGET]

对于Docker安装:

# Build the docker image
docker build -t evyatarmeged/raccoon .
# Run a scan, As this a non-root container we need to save the output under the user's home which is /home/raccoon
docker run --name raccoon evyatarmeged/raccoon:latest  example.com -o /home/raccoon
先决条件

浣熊使用Nmap扫描端口,并使用其他一些nmap脚本 和特点。在运行浣熊之前必须安装它。
OpenSSL也用于tls/ssl扫描,也应该安装。

使用量


Usage: raccoon [OPTIONS] TARGET

Options:
  --version                      Show the version and exit.
  -d, --dns-records TEXT         Comma separated DNS records to query.
                                 Defaults to: A,MX,NS,CNAME,SOA,TXT
  --tor-routing                  Route HTTP traffic through Tor (uses port
                                 9050). Slows total runtime significantly
  --proxy-list TEXT              Path to proxy list file that would be used
                                 for routing HTTP traffic. A proxy from the
                                 list will be chosen at random for each
                                 request. Slows total runtime
  -c, --cookies TEXT             Comma separated cookies to add to the
                                 requests. Should be in the form of key:value
                                 Example: PHPSESSID:12345,isMobile:false
  --proxy TEXT                   Proxy address to route HTTP traffic through.
                                 Slows total runtime
  -w, --wordlist TEXT            Path to wordlist that would be used for URL
                                 fuzzing
  -T, --threads INTEGER          Number of threads to use for URL
                                 Fuzzing/Subdomain enumeration. Default: 25
  --ignored-response-codes TEXT  Comma separated list of HTTP status code to
                                 ignore for fuzzing. Defaults to:
                                 302,400,401,402,403,404,503,504
  --subdomain-list TEXT          Path to subdomain list file that would be
                                 used for enumeration
  -sc, --scripts                 Run Nmap scan with -sC flag
  -sv, --services                Run Nmap scan with -sV flag
  -f, --full-scan                Run Nmap scan with both -sV and -sC
  -p, --port TEXT                Use this port range for Nmap scan instead of
                                 the default
  --vulners-nmap-scan            Perform an NmapVulners scan. Runs instead of
                                 the regular Nmap scan and is longer.
  --vulners-path TEXT            Path to the custom nmap_vulners.nse script.If
                                 not used, Raccoon uses the built-in script it
                                 ships with.
  -fr, --follow-redirects        Follow redirects when fuzzing. Default: False
                                 (will not follow redirects)
  --tls-port INTEGER             Use this port for TLS queries. Default: 443
  --skip-health-check            Do not test for target host availability
  --no-url-fuzzing               Do not fuzz URLs
  --no-sub-enum                  Do not bruteforce subdomains
  --skip-nmap-scan               Do not perform an Nmap scan
  -q, --quiet                    Do not output to stdout
  -o, --outdir TEXT              Directory destination for scan output
  --help                         Show this message and exit.

屏幕截图

poc2

web应用程序数据,包括易受攻击的s3存储桶:
somepoc

HTB挑战示例扫描:
poc

nmap vulners扫描结果:
vulnerspoc

results扫描后的文件夹树:
poc3

贡献

欢迎任何和所有的贡献,问题,功能和提示。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何从ImageIO中排除特定的TIFF读取器?   JavaJMockit和passbyreference。我们中一定有一个人错了(可能是我!)   java Android camera2放弃了牛轧糖的表面,但在棉花糖上工作   java按字符串中出现的顺序对字符数组进行排序   如何获取Groovy生成的java源代码   java无法使用AutoIT和Selenium Webdriver在所需位置/文件夹保存图像   java为什么我的冒泡排序代码会打印出这些奇怪的东西?   java JAXB:typesafeEnumMemberName=“generateName”是否可自定义?   Java编程输入:今天是星期天输出:星期天是今天   java不理解首个OOAD书的吉他示例   java如何从JformattedTextfield检索货币格式值   java可以从相同的源代码生成功能不同的可执行文件吗?