IP 信息收集
IP 信息收集
查找域名的 IP 地址
通过 DNS 查询获取域名的 IP 地址是信息收集的起点。
方法:使用
nslookup命令查询 DNS 解析。命令示例:
nslookup [域名] [DNS服务器] #示例 nslookup www.baidu.com 223.5.5.5说明:可以指定公共 DNS 服务器(如 223.5.5.5)以避免本地 DNS 缓存或 TUN 的干扰。
CDN 服务的判断与绕过
CDN 介绍
定义:内容分发网络(CDN)通过在各地部署服务器缓存静态资源,提升网站访问速度并降低延迟。
与攻击的关系:
- SQL 注入:与后端漏洞相关,CDN 不影响。
- DDoS 攻击:CDN 可有效防御 DDoS 攻击。
常见 CDN 服务商:
CDN 服务商 CNAME 后缀 阿里云 CDN .kunlunca.com,.aliyunddos.com腾讯云 CDN .cdn.dnsv1.com百度云 CDN .bdydns.com华为云 CDN .c.cdnhwc1.com网宿科技 (ChinaCache) .wscdns.comCloudflare .cdn.cloudflare.netAkamai .edgesuite.netFastly .edgekey.netAWS CloudFront .cloudfront.netMicrosoft Azure CDN .vo.msecnd.net
判断 CDN
方法:
DNS 解析:通过
nslookup检查是否存在以下特征:- 解析结果包含疑似 CDN 的 CNAME 记录。
- 解析结果返回多个 IP 地址。
多地 Ping:
- 使用不同地理位置的服务器 ping 目标域名。
- 观察是否返回多个 IP 地址且具有地理分布特征。


工具:
nslookup- 在线工具:https://ping.chinaz.com
CDN 绕过
[!note]
现在 CDN 绕过在现实中基本不可行,但是面试可能问!
CDN 绕过的目标是找到网站的真实服务器 IP 地址。以下是常见方法:
| 方法 | 描述 | 说明 & 适用场景 |
|---|---|---|
| DNS 历史记录 | 查询域名历史解析记录,可能包含未使用 CDN 时的真实 IP。 | 早期设置解析时,没有购买 CDN 服务 |
| 子域名解析 | 查找未使用 CDN 的子域名(如 blog.example.com),推测主域名 IP。 | 子域名与主域名同服务器,且有子域名使用 CDN |
| 多地 Ping | 在不同地区 ping 域名,部分 CDN 服务仅在特定区域生效。 | 例如以前部分国内的 CDN 服务商,只在境内提供 CDN 服务 |
| 邮件原始头分析 | 检查邮件服务器 IP,部分网站邮件服务与 Web 服务器同 IP。 | 未使用阿里云、腾讯云等厂商提供的 SMTP 服务,而是在同服务器自建 SMTP 服务 |
| 网站信息泄露 | 存在漏洞,如检查 phpinfo 等页面泄露的 server_addr,可能暴露真实 IP。 | 现在的网站基本都有反向代理,server_addr 看到的都是反代之前的 IP,无用 |
| 全网 IP 碰撞 | 使用工具扫描全网 IP,匹配域名。 | 费时费力 |
| CDN 配置缺陷 | 利用 CDN 配置错误(如不当的 DNS 设置)直接访问后端。 | CDN 服务商配置失误 |
工具推荐:
- DNS 历史记录查询:https://site.ip138.com、https://securitytrails.com
- 全网 IP 碰撞:hackcdn
C 段查询
[!tip]
只有网站没有 CDN 的情况下,才可以进行 C 段扫描
定义:C 段指同一网段(/24)内的 IP 地址。例如,若
baidu.com解析为182.61.244.181,则扫描182.61.244.1至182.61.244.254,该网段中可能存在属于 baidu 的 IP 地址。工具:
工具 特点 下载链接 kscan 轻量级,支持快速 C 段扫描 https://github.com/lcvvvv/kscan Goby 图形化界面,适合综合扫描 https://github.com/gobysec/Goby/releases Shell 脚本 自定义脚本,灵活性高 —— 

端口扫描
[!tip]
只有网站没有 CDN 的情况下,才可以进行端口扫描
nmap 工具
- 主要使用
nmap,支持 Windows 和 Linux。
常用命令:
常用扫描选项:快速 TCP 端口扫描(默认只会扫描周知端口)
nmap -sT -T4 [IP或网段] #-sT scan TCP TCP扫描 #-T4 time 4 快速扫描 nmap time 0-5 0最慢 5最快
指定端口扫描
#使用 TCP 快速扫描 80 端口 nmap -sT -T4 -p80 [IP或网段] #使用 TCP 快速扫描 1-10000 端口 nmap -sT -T4 -p1-1000 [IP或网段] #使用 TCP 快速扫描全端口 nmap -sT -T4 -p1-65535 [IP或网段] nmap -sT -T4 -p- [IP或网段]
nmap 在扫描一个 IP 地址的端口之前,首先会 ping 这个 IP,如果 ping 不通,nmap 将不会进行端口扫描,因此扫描端口之前,禁用 ping。
nmap -sT -T4 -p80 -Pn [IP或网段] #-Pn nmap 在扫描端口之前,不再 ping 测试,直接扫描端口扫描服务的具体版本(不一定准)
nmap -sT -T4 -p80 -Pn -sV [IP或网段] #-sV scan version 扫描版本信息扫描操作系统版本
nmap -O [IP或网段] #-O 扫描操作系统版本
关闭端口扫描,C 段扫描
nmap -sn -PE [IP或网段] #-sn 关闭端口扫描 #-PE 开启 ICMP 扫描UDP 扫描
nmap -sU -T4 [IP或网段] #-sU scan UDP UDP扫描TCP 半开扫描
nmap -sS -T4 [IP或网段] #-sS scan SYN TCP 半开扫描,没有完成三次握手 nmap -sA -T4 [IP或网段] #-sA scan ACK TCP 半开扫描调用 nmap 脚本
nmap --script=xxx.nse [IP或网段] #kali 中 nse 脚本的位置:/usr/share/nmap/scripts #nse 脚本涵盖漏洞检测、密码爆破、漏洞攻击等等 #netbios 扫描 nmap -sU -p137 --script=nbstat.nse [IP或网段] #netbios 是主机名对应 IP 地址,端口 UDP 137
nmap 检测状态说明:
- open:端口开启。
- filtered:端口可能开启但被防火墙拦截。
- closed:端口关闭。




