史上最全面的红队侦察技巧分享(含信息收集)

原文链接

https://dhiyaneshgeek.github.io/red/teaming/2022/04/28/reconnaissance-red-teaming/

翻译版本

大家好,我又写了一篇关于在红队交战中如何进行侦察的博客。

0b80567cfe90

什么是侦查?

侦察包括主动和被动地收集与目标有关的信息的技术。收集的信息可能包括受害者组织、基础设施或工作人员/人员的细节。

6f47408f7e8b

收集受害者的身份信息

  • 攻击者收集有关受害者身份的信息,这些信息可以在锁定目标时使用。
  • 有关身份的信息包括各种细节,包括个人数据(例如:雇员姓名、电子邮件地址等)以及敏感细节,如凭证。

凭证

  • 对手收集的凭证可在目标攻击中使用。
  • 攻击者收集的账户凭证是那些与目标受害组织直接相关的凭证,或者试图利用用户在个人和企业账户中使用相同密码的趋势。

以下工具和网站允许攻击者收集泄露的凭证

DeHashed – DeHashed被描述为最大和最快的数据泄露搜索引擎,其API密钥可用于整合其他工具,如dehashQuery,下载泄露结果,如下图所示。

python3 dehashed.py -o -d domain.com -a API-KEY -u user@domain.com

图片[3]-史上最全面的红队侦察技巧分享(含信息收集)-网络攻防学习社区-安全圈子-FancyPig's blog

We Leak Info —— 您的密码被泄露了吗?通过搜索超过120亿条记录和10,000个数据泄露事件来了解情况。

9ed39cd8c7b4

IntelligenceX – Intelligence X是一个搜索引擎和数据档案。通过电子邮件、域名、IP、CIDR、比特币地址等搜索Tor、I2P、数据泄露和公共网络。

78cd37b4bc2d

Have I Been Pwned? – Have I Been Pwned? 是一个网站,允许互联网用户检查他们的个人数据是否受到数据泄露的影响。

f6643820ca8e

电子邮件地址

攻击者收集的电子邮件地址可以在攻击过程中使用,即使存在内部实例,组织也有面向公众的电子邮件基础设施和员工的地址。

以下工具和网站允许攻击者收集电子邮件地址

Hunter.io – Hunter是寻找和验证专业电子邮件地址的领先解决方案。

e5fb61b52b69

EmailHarvester – 一个从搜索引擎中检索域名电子邮件地址的工具。

python3 EmailHarvester.py -d google.com -e all

d60f1f60dbf7

Infoga – Infoga是一个从不同的公共来源(搜索引擎,pgp密钥服务器和shodan)收集电子邮件帐户信息(ip,主机名,国家,…)的工具。

python3 infoga.py --domain vmware.com --source all

 

8ceb50d2aea7

Skymen – 查找公司和人员的电子邮件地址。

54e111853f8e

雇员姓名

  • 敌方收集员工的名字,可以在锁定目标时使用。
  • 雇员姓名可用于确定电子邮件地址,以及帮助指导其他侦察工作和/或制作更可信的诱饵。

以下工具可用于收集雇员姓名

linkedin-employee-scraper – 从LinkedIn提取所有员工。对有数千个页面和雇员的公司特别有用。脚本作为一个用户脚本运行,在例如Chromes Tampermonkey或Firefox的Greasemonkey中运行。

1f314580bd59

f0f12b57d1c6

收集受害者网络信息

  • 攻击者收集有关受害者网络的信息,这些信息可以在目标攻击中使用。
  • 有关网络的信息包括各种细节,包括管理数据(例如:IP范围、域名等)以及有关其拓扑结构和操作的具体情况。

域名属性

  • 有关域名及其属性的信息包括各种细节,包括受害者拥有哪些域名以及管理数据(例如:名称、注册商等)和更直接的可操作信息,如联系人(电子邮件地址和电话号码)、商业地址和名称服务器。

以下工具可用于列举域名属性

AADInternals – AADInternals可以使用微软的公共API收集租户的域名信息。

# Get login information for a domain
Get-AADIntLoginInformation -Domain company.com

2d77ab20fa16

DNS

  • 攻击者收集有关受害者DNS的信息,这些信息可以在目标攻击中使用。
    DNS信息包括各种细节,包括注册的名称服务器,以及概述目标子域、邮件服务器和其他主机的寻址的记录。

以下工具和网站允许攻击者收集DNS信息。

dig – dig是一个网络管理命令行工具,用于查询域名系统。

dig google.com

7fea67779a24

