信息收集
信息收集简介
在渗透测试中,信息收集是我们非常重要的一个环节,信息收集的是否全面,直接决定了我们的渗透测试的成功与否。在军事里面俗称的知己知彼百战不殆,在安全领域中也同样的适用,所以我们要比目标客户更加了解客户单位的资产情况,才能使我们的渗透测试过程中找到更多的漏洞。
渗透测试思维导图
在渗透思维导图里面我们也可以大致看的出来渗透测试其实就分为了那几个步骤,而信息收集就是渗透测试的首要任务。
域名信息收集
Whois查询
whois信息查询作用就是用来查询这个域名是否被注册了,主要关注这个站点的机构名称,手机号码,邮箱。
使用whois查询到的机构名称,手机号码,邮箱等使用这些信息来反查有没有使用这些信息注册了其他的域名。如果有他们可能会在同一个站点服务器上,或者是同一个机房里面。
1 2 3 4 | whois.bugscaner.com whois.chinaz.com x.threatbook.com https: / / who. is |
DNS信息收集
DNS就是将域名IP地址相互映射的一个数据库,使得人们可以通过访问域名,直接可以访问到该域名对应的IP地址。
我们可以通过MX记录来查看该域名是否开启了邮件交换,还能通过CNAME记录来判断该域名是否开启了CDN。
nslookup www.baidu.com
dig baidu.com
真实IP收集
为什么收集真实IP
如果一个网站开启CDN,在无法获取真实IP地址的情况下,我们是无法直接和真实的服务器做数据交互的,那么我们就无法对服务器进行端口扫描,指纹识别,漏洞探测等进一步渗透。
判断是否存在CDN
1、我们判断该网站是否存在CDN,可以使用多地ping,看IP地址是否是唯一的。
2、直接访问IP地址,如果没有CDN一般情况是可以访问的。
3、查看域名DNS信息,是否存在CNAME,一般情况下有CNAME也是存在CDN。
4、我们还可以通过国外的IP地址ping,一般国内的小网站是不会有国外的CDN的。
5、在反查网站IP时,如果此网站有非常多个不同的域名,那么这个IP多半也不是真实的IP地址。
https://wepcc.com http://ping.chinaz.com
获取真实IP
1、通过子域名获取,子域名很有可能没做CDN,或者时新上的域名没来得及加入。
2、通过国外的IP地址ping
3、邮箱获取真实IP,网站发送邮件时会附带真实IP地址,在邮件源文件头信息查看。
4、通过fofa等空间搜索引擎来收集,domain="baidu.com",如果有302跳转的极有可能是CDN地址。
5、下载网站ico图标到fofa等空间搜索引擎来查找真实的IP地址。
子域名收集
收集子域名作用
1、发现更多的服务,增加供给面,提高发现漏洞的概率。
2、偏门的子域名可能是运维的遗漏点,发现漏洞的概率更高。
3、同一个单位不同的域名,可能存在相同的框架,存在相同的漏洞。
4、子域名经常出现在OA,mail,论坛,商城等。
在线收集
1 2 3 4 | https: / / crt.sh https: / / spyse.com / target / domain / qianxin.com https: / / trasparencyreport.google.com / https / certificates https: / / phpinfo.me / domain |
google搜索
side:baidu.com -www
工具收集
layer
subDomainsBrute
oneForAll
旁站和C段
有时候我们的目标网站没有漏洞,我们就可以利用旁站或者是C段来入侵到服务器里面,然后在通过提权横向渗透等,拿到目标网站的权限。
旁站就是和目标网站在同一台服务器上的其它的网站,C段就是和目标服务器IP处在同一个C段的其他服务器。
旁站探测工具
1 2 | http: / / stool.chinaz.com / same?s = host https: / / www.webscan.cc |
C段探测工具
ip="100.1.1.0/24" //fofa nmap -p 80,443,8080 -Pn 100.1.1.0/24 masscan -p 80,443,8080 -Pn --rate=1000 100.1.1.0/24
我们先使用masscan 扫描出存活IP和开放的端口,然后再使用Nmap扫描端口详细的指纹信息。
指纹信息收集
为什么要指纹识别
指纹识别是为了发现漏洞,只有了解了目标的操作系统、中间件、CMS、数据库、开发语言等,才能够找到对应的漏洞,更能针对性的测试,提高渗透效率。
操作系统指纹识别
windows不区分大小,linux区分大小写,所以我们可以再URL里面更改大小写测试。
1 2 | nmap - sV - Pn - 0 192.168 . 1.10 nmap识别指纹擦偶哦系统是通过端口识别,在识别操作系统的时候不能使用 - sn |
中间件指纹识别
通过http返回消息中提取server字段 通过端口服务探测 nmap -sV -Pn -sS 80 192.168.1.10 通过页面错误信息来识别
开发语言识别
1 2 3 | 查看网页的后缀(.do .jsp .asp .aspx .php) 通过首页index查看,例如baidu.com / index.php google hack site:www.baidu.com inurl:php有url结果,site:www.baidu.com inurl:jsp,没有url<br>wappalyzer 浏览器工具 |
CMS指纹识别
1 2 | https: / / scan.dyboy.cn / web / watweb工具 |
敏感文件目录
收集敏感文件和目录主要目的也是为了提高我们的渗透效率,收集泄露的敏感信息,为后续渗透做准备,我们主要收集以下信息:
1、版本控制信息(git、hg、svn、cvs)
2、Web-Inf泄露
3、备份文件泄露
4、配置文件泄露
5、phpinfo.php
6、物理路径泄露
7、目录浏览
8、管理后台
Google hack语法
google的搜索引擎非常的强大,可以快速的帮我们查找到敏感信息,如:子域名、管理后台等。
限制搜索范围: site:限制搜索的域名范围 and 逻辑与,同时检索 |:逻辑非,包含某个关键词 -:去掉关键词部分 高级语法: intitle:title包含关键字的页面 intext:正文中包含的信息 inurl:url中包含的关键字 filetype:限定文件的类型 link:连接到某个url的特定页面
搜索敏感文件示例:
site:baidu.com filetype:doc intext:pass
site:baidu.com filetype:xls intext:pass
site:baidu.com filetype:conf
site:baidu.com filetype:log iserror.log
搜索登录后台示例:
site:baidu.com admin site:baidu.com login site:baidu.com 管理 site:baidu.com system site:baidu.com 登录 site:baidu.com inurl:login|admin|member|login_admin|system|cms site:baidu.com intext:管理|登录|后台|用户名|密码|验证码|系统|账号|admin|login|username
搜索邮箱示例:
1 | site:baidu.com intext:@xx.com |
搜索上传示例:
site:baidu.com inurl:file
site:baidu.com inurl:load
敏感信息收集工具
dirseach //敏感文件扫描
bbscan //版本控制信息泄露
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!