hacktricks/generic-methodologies-and-resources/external-recon-methodology/README.md

40 KiB
Raw Blame History

外部侦察方法论

{% hint style="success" %} 学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE)
学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)

支持 HackTricks
{% endhint %}

如果你对 黑客职业 感兴趣并想要攻克不可攻克的目标 - 我们正在招聘! (需要流利的波兰语书写和口语能力).

{% embed url="https://www.stmcyber.com/careers" %}

资产发现

所以你被告知某家公司拥有的一切都在范围内,你想弄清楚这家公司实际上拥有什么。

这个阶段的目标是获取主要公司拥有的所有公司,然后获取这些公司的所有资产。为此,我们将:

  1. 找到主要公司的收购,这将给我们提供范围内的公司。
  2. 找到每个公司的 ASN如果有的话这将给我们提供每个公司拥有的 IP 范围。
  3. 使用反向 whois 查询搜索与第一个相关的其他条目(组织名称、域名...)(这可以递归进行)。
  4. 使用其他技术,如 shodan orgssl 过滤器搜索其他资产(ssl 技巧可以递归进行)。

收购

首先,我们需要知道主要公司拥有的其他公司
一个选项是访问 https://www.crunchbase.com/搜索 主要公司,并点击收购”。在那里你将看到主要公司收购的其他公司。
另一个选项是访问主要公司的维基百科页面并搜索收购

好吧,到此为止你应该知道范围内的所有公司。让我们弄清楚如何找到它们的资产。

ASNs

自治系统编号(ASN)是由互联网分配号码管理局IANA分配给自治系统AS唯一编号
一个ASIP 地址块组成,这些地址块有明确的政策来访问外部网络,并由单一组织管理,但可能由多个运营商组成。

查找公司是否分配了任何 ASN以找到其IP 范围是很有趣的。对所有范围内的主机进行漏洞测试查找这些 IP 内的域名将是很有趣的。
你可以在 https://bgp.he.net/中按公司名称、IP域名进行搜索
根据公司的地区,这些链接可能对收集更多数据有用: AFRINIC (非洲), Arin(北美), APNIC (亚洲), LACNIC (拉丁美洲), RIPE NCC (欧洲)。无论如何,所有的有用信息**IP 范围和 Whois可能已经在第一个链接中出现。**

#You can try "automate" this with amass, but it's not very recommended
amass intel -org tesla
amass intel -asn 8911,50313,394161

此外,**BBOT**的子域名枚举会在扫描结束时自动聚合和总结ASN。

bbot -t tesla.com -f subdomain-enum
...
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS394161 | 8.244.131.0/24      | 5            | TESLA          | Tesla Motors, Inc.         | US        |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS16509  | 54.148.0.0/15       | 4            | AMAZON-02      | Amazon.com, Inc.           | US        |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS394161 | 8.45.124.0/24       | 3            | TESLA          | Tesla Motors, Inc.         | US        |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS3356   | 8.32.0.0/12         | 1            | LEVEL3         | Level 3 Parent, LLC        | US        |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS3356   | 8.0.0.0/9           | 1            | LEVEL3         | Level 3 Parent, LLC        | US        |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+

You can find the IP ranges of an organisation also using http://asnlookup.com/ (它有免费的API)。
You can fins the IP and ASN of a domain using http://ipv4info.com/

寻找漏洞

在这一点上,我们知道范围内的所有资产,所以如果你被允许,你可以对所有主机启动一些漏洞扫描器Nessus, OpenVAS
此外,你可以启动一些端口扫描或使用像 shodan 这样的服务来查找 开放端口 ,根据你发现的内容,你应该 查看本书以了解如何对多个可能运行的服务进行渗透测试。
此外,值得一提的是,你还可以准备一些 默认用户名 密码 **列表,并尝试使用 https://github.com/x90skysn3k/brutespray 进行暴力破解服务。

域名

我们知道范围内的所有公司及其资产,现在是时候找到范围内的域名了。

