一个高性能的进攻性安全工具,用于侦察和漏洞扫描Raccoon
作者:Sec-Labs | 发布时间:
工具介绍
侦察和信息收集的进攻性安全工具

特征
- DNS 详细信息
- 使用 DNS 转储程序的 DNS 可视化映射
- WHOIS 信息
- TLS 数据 - 支持的密码、TLS 版本、 证书详细信息和 SAN
- 端口扫描
- 服务和脚本扫描
- URL fuzzing 和目录/文件检测
- 子域枚举 - 使用 Google dorking、DNS dumpster 查询、 SAN 发现和暴力破解
- Web 应用程序数据检索:
- CMS 检测
- Web 服务器信息和 X-Powered-By
- robots.txt 和站点地图提取
- 饼干检查
- 提取所有可模糊的 URL
- 发现 HTML 表单
- 检索所有电子邮件地址
- 扫描目标以查找易受攻击的 S3 存储桶并枚举它们 对于敏感文件
- 检测已知的 WAF
- 支持通过 Tor/Proxies 的匿名路由
- 使用 asyncio 来提高性能
- 将输出保存到文件 - 按文件夹分隔目标 和按文件的模块
路线图和 TODO
- 扩展、测试和合并“owasp”分支与更多的 Web 应用程序攻击和扫描 ( #28 )
- 支持更多提供商进行易受攻击的存储扫描( #27 )
- 添加更多WAF,更好的检测
- 支持多个主机(从文件中读取)
- 速率限制规避
- IP 范围支持
- CIDR 符号支持
- 更多输出格式(至少是 JSON)
关于
Raccoon 是一种用于侦察和信息收集的工具,强调简单性。
它会做一切从 获取 DNS 记录、检索 WHOIS 信息、获取 TLS 数据、检测 WAF 存在以及线程化目录破坏和 子域枚举。 每次扫描都会输出到相应的文件。
由于 Raccoon 的大部分扫描都是独立的,不依赖彼此的结果, 它利用 Python 的 asyncio 异步运行大多数扫描。
Raccoon 支持 Tor/proxy 进行匿名路由。 它使用默认词汇表(用于 URL 模糊测试和子域发现) 来自令人惊叹的 SecLists 存储库,但可以将不同的列表作为参数传递。
有关更多选项 - 请参阅“用法”。
安装
对于最新的稳定版本:
pip install raccoon-scanner
# To run:
raccoon [OPTIONS]
请注意 Raccoon 需要 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]
苹果系统
要在 macOS 上支持 Raccoon,您需要在您的机器上安装 gtimeout。
gtimeout 可以通过运行安装 brew install coreutils.
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
先决条件
Raccoon 使用 Nmap 扫描端口以及使用其他一些 Nmap 脚本 和特点。 在运行 Raccoon 之前必须安装它。
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.
截图

Web 应用程序数据,包括易受攻击的 S3 存储桶:

HTB 挑战示例扫描:

Nmap漏洞扫描结果:

扫描后的结果文件夹树:

标签:工具分享, 侦察阶段