这篇文章很不错,从国外机翻过来的,我十分建议你去看原文,因为机翻,真的对有些意思出现偏差,有点难受,如果想快速学习,看本篇机翻的还是可以的。对于其中工具的选择,国内国外其实还是有着一些差异,但是思路确实不错。
原文地址;https://medium.com/@coffeeaddict_exe/my-recon-process-command-line-1c9f603f4e9f
Hello👋
我认为回顾一下我的侦察过程会很有帮助,这样你们就可以挑选出你认为有用的东西并将其添加到你自己的方法中,并开始赚取一些赏金。
这只是基本的东西,但这里可能有一些对您有用的东西。
那么让我们开始吧……
子域枚举
我的子域枚举过程对其他猎人来说很正常,但这里有一些提示,供刚接触这些工具的人使用。我使用的第一个工具是 Knock ,这是一个了不起的子域枚举工具,可以告诉您响应代码和站点运行的服务器。
提示 :即使某些网站的响应代码是 404、403 等,您仍然应该访问它们或网络抓取它们,因为它们可能有一些有趣的东西。
我发现对子域枚举最有帮助的另一种方法是 的“ assetfinder” :使用此命令
assetfinder --subs-only $TARGET | tee -a $subtxt
完成后,您可以使用“ httpX” 显示实时站点,并使用此命令及其服务器和响应代码。
cat $subtxt | httpx -title -tech-detect -status-code | tee -a $subhttp.txt
完成所有这些后,您可以通过名为“ Subzy ”的工具运行所有子域,该工具使用 EdOverflow 的“can-i-take-over-xyz”来检查子域接管。(此方法视频顺序)
subzy -targets $HTTPfile.txt
assetfinder: https://github.com/tomnomnom/assetfinder
httpx: https://github.com/projectdiscovery/httpx
subzy: https://github.com/LukaSikic/subzy
侦察的这一部分是我最喜欢的,因为你不知道你会找到什么样的东西。这部分还将包括参数查找等。
我在目录发现中经常使用的第一个工具是“ Dirsearch ” 这是 Maurosoria 的一个了不起的工具,非常快速且易于使用。我在 Dirsearch 中发现了一些错误,比如暴露的服务器端点。
提示:不要只看 200s;查看 302、301、500s 等;它们可能会显示详细的错误页面或容易受到 XSS 等攻击的隐藏的、未过滤的参数。
另一个惊人的内容/目录发现工具是 Tomnomnom 的“ Waybackurls ”,它为您提供站点端点的完整列表。这对于模糊测试、JS 文件、API 端点等非常有帮助。
waybackurls target.com | tee -a file.txt
waybackurls subs.txt | tee -a file.txt
Waybackurls 还可以找到 pramaters,这对于一些好的旧式模糊测试来说非常有用。我建议对这个神奇的工具做更多的研究。
的很好的参数查找工具 有一个名为“ParamSpider” ,它还可以显示可能不受 XSS 或 SQL 注入保护的隐藏参数,我强烈推荐它。
python3 paramspider.py --domain target.com
目录搜索:https ://github.com/maurosoria/dirsearch
Waybackurls: https://github.com/tomnomnom/waybackurls
ParamSpider:https ://github.com/devanshbatham/ParamSpider
侦察的这一部分总是很有趣。工作量不大;坐下来,喝一杯冷饮,让你的工具运转起来;偶尔会弹出一些东西,所以这里是我在侦察过程中使用的漏洞扫描器。
我使用的最棒和最好的是“ Nuclei。” 它非常好,您可以在 YAML 中制作自己的模板,并使用其他黑客提供的数千个其他模板。我发现了几个 Nuclei 的错误,我喜欢在我的侦察过程中使用它。
它非常易于使用,您可以在子域列表中使用它。请记住,它会发出很多请求,因此请注意这一点。
cat subs.txt | nuclei
cat subs.txt | nuclei -t /nuclei-templates/
Sullo 还有另一个令人惊叹的工具,称为 “Nikto” ,它确实需要一段时间,但可以带来您在任何其他命令行工具上找不到的东西。它是用 Perl 编写的,它确实发出了很多请求,因此再次提醒您要小心。我建议您自己研究一下这个很棒的工具,因为它还有很多其他选项和功能!
另一个很棒的工具是“ CVEscan ”,它的工作方式与 nmap 插件类似,可以扫描已知 CVE 的开放端口,并提供漏洞利用/PoC URL 以及您可以在 Metasploit 中使用的漏洞利用。我强烈推荐 CVEscan,尤其是在您进行联网时。你不能在 Kali 中使用这个工具,只能在 Ubuntu 和 Arch 中使用,所以你可以使用 nmap NSE 脚本进行 CVE 扫描,它也能正常工作。
cvescan# cvescan for ubuntu/arch users
nmap -sV --script=vulners# nmap scan for kali users
还有很多其他很棒的漏洞扫描器,但我会整天在这里解释它们。
https ://github.com/projectdiscovery/nuclei
https ://github.com/sullo/nikto
https ://github.com/canonical/sec-cvescan
“Shodan ”是我使用的另一个工具,但比我应该使用的要少一些。Shodan 是一个了不起的工具,我才刚刚接触它,但我一直在使用一些很酷的东西,你可能会觉得有用。HttpX(我们之前介绍过的工具)允许您从网站图标文件中获取哈希值,然后可以在 Shodan 中查找该文件以进行更多侦察。
cat subs.txt | httpx -favicon | tee -a file.txt
这对于更深入的侦察非常有用。获得哈希后,您可以使用以下命令在 Shodan 的命令行工具或他们的网站上查找它们:
# web
http.favicon.hash:
# command-line
shodan search org:"Target" http.favicon.hash:--fields ip_str,port --separator " " | awk '{print $1":"$2}'
最后但同样重要的是,“ TruffleHog ”,这是一个神奇的工具,可以找到隐藏在 JS 文件中的 API 密钥,以及密码、令牌和其他信息,其方式类似于 burp 的 JS 矿工。Trufflehog 可以作为 Chrome 或 Firefox 插件出现,但也有自己的命令行工具,我在 S3 存储桶上使用它。它易于使用和安装。一个名叫 At0m 的伟大猎手有一个视频,我建议您查看它并进一步研究这个神奇的工具。
我的建议是,如果您打算使用所有这些工具或其中的一些工具,我建议您编写一个简单的 bash 脚本,这样您就不必逐一完成所有的麻烦。这是一个简单的脚本,作为我的子域枚举方法的示例。
#! /bin/bash
TARGET=$1
SUB=$1
CODE=$1
HTTP=$1
read -p 'host?:' TARGET
read -p 'output file name?:' SUB
# you must have all these tool's to run this script
echo "running assetfinder"
sleep 1
assetfinder --subs-only $TARGET | tee -a $SUB
echo "done"
read -p 'status code output file?:' CODE
sleep 1
cat $SUB | httpx -title -tech-detect -status-code | tee -a $CODE
read -p 'look it over:' # press enter when you looked it over
sleep 1
clear
read -p 'http file output?:' HTTP
sleep 1
cat $SUB | httpx | tee -a $HTTP
clear
sleep 1
subzy -targets $HTTP
echo "done"
这只是一个简单的脚本;如果您是漏洞赏金的新手,我强烈建议您学习 Bash。
另外,请不要将其中的任何一种用于非法方法,正如一位智者曾经说过的那样, “Don’t waste your life on just a few tools.” ~ Dualcore
无论如何,这都是我的如果你想看我的侦察过程的完整视频,请告诉我,如果你对我的方法有任何改进建议,我很乐意听取他们的意见!