请注意,在以下提出的技术中,你还可以找到子域名,这些信息不应被低估。

首先,你应该寻找每个公司的主域名。例如,对于 Tesla Inc.,主域名将是 tesla.com

反向DNS

由于你已经找到了域名的所有IP范围你可以尝试对这些IP进行反向DNS查找以找到范围内更多的域名。尝试使用受害者的一些DNS服务器或一些知名的DNS服务器1.1.1.1, 8.8.8.8)。

dnsrecon -r <DNS Range> -n <IP_DNS>   #DNS reverse of all of the addresses
dnsrecon -d facebook.com -r 157.240.221.35/24 #Using facebooks dns
dnsrecon -r 157.240.221.35/24 -n 1.1.1.1 #Using cloudflares dns
dnsrecon -r 157.240.221.35/24 -n 8.8.8.8 #Using google dns

为了使其工作,管理员必须手动启用 PTR。
您还可以使用在线工具获取此信息:http://ptrarchive.com/

反向 Whois循环

whois 中,您可以找到很多有趣的 信息,如 组织名称地址电子邮件、电话号码……但更有趣的是,如果您通过这些字段中的任何一个执行 反向 whois 查询,您可以找到 与公司相关的更多资产(例如,其他 whois 注册处中出现相同电子邮件的情况)。
您可以使用在线工具,如:

您可以使用 DomLink 自动化此任务(需要 whoxy API 密钥)。
您还可以使用 amass 执行一些自动反向 whois 发现:amass intel -d tesla.com -whois

请注意,每次找到新域名时,您可以使用此技术发现更多域名。

追踪器

如果在两个不同页面中找到 相同的追踪器 ID,您可以推测 这两个页面由同一团队管理
例如,如果您在多个页面上看到相同的 Google Analytics ID 或相同的 Adsense ID

有一些页面和工具可以让您通过这些追踪器和更多内容进行搜索:

Favicon

您知道我们可以通过查找相同的 favicon 图标哈希来找到与目标相关的域名和子域名吗?这正是 favihash.py 工具由 @m4ll0k2 制作的功能。以下是如何使用它:

cat my_targets.txt | xargs -I %% bash -c 'echo "http://%%/favicon.ico"' > targets.txt
python3 favihash.py -f https://target/favicon.ico -t targets.txt -s

favihash - 发现具有相同 favicon 图标哈希的域

简单来说favihash 允许我们发现与目标具有相同 favicon 图标哈希的域。

此外,您还可以使用 favicon 哈希搜索技术,如 这篇博客文章 中所述。这意味着如果您知道 易受攻击的 web 技术的 favicon 哈希,您可以在 shodan 中搜索并 找到更多易受攻击的地方

shodan search org:"Target" http.favicon.hash:116323821 --fields ip_str,port --separator " " | awk '{print $1":"$2}'

这是您如何计算网页的 favicon 哈希

import mmh3
import requests
import codecs

def fav_hash(url):
response = requests.get(url)
favicon = codecs.encode(response.content,"base64")
fhash = mmh3.hash(favicon)
print(f"{url} : {fhash}")
return fhash

版权 / 唯一字符串

在网页中搜索可能在同一组织的不同网站之间共享的字符串版权字符串可能是一个很好的例子。然后在谷歌、其他浏览器或甚至在shodan中搜索该字符串:shodan search http.html:"Copyright string"

CRT 时间

通常会有一个 cron 作业,例如

# /etc/crontab
37 13 */10 * * certbot renew --post-hook "systemctl reload nginx"

to renew the all the domain certificates on the server. This means that even if the CA used for this doesn't set the time it was generated in the Validity time, it's possible to find domains belonging to the same company in the certificate transparency logs.
Check out this writeup for more information.

Mail DMARC information

You can use a web such as https://dmarc.live/info/google.com or a tool such as https://github.com/Tedixx/dmarc-subdomains to find 共享相同 dmarc 信息的域和子域.

Passive Takeover

