WEB安全攻防渗透——第一章 渗透测试之信息收集

一、信息收集

1.域名信息收集

1.1 Whois查询

#进入    /etc/ssh
#输入命令 whois baidu.com
#在线查询
#爱站工具网  https://whois.aizhan.com
#站长之家    https://whois.chinaz.com
#VirusTotal https://www.virustotal.com

1.2 备案信息查询

  • ICP备案查询网 http://www.beianbeian.com
  • 天眼查 http://www.tianyancha.com

2.收集敏感信息

关键字 说明
Site 指定域名
Inutl URL中存在关键字的网页
intext 网页正文中的关键字
Filetype 指定文件类型
Intitle 网页标题中的关键字
link Iink:baidu.com即表示返回所有和baidu.com做了链接的URL
Info 查找指定站点的一些基本信息
cache 搜索Google里关于某些内容的缓存

搜索学校网站的后台 site:edu.cn intext:后台管理

工具:Burp Suite

乌云漏洞表:https://wppyun.shuimugan.com 查询历史漏洞信息

3.收集子域名信息

3.1 子域名检测工具

  • Layer子域名挖掘机 在域名对话框中直接输入域名就可以进行扫描,它的显示界面比较细致,有域名、解析IP、CDN列表、Web服务器和网站状态
  • Sublist3r
  • subDomainsBrute

3.2 搜索引擎枚举

例如:搜索百度旗下的子域名 site:baidu.com

