信息收集
信息收集
信息收集是渗透测试成功的保障,渗透测试的本质是信息收集。
信息收集的方式可以分为两种:主动和被动。
- 主动信息收集:通过直接访问、扫描网站,这种流量将流经网站。
- 被动信息收集:利用公开渠道对目标进行访问了解,例如:搜索引擎等,在不与目标系统直接交互的情况下获取信息,并且尽量避免留下痕迹。
要收集哪些信息?
- 服务器信息(端口、服务、IP)
- 网站信息(服务器操作系统、中间件、数据库、编程语言、敏感目录与文件、旁站查询、C段查询)
- 域名信息(whois、备案信息、子域名收集)
- 网站管理员信息(姓名、职务、生日、联系电话、邮件地址)
域名信息收集
顶级域名 .com
二级域名 baidu.com
三级域名 www.baidu.com
whois用来查询域名的IP以及所有者等信息的传输协议。
whois命令行查询 whois baidu.com
whois.chinaz.com
备案信息 icp.chinaz.com
子域名信息收集 tool.chinaz.com/subdomain
IP信息收集
IP地址反查域名
如果渗透目标为虚拟主机,那么通过ip反查到的域名信息很有价值,因为一台物理服务器上可能运行多个虚拟主机。这些虚拟主机有不同的域名,但通常共用一个IP地址。如果你知道有哪些网站共用这台服务器,就有可能通过此台服务器上其他网站的漏洞获取服务器控制权,进行迂回获取渗透目标的权限,这种技术也称为“旁注”。
CDN
CDN的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。
判断CDN
多地ping--> IP不唯一,可能使用cdn
绕过CDN
- 国外访问 <cdn服务贵,可能不在境外使用>
- 查询子域名的ip<流量价格高昂,边缘业务网站没用>
- Mx记录邮件服务<邮件服务查询ip地址>
- 历史DNS记录<查询域名最早解析的IP地址>
端口信息收集
需要知道目标服务器开放了哪些端口,常见的如 135 、137 、138 、139 、445,这几个端口经常爆发漏洞。以下是一些服务端口的漏洞:
- 22——>ssh弱口令
- 873——>rsync 未授权访问漏洞
- 3306——>mysql弱口令
- 6379——>redis未授权访问漏洞
端口扫描工具 nmap
功能
1.检测网络存活主机
2.检测主机开放端口
3.检测相应端口软件
4.检测操作系统,硬件地址以及软件版本
5.检测脆弱性的漏洞
端口状态
状态 | 说明 |
---|---|
open | 端口开启,数据有到达主机,有程序在端口上监控 |
closed | 端口关闭,数据有到达主机,没有程序在端口上监控 |
filtered | 数据没有到达主机,返回的结果为空,数据被防火墙或IDS过滤 |
unfiltered | 数据有到达主机,但是不能识别端口的当前状况 |
open | filtered | 端口没有返回值,主要发生在UDP、IP、FIN、NULL和Xmas扫描中 |
Closed|Filtered | 只发生在IP ID idle扫描 |
基本语法
单一主机扫描:nmap 192.168.1.2
子网扫描:nmap 192.168.1.1/24
多主机扫描:nmap 192.168.1.1 192.168.1.10
主机范围扫描:nmap 192.168.1.1-100
ip地址列表扫描:nmap -iL target.txt
-A : all
-T0:非常慢的扫描
-T1:缓慢的扫描
-T2:降低速度以降低对带宽的消耗
-T3:默认,普通的。根据目标的反应自动调整时间
-T4:快速扫描,常用扫描方式,需要在很好的网络环境下进行扫描
-T5:急速扫描,这种扫描方式以牺牲准确度来提升扫描速度
-sT:TCP connect()扫描,这是最基本的TCP扫描方式。这种扫描很容易被检测到,在目标主机的日志中会记录大批的连接请求以及错误信息。
-sS:TCP同步扫描(TCP SYN),因为不必全部打开一个TCP连接,所以这项技术通常称为半开扫描(half-open)。这项技术最大的好处是,很少有系统能够把这记入系统日志。不过,你需要root权限来定制SYN数据包。
-sP:ping扫描,用ping方式检查网络上哪些主机正在运行。当主机阻塞ICMP echo请求包是ping扫描是无效的。nmap在任何情况下都会进行ping扫描,只有目标主机处于运行状态,才会进行后续的扫描。
-sU:如果你想知道在某台主机上提供哪些UDP(用户数据报协议,RFC768)服务,可以使用此选项。
-sA:ACK扫描,这项高级的扫描方法通常可以用来穿过防火墙。
-sV:版本检测
-O:系统扫描
-Pn:扫描之前不需要用ping命令,有些防火墙禁止ping命令。可以使用此选项进行扫描。