Apparently is common for people to assign subdomains to IPs that belongs to cloud providers and at some point 失去该 IP 地址但忘记删除 DNS 记录. Therefore, just 在云中创建一个虚拟机 (like Digital Ocean) you will be actually 接管一些子域.

This post explains a store about it and propose a script that 在 DigitalOcean 中创建一个虚拟机, 获取 the IPv4 of the new machine, and 在 Virustotal 中搜索指向它的子域记录.

Other ways

Note that you can use this technique to discover more domain names every time you find a new domain.

Shodan

As you already know the name of the organisation owning the IP space. You can search by that data in shodan using: org:"Tesla, Inc." Check the found hosts for new unexpected domains in the TLS certificate.

You could access the TLS certificate of the main web page, obtain the 组织名称 and then search for that name inside the TLS certificates of all the web pages known by shodan with the filter : ssl:"Tesla Motors" or use a tool like sslsearch.

Assetfinder

Assetfinder 是一个查找与主域相关的域和子域的工具,真是太棒了。

Looking for vulnerabilities

Check for some domain takeover. Maybe some company is 使用某个域 but they 失去了所有权. Just register it (if cheap enough) and let know the company.

If you find any 域的 IP 地址与您在资产发现中找到的不同,您应该执行基本漏洞扫描 (using Nessus or OpenVAS) and some 端口扫描 with nmap/masscan/shodan. Depending on which services are running you can find in this book some tricks to "attack" them.
Note that sometimes the domain is hosted inside an IP that is not controlled by the client, so it's not in the scope, be careful.


Bug bounty tip: 注册 Intigriti,一个由黑客为黑客创建的高级漏洞赏金平台!今天加入我们 https://go.intigriti.com/hacktricks,开始赚取高达 $100,000 的赏金!

{% embed url="https://go.intigriti.com/hacktricks" %}

Subdomains

We know all the companies inside the scope, all the assets of each company and all the domains related to the companies.

It's time to find all the possible subdomains of each found domain.

{% hint style="success" %} Note that some of the tools and techniques to find domains can also help to find subdomains! {% endhint %}

DNS

Let's try to get 子域 from the DNS records. We should also try for 区域传输 (If vulnerable, you should report it).

dnsrecon -a -d tesla.com

OSINT

获取大量子域名的最快方法是搜索外部来源。最常用的 tools 如下(为了获得更好的结果,请配置 API 密钥):

# subdomains
bbot -t tesla.com -f subdomain-enum

# subdomains (passive only)
bbot -t tesla.com -f subdomain-enum -rf passive

# subdomains + port scan + web screenshots
bbot -t tesla.com -f subdomain-enum -m naabu gowitness -n my_scan -o .
amass enum [-active] [-ip] -d tesla.com
amass enum -d tesla.com | grep tesla.com # To just list subdomains
# Subfinder, use -silent to only have subdomains in the output
./subfinder-linux-amd64 -d tesla.com [-silent]
# findomain, use -silent to only have subdomains in the output
./findomain-linux -t tesla.com [--quiet]
python3 oneforall.py --target tesla.com [--dns False] [--req False] [--brute False] run
assetfinder --subs-only <domain>
# It requires that you create a sudomy.api file with API keys
sudomy -d tesla.com
vita -d tesla.com
theHarvester -d tesla.com -b "anubis, baidu, bing, binaryedge, bingapi, bufferoverun, censys, certspotter, crtsh, dnsdumpster, duckduckgo, fullhunt, github-code, google, hackertarget, hunter, intelx, linkedin, linkedin_links, n45ht, omnisint, otx, pentesttools, projectdiscovery, qwant, rapiddns, rocketreach, securityTrails, spyse, sublist3r, threatcrowd, threatminer, trello, twitter, urlscan, virustotal, yahoo, zoomeye"

其他有趣的工具/API,即使不专门用于查找子域名,也可能对查找子域名有用,例如:

