红队从资产收集到打点

VSole2022-08-07 06:46:01

最近想总结一下,在红队渗透拿到一个目标名或者刷src时候,怎么快速信息收集和批量检测来打到一个点,往往在实际项目中就是拼手速。

信息收集到打点大致我就分为

企业信息结构收集
敏感信息收集
域名主动被动收集
整理域名ip资产
扫描检测打点

其中每一步需要收集好几个方面的信息,手动很累也很慢

一.企业信息结构收集

企业信息结构收集包括对查询目标企业的公司信息,涉及到哪些主站域名,有哪些控股很多的子公司,这些子公司涉及到哪些域名,然后再进行备案反查,你又会得到一些新的公司,同理也能再次得到一些新的主站域名,将这些进行整理---->得到一批待爆破的域名

还有的就是除了这些查到的主站域名,往往企业会有app、公众号、小程序这些资产,也要对这些资产进行收集,然后你又拿到了一批域名

手动查询的话从以下查询

天眼查 查企业/子公司/域名/公众号 https://www.tianyancha.com/
爱企查   https://aiqicha.baidu.com/
企查查询 https://www.qcc.com/
启信宝   https://www.qixin.com/

工具:

推荐cSubsidiary利用天眼查查询企业子公司
https://github.com/canc3s/cSubsidiary
还有pigat:
https://github.com/teamssix/pigat
公众号和app的收集:
https://github.com/wgpsec/ENScan
https://github.com/wgpsec/ENScan_GO go版本

二.敏感信息收集

利用搜索引擎、github等托管平台配合一些dorks就可以搜到很多信息。

熟知的googlehack,gitdork,网盘泄露等等。

敏感信息一共要搜集这个几个方面:

googlehack语法
github泄露
目标人员姓名/手机/邮箱

1.googlehack

但比如googlehack,你需要搜的好几条语法加上域名

比如:

site:*.domain.com
inurl:domain.com
intitle:keyword
keyword filetyle:doc|pdf

一个域名可以配合多个语法搜,那么多域名手动输入搜很慢,推荐工具:

https://github.com/r00tSe7en/GoogleHackingTool 在线Google Hacking 小工具
https://www.exploit-db.com/google-hacking-database 语法,自己可以脚本里批量搜

2.github泄露敏感信息:

一些常用github dorks,直接搜对应目标信息:

xxxxx.com "Authorization"     #"Authorization: Bearer"
xxxxx.com  "filename:vim_settings.xml"
xxxxx.com "language:PHP"

也可以在github对各种信息搜索,比如文件类型

filename:manifest.xml
filename:travis.yml
filename:vim_settings.xml
filename:database
filename:prod.exs NOT prod.secret.exs
filename:prod.secret.exs
filename:.npmrc _auth
filename:.dockercfg auth
filename:WebServers.xml
filename:.bash_history 
filename:sftp-config.json
filename:sftp.json path:.vscode
filename:secrets.yml password
filename:.esmtprc password
filename:passwd path:etc
filename:dbeaver-data-sources.xml
path:sites databases password
filename:config.php dbpasswd
filename:prod.secret.exs
filename:configuration.php JConfig password
filename:.sh_history

包含关键字的指定语言:

language:python username
language:php username
language:sql username
language:html password
language:perl password
language:shell username
language:java api
HOMEBREW_GITHUB_API_TOKEN language:shell

搜API/KEYS/TOEKNS关键字:

api_key
“api keys”
authorization_bearer:
oauth
auth
authentication
client_secret
api_token:
“api token”
client_id
password
user_password
user_pass
passcode
client_secret
secret
password hash
OTP
user auth

很多关键字可以搜,还是批量搜高效,工具:

https://github.com/obheda12/GitDorker
https://github.com/michenriksen/gitrob
https://github.com/dxa4481/truffleHog
https://github.com/techgaun/github-dorks

这类工具需要设置git令牌,附上gitrob过程,踩坑:不要下relase ,自己编译最好:

git clone https://github.com/michenriksen/gitrob.git
go mod init      #to use go mod      如果报错 运行go mod init github.com/michenriksen/gitrob
rm Gopkg*     #remove the old stuff
go build      #to build it
./build.sh

设置git令牌

set GITROB_ACCESS_TOKEN=xxxxx

使用后可以查看图形界面的结果:

3. 目标人员姓名/手机/邮箱

通过开源信息收集目标人员姓名/手机/邮箱,为后面打点做字典做准备。

https://github.com/laramies/theHarvester

通过搜索引擎、PGP服务器以及SHODAN数据库收集用户的email,子域名,主机,雇员名,开放端口和banner信息。

使用:

-d 开关用于定义域名,-l 用于限制结果数量

