细谈渗透测试的前期工作——信息收集
细谈渗透测试的前期工作——信息收集
- 前言
- 0x01 收集什么信息
- 0x02 作用和收集方法
- 总结
前言
都说学安全的,查资料找信息什么的都是基本功,收集信息的能力都是杠杠的,经常网上有什么热门的事情,小伙伴们都会来找我帮他们找点瓜吃,也常常让我帮忙找特定的一些岛国教育资料,真是工具人实锤了。。咳咳扯远了,扯远了。
所谓知己知彼,百战不殆,要做好渗透测试,前期的信息收集工作可以说是非常重要了,在面试中这也是高频出现的问题,可能感觉很简单,但是其中还是有很多不可忽略的小细节,往往就是这些小细节决定能否成功渗透的一个因素。
0x01 收集什么信息
- whois信息
- 备案信息
- 网站架构信息
- DNS信息
- 查找真实IP
- C段
- 子域名
- 旁站
- 端口
- WAF探测
- 指纹识别
- 收集敏感信息
0x02 作用和收集方法
Whois 信息
主要信息包括:域名注册人信息(电话号码、名字、邮箱等)。
作用:若站点是中小型网站,注册人很可能是管理员,可以通过注册人信息进行反查,扩大信息收集范围。也可以通过社会工程学来了解注册人的其他信息。(思维扩散,方法有很多)但是whois的信息不是百分百正确的,还需要自己判断。备案信息
在国内,网站所有者是需要向国家备案网站信息的,一般通过站长之家或者天眼查或者备案巴巴一类的网站来查询备案信息,而且一般都要付费。
作用:利于社工的前期数据积累。网站架构信息
主要包括:网站建站使用的数据库、web容器、后端语言、服务器系统等。
工具:我自己喜欢用的是wapplayzer这个浏览器插件,还有云悉、NMAP、AWVS等。
DNS信息
作用:建站者对 DNS 配置不适当,可能导致网站被DDOS,或是出现域传送、拒绝服务、DNS 重绑定等漏洞,对站点造成安全隐患。
在whois信息中通常包含了DNS信息。真实IP
在一些访问量比较大的站点,通常会采用CDN,这时肯定会有小伙伴问什么是CDN呢?
CND全称 Content Delivery Network,即内容分发网络,为了避免网络拥塞,在访问服务器时,CDN技术自动为我们提供最优的节点,这个节点同样拥有服务器提供给用户的数据和资源,这样既提高了用户的体验,同时降低了主服务器的压力。
详解可以看看这篇博文,写的很生动:[漫话:如何给女朋友解释什么是CDN?]
真实IP的获取就比较麻烦了,对没有CDN的网站来说,直接ping就可以了,但是配置了CDN的话,有以下方法可以推测真实IP:
(1)内部邮箱源。
一般邮箱系统都在内部,不会通过 CDN。许多网站都会自带 Sendmail,通过 RSS 订阅或是注册用户可获取邮件,查看源码可获取真实 IP。但需要注意的是,有的网站会使用第三方邮件服务器,如非目标自己的邮件服务器则此方法不可行。
(2)子域名。
许多网站仅对主站和流量大的子站进行CDN 的配置,而流量小的子站与主站处于同一台服务器或是同一个 C 段内。
(3)国外主机访问。
许多 CDN 的服务商由于各种原因,仅对国内线路支持加速服务,若使用国外主机对域名进行解析则可能会得到真实 IP。Rage4,ZoneEdit 等可提供国外域名解析服务,CA App Synthetic Monitor可提供国外 ping 测试服务。
(4)历史解析记录。
若是目标站点很久以前没有使用 CDN,通过查看目标域名的历史解析记录,可能得到真实 IP。Netcraft.com、微步社区等可查询相关讯息,SecurityTrails平台也可精确找寻真实原始 IP 讯息。
(5)空间引擎。
利用 fofa,shodan 等网络空间搜索引擎的相关搜索格式进行搜索,有可能获得相关关键字的 IP 信息,具体搜索语法可参照其站语法规则,此处不多赘述。
(6)SSL 证书。
通过 censys.io,搜索者可输入实际的查询参数来扫描有效证书,进而获取被暴露的 SSL证书相关的 Web 服务器 IP。C站
作用:有一些学校、公司等机构持有整个IP 段,则该 IP 段中所有 IP 都同属其资产。对目标进行 C 段扫描可收集 C 段内属于目标的 IP,也可探测目标主机的资产。一些具有内部服务站点的 IP 并没有对外映射域名,只能 IP 访问,此类站点也可由 C 段扫描进行收集 。
工具:NMAP、Masscan等。子域名收集
作用:主站访问量大,防护措施相对而言会高,可考虑收集子域名信息来扩大攻击范围。同一域名下的二级域名都属于同一资产,一般而言都会有相关的联系,如处于内网、同一数据来源等。
工具:搜索引擎语法(site:xxx.com)、站长之家、Layer 子域名挖掘机等。旁站查询
作用:旁站是指与目标站点处于同一服务器的网站,已获授权的情况下,若主站渗透无果,可以尝试进行旁站的渗透。攻击旁站成功的情况下,旁站与主站若处同一机器,则可攻击主站,若处同一内网,可进行内网渗透。
工具:站长一类的在线查询。端口探测
作用:探测服务端口,有两个作用:一是发现新的资产,同一服务器上不同端口可能对应不同的Web 网站,扫描发现新的站点并攻击下来可以对目标站点构成威胁 。二是找到易受攻击的服务,某些危险端口开放了也可尝试入侵,如 445 端口存在永恒之蓝漏洞,6379 端口存在 redis 未授权访问漏洞等,许多类似于 3306,22,1433 等端口可以尝试爆破或攻击存在漏洞的服务。端口工具:常见的有 Nmap、御剑扫描和 Masscan 等。WAF探测
许多工具可用于 WAF 检测,如 Wafw00f、Sqlmap、Nmap 等。敏感信息
信息的泄露内容大致可分为用户的内容敏感信息和 Web 服务器信息。
用户敏感信息泄露一般可以用搜索引擎语法来查找,类似包含身份证号码的表格、包含服务器账号密码的文件等。
服务器敏感信息可以通过目录扫描来查找可用的一些敏感目录,有用的信息如robots.txt,phpinfo(),admin.php, .htaccess文件,一些废弃的源码文件,后台管理地址等等。工具可使用御剑、DirBuster等。
总结
渗透测试中,收集到的信息是越多越好的,除了技术方面,社会工程学也是富有成效的一种收集信息的方法,所以要成为一名合格的渗透测试人员还得会聊天啊hhh。
参考文献:浅析WEB渗透信息收集[J].邓泽龙. 电子元器件与信息技术.2020,4(4):24-25+32.
细谈渗透测试的前期工作——信息收集相关推荐
- 渗透测试入门1之信息收集
渗透测试入门1之信息收集 开源情报信息收集(OSINT) github whois查询/注册人反查/邮箱反查/相关资产 google hacking 创建企业密码字典 子域名获取 字典列表 邮箱列表获 ...
- 渗透测试工具:主动信息收集Nmap
文章目录 一.Nmap是什么(形式因)? 二.Nmap包含哪些(质料因)和如何使用(方法论)? (一).扫描目标说明: (二).扫描类型 1.主机发现: 2.端口扫描 (1).端口扫描基础: (2). ...
- 内网渗透测试:内网信息收集与上传下载
在之前的几节中,我们讲了隐藏通讯隧道技术的运用,那其实都是渗透测试的后话,接下来要讲的信息收集才是内网渗透的基础. 可以说内网渗透测试,其本质就是信息收集.信息收集的深度,直接关系到内网渗透测试的成败 ...
- 渗透测试入门18之信息收集
渗透测试之信息收集 目录 信息收集 DNS域名信息的收集 整站分析 服务器类型(Linux/Windows) 网站容器(Apache/Nginx/Tomcat/IIS) 脚本类型(php/jsp/as ...
- kali linux 渗透测试学习笔记——被动信息收集
kali linux 渗透测试学习笔记--linux 被动信息收集 被动信息收集 被动信息收集 公开渠道可获得的信息 已公开的信息,通过互联网等渠道去获得 与目标系统不产生直接交互 不对目标访问,扫描 ...
- 渗透测试的灵魂:信息收集
渗透测试之信息收集 Google Hack 域名信息收集 Whois信息查询 网站备案信息查询 子域名信息收集 证书透明度公开日志枚举 确定目标真实IP 什么是CDN 如何判断网站是否使用CDN 绕过 ...
- 渗透测试-C段主机信息收集
提示:提示:注意:网络安全环境需要大家共同维护,请大家共同遵守网络安全规章制度,仅供大家参考,造成的法律后果,不由本人承担 文章目录 一.C段 二.C段信息收集 1. Nmap扫描获取C段信息 2. ...
- <渗透测试学习指南> 信息收集(三)获取目标应用版本等详细信息
转载请注明作者和出处: 本章将讲述如何获取目标系统信息.端口信息等详细信息 上一章我们讲到了获取目标真实IP及子域名信息的几种典型方法,但是单靠真实IP和子域名还无法让我们顺利的完成一项渗透测试任务, ...
- 渗透测试与攻防对抗-信息收集与社工技巧
文章目录 信息收集与社工技巧 1.信息收集总览 2.信息收集-DNS 3.信息收集-子域名收集 4.信息收集-C段扫描 5.信息收集-Web目录扫描 6.信息收集-指纹识别 7.Google Hack ...
最新文章
- Java学习总结:57(Properties子类)
- Android 使用反射机制获取或设置系统属性(SystemProperties)
- 以下是关于ASP.NET中保存各种信息的对象的比较,理解这些对象的原理,对制作完善的程序来说是相当有必要的(摘至互联网,并非原创--xukunping)...
- Revel Web开源框架
- java friendly 子包,黑馬程序員 java 修飾符類型(public,protected,private,friendly)
- 我终于搞清楚了和String有关的那点事儿
- jpg , png 图片转SVG格式(资源篇)
- 思维 || Make It Equal
- 如何使用敏捷开发来赢得太阳能竞速赛
- 1024,节日快乐!
- 《Java与模式》笔记(一)
- U-boot主循环main_loop分析
- 面向对象七大设计原则(转)
- 刘汝佳第二章习题(前四)
- [拓扑资料汇总-近期更新中]点集代数拓扑 与泛函共看效果更佳
- 会声会影编辑html,用会声会影剪辑视频快速入门技巧
- 中国芯绝配:普华推全新龙芯3A3000操作系统
- 测试用例(功能用例)——资产类别、品牌、取得方式
- Android 解决65536
- 中国式危机公关9加1策略(第十一章 强大执行力原则)
热门文章
- Could not find action or result No result defined for action
- vijos1153:猫狗大战
- 网站关键词优化该怎么做?
- Ubuntu中动态库.so和静态库.a介绍
- 电话归属地查询接口地址
- Oracle建库建表
- 英文论文提交后各阶段含义
- 肝素-PEG2000-PBA肝素-PEG-苯硼酸|NHS-PEG-PBA活化脂-聚乙二醇-苯硼酸|齐岳定制服务
- 已知有十六支男子足球队参加2008 北京奥运会。写一个程序,把这16 支球队随机分为4 个组。 注:参赛球队列表见附录 注2:使用Math.random 来产生随机数。(也可以使用其它方法) 2. 2
- 开源的 智能卡 COS系统源码