# Get list of subdomains in output from the API
## This is the API the crobat tool will use
curl https://sonar.omnisint.io/subdomains/tesla.com | jq -r ".[]"
curl https://jldc.me/anubis/subdomains/tesla.com | jq -r ".[]"
# Get Domains from rapiddns free API
rapiddns(){
curl -s "https://rapiddns.io/subdomain/$1?full=1" \
| grep -oE "[\.a-zA-Z0-9-]+\.$1" \
| sort -u
}
rapiddns tesla.com
# Get Domains from crt free API
crt(){
curl -s "https://crt.sh/?q=%25.$1" \
| grep -oE "[\.a-zA-Z0-9-]+\.$1" \
| sort -u
}
crt tesla.com
  • gau: 从AlienVault的开放威胁交换、Wayback Machine和Common Crawl获取任何给定域的已知URL。
# Get subdomains from GAUs found URLs
gau --subs tesla.com | cut -d "/" -f 3 | sort -u
# Get only subdomains from SubDomainizer
python3 SubDomainizer.py -u https://tesla.com | grep tesla.com

# Get only subdomains from subscraper, this already perform recursion over the found results
python subscraper.py -u tesla.com | grep tesla.com | cut -d " " -f
# Get info about the domain
shodan domain <domain>
# Get other pages with links to subdomains
shodan search "http.html:help.domain.com"
export CENSYS_API_ID=...
export CENSYS_API_SECRET=...
python3 censys-subdomain-finder.py tesla.com
python3 DomainTrail.py -d example.com

该项目提供与 漏洞赏金计划 相关的所有子域名 免费。您还可以使用 chaospy 访问这些数据,甚至可以访问该项目使用的范围 https://github.com/projectdiscovery/chaos-public-program-list

您可以在这里找到许多这些工具的 比较: https://blog.blacklanternsecurity.com/p/subdomain-enumeration-tool-face-off

DNS 暴力破解

让我们尝试通过暴力破解 DNS 服务器来查找新的 子域名,使用可能的子域名名称。

为此操作,您需要一些 常见子域名字典,如:

还需要一些好的 DNS 解析器的 IP。为了生成可信 DNS 解析器的列表,您可以从 https://public-dns.info/nameservers-all.txt 下载解析器,并使用 dnsvalidator 进行过滤。或者您可以使用: https://raw.githubusercontent.com/trickest/resolvers/main/resolvers-trusted.txt

最推荐的 DNS 暴力破解工具是:

  • massdns: 这是第一个执行有效 DNS 暴力破解的工具。它非常快速,但容易产生误报。
sed 's/$/.domain.com/' subdomains.txt > bf-subdomains.txt
./massdns -r resolvers.txt -w /tmp/results.txt bf-subdomains.txt
grep -E "tesla.com. [0-9]+ IN A .+" /tmp/results.txt
  • gobuster: 我认为这个只使用了一个解析器
gobuster dns -d mysite.com -t 50 -w subdomains.txt
  • shuffledns 是一个围绕 massdns 的包装器,使用 Go 编写,允许您通过主动暴力破解枚举有效的子域名,并支持通配符处理和简单的输入输出。
shuffledns -d example.com -list example-subdomains.txt -r resolvers.txt
  • puredns:它也使用 massdns
puredns bruteforce all.txt domain.com
  • aiodnsbrute 使用 asyncio 异步暴力破解域名。
aiodnsbrute -r resolvers -w wordlist.txt -vv -t 1024 domain.com

第二轮 DNS 暴力破解

在使用开放源和暴力破解找到子域名后,您可以生成找到的子域名的变体,以尝试找到更多。以下工具对此目的非常有用:

  • dnsgen: 给定域名和子域名生成排列。
cat subdomains.txt | dnsgen -
  • goaltdns: 给定域名和子域名生成排列。
  • 你可以在 这里 获取 goaltdns 排列 字典
goaltdns -l subdomains.txt -w /tmp/words-permutations.txt -o /tmp/final-words-s3.txt
  • gotator: 给定域名和子域名生成排列。如果没有指示排列文件gotator 将使用自己的文件。