dig google.com -t mx +short #grab mail server information

409e55768357

host – host命令是一个DNS查询工具,可以找到一个域名的IP地址。

host google.com

0d63ac7e4aa9

dnsenum – dnsenum是一个Perl脚本,用于枚举DNS信息。

dnsenum --no-reverse google.com

ae5b6c92342e

dns-brute-script – Nmap将试图通过暴力强迫流行的子域名称来列举DNS主机名。

nmap -T4 -p 53 --script dns-brute google.com

dc443682bcf7

dnsrecon – 检查所有NS记录的区域转移。枚举给定域的一般DNS记录(MX、SOA、NS、A、AAAA、SPF和TXT)。执行普通的SRV记录列举。顶级域名(TLD)扩展。

dnsrecon -d google.com

417dbbea6988

dnsx – dnsx是一个快速和多用途的DNS工具包,允许运行多个你选择的DNS查询与用户提供的解析器列表。

fc84b505b693

IP地址

  • 敌方收集受害者的IP地址,可在锁定目标时使用。
  • 公共IP地址要按块分配给组织,或按顺序地址的范围分配。
  • 有关分配的IP地址的信息包括各种细节,如哪些IP地址正在使用。
  • IP地址还能使攻击者得出关于受害者的其他细节,如组织规模、物理位置、互联网服务提供商,以及或他们面向公众的基础设施的托管地点/方式。

以下工具和网站允许攻击者收集IP地址。

NetblockTool – 查找一个公司拥有的网络IP信息

python3 NetblockTool.py -v Google

1bc09f0382e3

飓风电气BGP工具包(Hurricane Electric BGP Toolkit) – 飓风电气(Hurricane Electric)运营着全球最大的互联网协议版本4(IPv4)和互联网协议版本6(IPv6)转接网络,以与其他网络的对等互联数来衡量。

674086396ee3

SurfaceBrowser – 通过一个简单的基于网络的界面了解任何公司的外部互联网面积。

79291e775668

ipinfo.io – 全面的IP地址数据,IP地理定位API。

8233c1664046

搜索开放的技术数据库

  • 攻击者搜索可自由使用的技术数据库,以寻找可用于目标攻击的受害者信息。
  • 在线数据库和资料库中提供的有关受害者的信息,如域名/证书的注册以及从流量和/或扫描中收集的网络数据/工件的公共集合。

WHOIS

  • 攻击者在公开的WHOIS数据中搜索有关受害者的信息,这些信息可在目标攻击中使用
  • WHOIS数据由负责分配和分派互联网资源(如域名)的区域互联网注册机构(RIR)存储。 任何人都可
  • 以查询WHOIS服务器,以获取有关注册域名的信息,如分配的IP块、联系信息和DNS名称服务器。

以下工具和网站允许攻击者收集whois信息。

whois – whois是一个广泛使用的互联网记录列表,包含谁拥有一个域名以及如何与他们取得联系的细节。

743c32fac608

ICANN Lookup – ICANN注册数据查询工具让你有能力查询域名相关归属信息。

a07de42c099d

数字证书

  • 攻击者搜索公共数字证书数据,以寻找可在目标攻击中使用的受害者信息。
  • 数字证书是由证书颁发机构(CA)颁发的,以便用密码学方法验证签名内容的来源。
  • 这些证书,如用于加密的网络通信(HTTPS SSL/TLS通信),包含注册组织的信息,如名称和位置。

以下网站允许攻击者收集数字证书信息。

crt.sh – crt.sh是一个网络接口,用于访问一个称为证书透明日志的分布式数据库。

f6736576d1e0

3a6b70e2ca7a

CDN

  • 攻击者搜索有关受害者的内容交付网络(CDN)数据,这些数据可以在目标攻击中使用。
  • CDNs允许一个组织从一个分布式的、负载平衡的服务器阵列中托管内容。
  • CDN还允许组织根据请求者的地理区域来定制内容交付。

以下工具允许攻击者收集CDN信息。

findcdn – findCDN是一个工具,用于帮助准确识别一个域名正在使用的CDN。

findcdn list asu.edu -t 7 --double

图片[29]-史上最全面的红队侦察技巧分享(含信息收集)-网络攻防学习社区-安全圈子-FancyPig's blog

搜索公开网站/域名

  • 攻击者搜索可自由使用的网站和/或域名,以寻找可用于目标攻击的受害者信息。
  • 在各种在线网站中可获得的有关受害者的信息,如社交媒体、新网站,或那些承载商业运作信息的网站,如招聘或要求/奖励的合同。