3.3 第三方聚合应用枚举

  • DNSdumpster网站 (https://dnsdumpster.com)
  • 在线DNS侦查

3.4 证明透明度公开日志枚举

证书透明度(CT)是证书授权机构(CA)的一个项目,证书授权机构会将每个SSL/TLS证书发布到公共日志中。

  • 子域名枚举 crt.sh: https://crt.sh censys: htpps://censys.io
  • 子域名爆破网站 https://phpinfo.me/domain
  • IP反查绑定域名网站 https://dns.aizhan.com

4.收集常用端口信息

在渗透测试过程中,对端口信息的收集是一个很重要的过程,通过扫描服务器开发的端口以及从该端口判断服务器中存在服务,就可以对症下药,便于我们渗透目标服务器。

所以在端口渗透信息的收集过程中,我们需要关注常见应用的默认端口和在端口上运行的服务。最常见的扫描工具就是Nmap,无状态端口扫描工具Masscan、ZMap和御剑高速TCP端口扫描工具。

  • 文件共享服务端口

    端口号 端口说明 攻击方向
    21/22/69 Ftp/Tftp文件传输协议 允许匿名的长传、下载、爆破和嗅探操作
    2049 Nfs服务 配置不当
    139 Smaba服务 爆破、未授权访问、远程代码执行
    389 Ldap目录访问协议 注入、允许匿名访问、弱口令
  • 远程连接服务端口

    端口号 端口说明 攻击方向
    22 SSH远程连接 爆破、SSH隧道及内网代理转发、文件传输
    23 Telnet远程连接 爆破、嗅探、弱口令
    3389 Rdp远程桌面连接 Shift后门、爆破
    5900 VNC 弱口令爆破
    5632 PyAnywhere服务 抓密码、代码执行
  • Web应用服务端口

    端口号 端口说明 攻击方向
    80/443/8080 常见的web服务端口 Web攻击、爆破、对应服务器版本漏洞
    7001/7002 WebLoginc控制台 java反序列化、弱口令
    8080/8089 Jboss/Resin/Jetty/Jenkins 反序列化、控制台弱口令
    9090 WebSphere控制台 java反序列化、弱口令
    4848 GlassFish控制台 弱口令
    1352 Lotus domino邮件服务 弱口令、信息泄露、爆破
    10000 Webmin-Web控制面板 弱口令
  • 数据库服务端口

    端口号 端口说明 攻击方向
    3306 MySQL 注入、提权、爆破
    1433 MSSQL数据库 注入、提权、SA弱口令、爆破
    1521 Oracle数据库 TNS爆破、注入、反弹shell
    5432 PostgreSQL数据库 爆破、注入、弱口令
    27017/20718 MongoDB 爆破、未授权访问
    6379 Redis数据库 可尝试未授权访问、弱口令爆破
    5000 SysBase/DB2数据库 爆破、注入
  • 邮件服务端口

    端口号 端口说明 攻击方向
    25 SMTP邮件服务 邮件伪造
    110 POP3协议 爆破、嗅探
    143 IMAP协议 爆破
  • 网络常见协议端口

    端口号 端口说明 攻击方向
    53 DNS域名系统 允许区域传送、NDS劫持、缓存投毒、欺骗
    67/68 DHCP服务 劫持、欺骗
    161 SNMP协议 爆破、搜集目标内网信息
  • 特殊服务端口

    端口号 端口说明 攻击方向
    2181 Zookeeper服务 未授权访问
    8069 Zabbix服务 远程执行、SQL注入
    9200/9300 Elasticsearch服务 远程执行
    11211 Memcache服务 未授权访问
    512/513/514 LinuxRexec服务 爆破、Rlogin登录
    873 Rsync服务 匿名访问、文件上传
    3690 Svn服务 Svn泄露、未授权访问
    50000 SAP Management Console 远程执行

5.指纹识别

网站CMS指纹识别,CMS称为整站系统,在渗透测试过程中对目标服务器进行指纹识别是相当有必要的,因为只有识别出相应的Web容器或者CMS,才能找到与其相应的漏洞,然后才可以进行相应的渗透操作。

  • 代表工具:御剑web指纹识别、轻量WEB指纹识别
  • 在线工具:云溪指纹:http://www.yunsee.cn/finger.html WhatWeb: https://whatweb.net

6.查找真实IP

6.1 目标服务器存在CDN

CDN内容分发网络,主要解决因传输距离和不同运营商节点造成的网络速度性能底下的问题。如果渗透目标购买了CDN服务,可以直接ping目标的域名,但是得到的并非是真实的web服务器,就无法直接真实的找到IP.

6.2 判断目标服务器是否使用了CDN

  • 通过ping目标域名,观察域名的解析情况,判断是否使用了CDN
  • 在线查找17CE https://www.17ce.com 观察IP是否一致,如果一致则不存在CDN,如果IP太多且具有规律性,可以查找这些IP的归属地,看看是否存在CND

6.3 绕过CDN寻找真实IP

正常情况下,通过cmd命令可以快速找到域名对应IP,最常见的命令如ping、nslookup。但很多站点出于用户体验和安全的角度,使用CDN加速,将域名解析到CDN,这时候就需要绕过CDN来查找真实IP。

6.3.1 DNS历史解析记录

查询域名的历史解析记录,可能会找到网站使用CDN前的解析记录,从而获取真实ip,相关查询的网站有:

iphistory:https://viewdns.info/iphistory/
DNS查询:(https://dnsdb.io/zh-cn/)
微步在线:(https://x.threatbook.cn/)
域名查询:(https://site.ip138.com/)
DNS历史查询:(https://securitytrails.com/)
Netcraft:https://sitereport.netcraft.com/?url=github.com

6.3.2 查找子域名

很多时候,一些重要的站点会做CDN,而一些子域名站点并没有加入CDN,而且跟主站在同一个C段内,这时候,就可以通过查找子域名来查找网站的真实IP。

常用的子域名查找方法和工具:

1、搜索引擎查询:如Google、baidu、Bing等传统搜索引擎,site:baidu.com inurl:baidu.com,搜target.com|公司名字。

2、一些在线查询工具,如:

http://tool.chinaz.com/subdomain/
http://i.links.cn/subdomain/ 
http://subdomain.chaxun.la
http://searchdns.netcraft.com/
https://www.virustotal.com/

3、 子域名爆破工具

Layer子域名挖掘机
wydomain:https://github.com/ring04h/wydomain 
subDomainsBrute:https://github.com/lijiejie/
Sublist3r:https://github.com/aboul3la/Sublist3r

6.3.3 网站邮件头信息

比如说,邮箱注册,邮箱找回密码、RSS邮件订阅等功能场景,通过网站给自己发送邮件,从而让目标主动暴露他们的真实的IP,查看邮件头信息,获取到网站的真实IP。

WEB安全攻防渗透——第一章 渗透测试之信息收集_第1张图片

6.3.4 网络空间安全引擎搜索

通过关键字或网站域名,就可以找出被收录的IP,很多时候获取到的就是网站的真实IP。

钟馗之眼:https://www.zoomeye.org
Shodan:https://www.shodan.io
Fofa:https://fofa.so

ZoomEy搜索:

WEB安全攻防渗透——第一章 渗透测试之信息收集_第2张图片

6.3.5 利用SSL证书寻找真实IP

证书颁发机构(CA)必须将他们发布的每个SSL/TLS证书发布到公共日志中,SSL/TLS证书通常包含域名、子域名和电子邮件地址。因此SSL/TLS证书成为了攻击者的切入点。

SSL证书搜索引擎:

https://censys.io/ipv4?q=github.com

Censys 证书搜索:

WEB安全攻防渗透——第一章 渗透测试之信息收集_第3张图片

6.3.6 国外主机解析域名

大部分 CDN 厂商因为各种原因只做了国内的线路,而针对国外的线路可能几乎没有,此时我们使用国外的DNS查询,很可能获取到真实IP。

国外多PING测试工具:

https://asm.ca.com/zh_cn/ping.php
http://host-tracker.com/
http://www.webpagetest.org/
https://dnscheck.pingdom.com/

国外多ping网站测试:

WEB安全攻防渗透——第一章 渗透测试之信息收集_第4张图片

WEB安全攻防渗透——第一章 渗透测试之信息收集_第5张图片

6.3.7 扫描全网

通过Zmap、masscan等工具对整个互联网发起扫描,针对扫描结果进行关键字查找,获取网站真实IP。

1、ZMap号称是最快的互联网扫描工具,能够在45分钟扫遍全网。

https://github.com/zmap/zmap

2、Masscan号称是最快的互联网端口扫描器,最快可以在六分钟内扫遍互联网。

https://github.com/robertdavidgraham/masscan

6.3.8 配置不当导致绕过

在配置CDN的时候,需要指定域名、端口等信息,有时候小小的配置细节就容易导致CDN防护被绕过。

案例1:为了方便用户访问,我们常常将www.test.com 和 test.com 解析到同一个站点,而CDN只配置了www.test.com,通过访问test.com,就可以绕过 CDN 了。

案例2:站点同时支持http和https访问,CDN只配置 https协议,那么这时访问http就可以轻易绕过。

6.4 验证获取的IP

如果是web项目就直接拿ip访问应用,观察是否和访问域名返回的一样,或者借用工具Masscan的工具批扫描对应IP段中开了80、8080、443端口的IP,然后一一访问观察响应结果是否为目标站点。

7.收集敏感目录文件

在渗透测试中,最关键的一步就是探测web目录结构和隐藏的敏感文件,因为可以获取到网站的后台管理页面、文件上传页面、甚至可以扫出网站的源代码。

我选用的工具是【御剑后台扫描珍藏版】

友情链接 https://blog.csdn.net/sunjikui1255326447/article/details/91344441

​ https://zhuanlan.zhihu.com/p/341387108

8. 社会工程学

  • 工具:社工库
  • 可以联系客服或管理员,骗取后台,理由可信,成功率没问题。CMS判断出来后,可以下源码看他的后台在哪(前提未修改),也可以百度此CMS后台。

你可能感兴趣的:(信息安全,安全)