gotator -sub subdomains.txt -silent [-perm /tmp/words-permutations.txt]
  • altdns: 除了生成子域名排列,它还可以尝试解析它们(但最好使用之前提到的工具)。
  • 你可以在 这里 获取 altdns 排列的 wordlist
altdns -i subdomains.txt -w /tmp/words-permutations.txt -o /tmp/asd3
  • dmut: 另一个用于执行子域名的排列、变异和修改的工具。该工具将对结果进行暴力破解(不支持 DNS 通配符)。
  • 你可以在 这里 获取 dmut 排列词表。
cat subdomains.txt | dmut -d /tmp/words-permutations.txt -w 100 \
--dns-errorLimit 10 --use-pb --verbose -s /tmp/resolvers-trusted.txt
  • alterx: 基于域名,它 生成新的潜在子域名,根据指示的模式尝试发现更多子域名。

智能排列生成

  • regulator: 更多信息请阅读这篇 文章,但它基本上会从 发现的子域名 中提取 主要部分,并将它们混合以找到更多子域名。
python3 main.py adobe.com adobe adobe.rules
make_brute_list.sh adobe.rules adobe.brute
puredns resolve adobe.brute --write adobe.valid
  • subzuf: subzuf 是一个子域名暴力破解模糊器结合了一个极其简单但有效的DNS响应引导算法。它利用提供的一组输入数据如定制的词汇表或历史DNS/TLS记录准确合成更多相应的域名并根据在DNS扫描过程中收集的信息进一步扩展它们。
echo www | subzuf facebook.com

子域发现工作流程

查看我写的这篇博客文章,了解如何使用 Trickest workflows 自动化子域发现,这样我就不需要在我的计算机上手动启动一堆工具:

{% embed url="https://trickest.com/blog/full-subdomain-discovery-using-workflow/" %}

{% embed url="https://trickest.com/blog/full-subdomain-brute-force-discovery-using-workflow/" %}

虚拟主机 / VHosts

如果你发现一个包含 一个或多个网页 的 IP 地址属于子域,你可以尝试通过在 OSINT 来源 中查找该 IP 的域名,或者通过 暴力破解该 IP 的 VHost 域名寻找其他子域

OSINT

你可以使用 HostHunter 或其他 API 找到一些 IP 中的 VHosts

暴力破解

如果你怀疑某个子域可能隐藏在一个网络服务器中,你可以尝试进行暴力破解:

ffuf -c -w /path/to/wordlist -u http://victim.com -H "Host: FUZZ.victim.com"

gobuster vhost -u https://mysite.com -t 50 -w subdomains.txt

wfuzz -c -w /usr/share/wordlists/SecLists/Discovery/DNS/subdomains-top1million-20000.txt --hc 400,404,403 -H "Host: FUZZ.example.com" -u http://example.com -t 100

#From https://github.com/allyshka/vhostbrute
vhostbrute.py --url="example.com" --remoteip="10.1.1.15" --base="www.example.com" --vhosts="vhosts_full.list"

#https://github.com/codingo/VHostScan
VHostScan -t example.com

{% hint style="info" %} 使用此技术,您甚至可能能够访问内部/隐藏的端点。 {% endhint %}

CORS 暴力破解

有时您会发现页面仅在有效的域/子域设置在 Origin 头时返回头部 Access-Control-Allow-Origin。在这些情况下,您可以利用这种行为来 发现 新的 子域

ffuf -w subdomains-top1million-5000.txt -u http://10.10.10.208 -H 'Origin: http://FUZZ.crossfit.htb' -mr "Access-Control-Allow-Origin" -ignore-body

Buckets Brute Force

在寻找 subdomains 时,注意是否指向任何类型的 bucket,在这种情况下 检查权限.
此外,既然你已经知道了所有在范围内的域名,尝试 暴力破解可能的 bucket 名称并检查权限