theHarvester -d kali.org -l 200 -b
anubis,baidu,pentesttools,projectdiscovery,qwant,rapiddns,
rocketreach,securityTrails,spyse,sublist3r,threatcrowd,threatminer,
trello,twitter,urlscan,virustotal,yahoo,zoomeye,bing,binaryedge,
bingapi,bufferoverun,censys,certspotter,crtsh,dnsdumpster,duckduckgo,
fullhunt,github-code,google,hackertarget,hunter,intelx,linkedin,
linkedin_links,n45ht,omnisint,otx

按github跑就是了,但是有点坑点:

配置api-keys在/etc/theHarvester 目录下api-keys.yaml填入对应的api key即可

有个坑点是key:后要加个空格在放key字符串,不然跑不起来

人员邮箱字典的构造:

https://github.com/pry0cc/GoogLinked/blob/master/GoogLinked.rb

还可以使用一些社工信息来做字典,这样的工具很多了,用一个就够了没必要用全部:Cupp/Cewl

https://github.com/r3nt0n/bopscrk
python3 bopscrk.py -i

三. 域名主动被动收集

域名主动信息收集内容就有点杂了。

通过1、2点我们拿到了一批等待爆破的域名和人员的信息,以及泄露的一些敏感信息(运气好的话用泄露的信息已经打到点了。)

现在需要对域名进行whois信息查询、dns域名正反查询、子域名探测爆破三个方面收集。

1.whois信息查询

whois需要查询域名的whois,然后根据whois信息来查询历史和反查,这样你就得到了一些邮箱和可疑域名

查域名信息没什么说的,主要看网址注册人、到期记录、创建域的时间、名称服务器和联系信息等,查最新的一般都是托管的信息,而查看历史信息就有可能查到真实联系人邮箱电话等:

一些常见whois查询,手动的时候可以查询:

https://domaineye.com/reverse-whois
https://www.reversewhois.io/
https://tool.domains/whois-research
https://tools.webservertalk.com/reverse-whois
https://reverse-whois-api.whoisxmlapi.com/
http://whois.domaintools.com/
https://viewdns.info/reversewhois/
https://www.domainiq.com/reverse_whois

除了正向查询whois,还要查询whois历史信息:

以下几个网站允许用户访问连接的 WHOIS 数据库以进行调查。这些记录是十多年来对有关域注册的有用数据进行网络爬取的结果:

https://whois.domaintools.com/
https://drs.whoisxmlapi.com/?ts=gp&ref=hackernoon.com
https://whois-history-api.whoisxmlapi.com/?ts=gp&ref=hackernoon.com
https://www.whoxy.com/

whois历史信息查询不能错过,明显可以在whois历史信息中看真实邮箱并反查而不是目前托管的邮箱,以及非托管的dns服务器:

whois 信息反查

通过历史whois信息找到真实邮箱or组织名,再反查域名,又可以得到一批资产:

other:

https://www.reversewhois.io/

整理一下whois分了三步,先whois查询一个域名,然后对查询的信息进行历史whois查询和反查,最后得到一批邮箱和域名。手动知道过程就行,实际做项目用工具批量查了整理:

https://github.com/xugj-gits/domain-tool 批量whois查询
https://github.com/melbadry9/WhoEnum

2.dns域名正向反向查询

dns域名查询分两个部分,历史记录和ip反查:

DNS历史记录(doamin2ips)

Dnsdumpster 是一个在线实用程序,我们使用它来查找子域、目标的 DNS 记录。

VT也是可以看dns数据信息的:

ip反查(ip2domains)

同ip查询多个解析到这个ip的域名,寻找更多web资产

https://viewdns.info/reverseip/

https://dnslytics.com/

ip反查也可以使用dig、nslookup、host命令完成:

工具推荐:

https://www.infobyip.com/ipbulklookup.php 批量ip反查
https://github.com/Sma11New/ip2domain 国内域名推荐ip2domain,会查询权重、ICP备案等

通过dns查询,我们拿到了一些域名和可疑ip段

3.子域名探测爆破

没啥好说的,主要是收集的渠道全、过滤泛解析。

常见手法爆破子域名、证书透明度、搜索引擎、信息泄露、ASN号等等,很多工具已经做了这些工作

https://github.com/shmilylty/OneForAll
https://github.com/six2dez/reconftw
https://github.com/P1-Team/AlliN
https://github.com/d3mondev/puredns

四. 整理域名ip资产

到这里大致的收集就结束了,就是要对收集结果进行整理,通过上面收集能拿到:

一批待探测存活的域名
一批待确定的ip段
一些邮箱,姓名,手机号
一些敏感文件、信息、通用密码(敏感信息收集阶段看脸)

整理后大致如上,有一步需要做的就是把收集的这些域名,转成ip段,但是是需要判断这个ip属不属于cdn,属不属于泛解析的ip,然后转成ip后要判断ip段的权重,哪些段才可能是目标主要的C段。