以下工具和网站允许攻击者收集子域信息。

subfinder – Subfinder是一个发现子域的工具,可以发现网站的有效子域。

subfinder -d google.com -all -v

 

5373c217e57b

assetfinder – 查找与给定域名相关的域名和子域名。

assetfinder --subs-only google.com

c4d091c6c9dd

knockknock – 一个简单的反向whois查询工具,可以返回一个由人或公司拥有的域名列表。

knockknock -n google.com -p

 

8771738e93c7

findomain – 域名识别的完整解决方案。支持截屏、端口扫描、HTTP检查、从其他工具导入数据、子域监控、通过Discord、Slack和Telegram发出警报、多个来源的API密钥等等。

findomain -t google.com

b816398b39ea

hakrevdns – 小型、快速的工具,用于大量执行反向DNS查询。

prips 173.0.84.0/24 | hakrevdns -d

002f49ad3277

Amass – 深入的攻击面测绘和资产发现。

amass intel -org 'Sony Corporation of America'  #fetch ASN & CIDR IP Range of a Company

5cb9f3626001

amass intel -active -asn 3725 -ip   #enumerate subdomains & IP Address from ASN

c2733dd70a4a

amass intel -active -asn 3725    #enumerate subdomains only from ASN

2cf176e3118f

amass intel -active -cidr 160.33.96.0/23   #enumerate subdomains from cidr range

5fe3040f2e63

amass intel -asn 3725 -whois -d sony.com   #enumerate subdomains using asn & whois

09c5b544d428

amass enum -d sony.com -active -cidr 160.33.99.0/24,160.33.96.0/23 -asn 3725   #enumerate subdomains using cidr & asn

9715e7ec5e7a

谷歌证书透明度(Google Certificate transparency)–该工具允许用户从SSL证书中收集域名和子域名。

python3 googlecertfarm.py -d google.com

959976fa8c7a

主动扫描

  • 敌方执行主动侦查扫描,以收集可用于目标攻击的信息。
  • 主动扫描是指敌方通过网络流量探测受害者的基础设施,而不是其他不涉及直接互动的侦察形式。

扫描IP区块

  • 敌方扫描受害者的IP区块,以收集可用于锁定目标的信息。
  • 公共IP地址可能是按区块分配给组织的,也可能是一系列连续的地址。

以下工具允许攻击者扫描IP区块信息。

mapcidr – 一个实用程序,对一个给定的子网/cidr范围进行多种操作。

439d67e37a2f

nmap – Nmap用于通过发送数据包和分析响应来发现计算机网络上的主机和服务。

nmap -v -A scanme.nmap.org  #basic scan for detection

dc443682bcf7

naabu – 一个用go语言编写的快速端口扫描器,注重可靠性和简单性。

naabu -host 104.16.99.52

5105dffa7057

massscan – TCP端口扫描器,异步喷出SYN数据包,在5分钟内扫描整个互联网。

masscan 104.16.100.52 -p0-65535

6e7de521f061

Smap – 一个由shodan.io提供的Nmap的直接替代品。

smap -sV ipaddress

57e9a35f0c73

漏洞扫描

  • 敌方扫描受害者的漏洞,以便在目标攻击中使用。
  • 漏洞扫描通常是检查目标主机/应用程序的配置(例如:软件和版本)是否可能与对手可能寻求使用的特定漏洞的目标相一致。

以下工具允许攻击者进行漏洞扫描。

nuclei – 快速和可定制的漏洞扫描器,基于简单的YAML的DSL。

图片[47]-史上最全面的红队侦察技巧分享(含信息收集)-网络攻防学习社区-安全圈子-FancyPig's blog

reNgine – reNgine是一个网络应用程序侦察套件,重点是通过引擎、侦察数据关联、持续监控、侦察数据由数据库支持和简单而直观的用户界面来实现高度可配置的简化侦察过程。

图片[48]-史上最全面的红队侦察技巧分享(含信息收集)-网络攻防学习社区-安全圈子-FancyPig's blog

Osmedeus – 一个用于进攻性安全的工作流程引擎。

265cdbcaea36

Sn1per专业版–通过我们持续的攻击面管理(ASM)平台,发现攻击面并对风险进行优先排序。

b2b9a2785248

 

参考文献

Reconnaissance, Tactic TA0043 – Enterprise | MITRE ATT&CK
Red Team Reconnaissance Techniques
Red Team Assessment Phases: Reconnaissance
Red Teaming Toolkit Reconnaissance

请登录后发表评论