Monitorization

你可以通过监控 证书透明度 日志来 监控 一个域名是否创建了 新子域名sublert 可以做到这一点。

Looking for vulnerabilities

检查可能的 subdomain takeovers
如果 subdomain 指向某个 S3 bucket检查权限

如果你发现任何 子域名的 IP 与你在资产发现中找到的不同,你应该进行 基本漏洞扫描(使用 Nessus 或 OpenVAS和一些 端口扫描 使用 nmap/masscan/shodan。根据运行的服务,你可以在 这本书中找到一些“攻击”它们的技巧
请注意,有时子域名托管在不受客户控制的 IP 内,因此不在范围内,请小心。

IPs

在初始步骤中,你可能已经 找到了一些 IP 范围、域名和子域名
现在是 收集这些范围内的所有 IP 和 **域名/子域名DNS 查询)**的时候。

使用以下 免费 API 的服务,你还可以找到 域名和子域名之前使用的 IP。这些 IP 可能仍然归客户所有(并可能让你找到 CloudFlare 绕过

你还可以使用工具 hakip2host 检查指向特定 IP 地址的域名。

Looking for vulnerabilities

对所有不属于 CDN 的 IP 进行端口扫描(因为你很可能不会在这里找到任何有趣的东西)。在发现的运行服务中,你可能 能够找到漏洞

查找一个 指南 关于如何扫描主机。

Web servers hunting

我们已经找到了所有公司及其资产,并且知道范围内的 IP 范围、域名和子域名。现在是搜索 Web 服务器的时候了。

在之前的步骤中,你可能已经对发现的 IP 和域名进行了某些侦察,因此你可能 已经找到了所有可能的 Web 服务器。然而,如果你还没有,我们现在将看到一些 快速技巧来搜索范围内的 Web 服务器

请注意,这将是 面向 Web 应用程序发现 的,因此你也应该 进行漏洞端口扫描如果范围允许)。

一种 快速方法 是使用 masscan 在这里发现与 web 服务器相关的 开放端口
另一个友好的工具来查找 Web 服务器是 httprobe, fprobehttpx。你只需传递一个域名列表,它将尝试连接到 80 端口http和 443 端口https。此外你可以指示尝试其他端口

cat /tmp/domains.txt | httprobe #Test all domains inside the file for port 80 and 443
cat /tmp/domains.txt | httprobe -p http:8080 -p https:8443 #Check port 80, 443 and 8080 and 8443

截图

现在你已经发现了范围内所有的网络服务器(在公司的IP和所有的域名子域名中),你可能不知道从哪里开始。所以,让我们简单一点,先对它们进行截图。仅仅通过查看****主页,你就可以找到更容易利用奇怪端点。

要执行这个提议,你可以使用 EyeWitnessHttpScreenshotAquatoneShutterGowitnesswebscreenshot.

此外,你还可以使用 eyeballer 来分析所有的截图,告诉你哪些可能包含漏洞,哪些则不包含。

公有云资产

为了找到属于公司的潜在云资产,你应该从一份识别该公司的关键词列表开始。例如,对于一家加密公司,你可以使用以下词汇:“"crypto", "wallet", "dao", "<domain_name>", <"subdomain_names">”。

你还需要一些常用词汇的字典,用于存储桶:

然后,使用这些词汇生成排列组合(查看 第二轮DNS暴力破解 获取更多信息)。

使用生成的字典,你可以使用工具如 cloud_enum, CloudScraper, cloudlist S3Scanner.

记住,在寻找云资产时,你应该寻找的不仅仅是AWS中的存储桶

寻找漏洞

如果你发现开放的存储桶或暴露的云函数,你应该访问它们,看看它们提供了什么,以及你是否可以利用它们。

电子邮件

通过范围内的域名子域名,你基本上已经拥有了开始搜索电子邮件所需的一切。这些是我找到公司电子邮件时效果最好的API工具

寻找漏洞