https://github.com/EdgeSecurityTeam/Eeyes 对subdomain数据处理、获取其中真实IP并整理成c段
https://github.com/canc3s/cIPR 整理后查看权重

五. 扫描检测打点

这步就开始快速打点了。

上面整理后的资产,需要我们探测的是一批域名和一批C段

域名需要做的事:

探测存活
title、banner提取、指纹识别
爬虫、目录轻量扫描、轻量漏扫

C段需要做的事:

扫描端口,探测存活
将扫的web和非web进行分类,把扫到的web资产加入到域名需要做的事,和对待域名没区别
将扫到的非web(数据库/远程登录协议)进行爆破,比如mysql爆破,rdp爆破

一批域名和一批C段就这样做不同的事,来先探测是否有脆弱的点,最后才是回归常规web,一个站一个站的去撕

一些工具:

https://github.com/broken5/WebAliveScan web存活判断
https://github.com/fadinglr/EHole 红队重点攻击系统指纹探测工具
https://github.com/k8gege/K8CScan 漏洞扫描、密码爆破
https://github.com/b1gcat/DarkEye 主机发现+爆破
https://github.com/Adminisme/ServerScan 高并发网络扫描、服务探测工具
https://github.com/dean2021/titlesearch 批量抓取域名title工具
https://github.com/pmiaowu/PmWebDirScan 批量扫目录备份

还有的就是一些大家都熟知的xray,vulmap之类的漏洞,批量轻量去扫描一下即可。

把上面的几个步骤,工具串起来,行成快速信息收集,快速探测打点,最好写个贯穿流程的工具调用的脚本,自己写过效果不错但代码不好就不拿出来丢人了,基本这样过一遍就容易打到一些比较脆弱的点。

文章来源:Hack之道
域名结构域名服务器
本作品采用《CC 协议》,转载必须注明作者和本文链接
显然不能将所有信息都储存在一台域名服务器中。根域名服务器是最高层次的域名服务器。因特网上共有13个不同IP地址的根域名服务器。因此权限域名服务器知道其管辖的域名与IP地址的映射关系。当一个主机发出DNS请求报文时,这个报文就首先被送往该主机的本地域名服务器
通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析。地址1.3 DNS 的功能每个 IP 地址都可以有一个主机名,主机名由一个或多个字符串组成,字符串之间用小数点隔开。主机名到 IP 地址映射的两种方式静态映射/etc/hosts文件在每台设备上都有主机到IP的映射关系,只供此设备使用动态映射/etc/resolv.conf文件指通过DNS服务器配置主机到IP的映射关系#?
供应链投毒攻击是指黑客利用供应链中的软件、硬件或服务等环节,通过植入恶意代码或篡改产品,从而影响最终用户的安全的一种攻击手段。当今世界依赖于数字网络连接,个人和企业都通过网络进行交流。攻击者可以通过攻击目标公司使用的第三方服务提供商,利用其服务或软硬件作为入口点进入目标网络。然后,通过供应链将风险扩大到其他企业和用户,造成巨大的影响。
Windows AD基础知识
2022-06-14 15:37:35
内容可能有点长,但是这有助于模拟不同的攻击,模拟和了解红队的攻击行为。
僵尸网络目前已经成为了一个大问题,有多种方式可以清除僵尸网络,如渗透攻入攻击基础设施、ISP 强制下线恶意服务器、DNS 水坑、扣押相关数字资产、逮捕犯罪分子等。清除僵尸网络的核心问题在于:如果僵尸网络没有被完全清除或者其运营人员没有被逮捕起诉,运营人员可能很容易就恢复运营并使其更难以铲除。
截止日期到2022年5月。计算指标是从安全事件中提取的数据中获得的,比如哈希值和正则表达式。调查型思维不同于批判性思维,它将研究和分析结合起来,识别和解释认知和逻辑偏见并使用结构化分析技术来克服它们。这包括结构化威胁信息
一种涉及使用特定名称注册域的新域名系统 (DNS) 攻击方法可用于研究人员所描述的“国家级间谍活动”。
探讨DNS解析流程
2022-08-08 22:05:47
如果 DNS 服务器出现故障,整个 Internet 网络都将关闭。本地 DNS 服务器收到来自客户端的 DNS 请求,它会在其缓存中查找 google.com 的 IP 地址。根域名服务器作为最高级别的 DNS 服务器,全球共 13 台。顶级 .com 区域 DNS 服务器再次为该请求指明了方向。
安全厂商 Infoblox 的调查研究显示,一个名为 DecoyDog(诱饵狗)的复杂恶意工具包通过域名系统(DNS),从事网络间谍活动已达1年以上。
VSole
网络安全专家