电子邮件在后续暴力破解网络登录和身份验证服务如SSH时会派上用场。此外它们在钓鱼中也是必需的。此外这些API还会提供关于电子邮件背后个人的更多信息,这对钓鱼活动非常有用。

凭证泄露

通过域名子域名电子邮件,你可以开始寻找过去泄露的与这些电子邮件相关的凭证:

寻找漏洞

如果你发现有效的泄露凭证,这将是一个非常简单的胜利。

秘密泄露

凭证泄露与公司被黑客攻击时敏感信息被泄露和出售有关。然而,公司可能还会受到其他泄露的影响,这些信息不在那些数据库中:

Github泄露

凭证和API可能在公司或在该github公司工作的用户公共仓库中泄露。
你可以使用工具 Leakos下载一个组织及其开发者的所有公共仓库,并自动运行 gitleaks

Leakos 也可以用于对所有文本提供的URL运行gitleaks,因为有时网页也包含秘密

Github Dorks

还可以查看这个页面,寻找你可以在攻击的组织中搜索的潜在github dorks

{% content-ref url="github-leaked-secrets.md" %} github-leaked-secrets.md {% endcontent-ref %}

Paste泄露

有时攻击者或普通员工会在粘贴网站发布公司内容。这可能包含或不包含敏感信息,但搜索它非常有趣。
你可以使用工具 Pastos 在80多个粘贴网站上同时搜索。

Google Dorks

老而经典的google dorks总是有助于找到不该存在的暴露信息。唯一的问题是 google-hacking-database 包含数千个你无法手动运行的可能查询。因此你可以选择你最喜欢的10个或者使用工具如 Gorks 来运行它们所有

请注意期望使用常规Google浏览器运行所有数据库的工具将永远无法完成因为Google会很快阻止你。

寻找漏洞

如果你发现有效的泄露凭证或API令牌这将是一个非常简单的胜利。

公共代码漏洞

如果你发现公司有开源代码,你可以分析它并搜索其中的漏洞

根据语言的不同,你可以使用不同的工具

{% content-ref url="../../network-services-pentesting/pentesting-web/code-review-tools.md" %} code-review-tools.md {% endcontent-ref %}

还有一些免费服务允许你扫描公共仓库,例如:

网络渗透测试方法论

大多数漏洞都是由漏洞猎人发现的,存在于网络应用程序中,因此在这一点上,我想谈谈网络应用程序测试方法论,你可以在 这里找到这些信息

我还想特别提到 Web自动化扫描器开源工具 这一部分,因为如果你不应该期望它们找到非常敏感的漏洞,它们在工作流程中实现一些初步的网络信息时非常有用。

综述

恭喜!到目前为止,你已经完成了所有基本的枚举。是的,这很基础,因为还可以进行更多的枚举(稍后会看到更多技巧)。

所以你已经:

  1. 找到了范围内的所有公司
  2. 找到了属于公司的所有资产(并在范围内进行了一些漏洞扫描)
  3. 找到了属于公司的所有域名
  4. 找到了所有域名的子域名(是否有子域名接管?)
  5. 找到了范围内的所有IP(来自和不来自CDN的IP
  6. 找到了所有的网络服务器并对它们进行了截图(是否有任何奇怪的地方值得深入研究?)
  7. 找到了属于公司的所有潜在公共云资产
  8. 电子邮件凭证泄露秘密泄露,这些可能会给你带来很大的胜利
  9. 渗透测试你找到的所有网站

全面侦查自动化工具

有几种工具可以针对给定范围执行部分提议的操作。

参考文献

如果你对黑客职业感兴趣并想要攻克不可攻克的目标 - 我们正在招聘!需要流利的波兰语书写和口语能力)。

{% embed url="https://www.stmcyber.com/careers" %}

{% hint style="success" %} 学习并实践AWS黑客技术HackTricks培训AWS红队专家ARTE
学习并实践GCP黑客技术HackTricks培训GCP红队专家GRTE

支持HackTricks
{% endhint %}