第章5
网络攻防技术
5.网络信息收集
1 

孙子兵法云:“ 知己知彼,百战不殆;不知彼而知己,一胜一负;不知彼,每战必殆。”网络
攻防也是如此。

在现实世界中,只要不是太蠢的窃贼,都懂得在实施盗窃计划之前,必须观察和收集目

标房屋的相关信息,如主人作息时间、门锁类型、是否安装远程报警系统等安防设备,甚至邻

里关系、物业管理水平、小区安保措施、得手后的逃跑路线等。

对于网络攻击者而言,如果想要不留痕迹地入侵远程目标系统,那么在入侵系统之前, 

他们也必须了解目标系统可能存在的漏洞与缺陷信息,这些信息包括但不限于:系统在管

理上的安全缺陷和漏洞、使用的网络协议安全缺陷与漏洞、使用的操作系统安全缺陷与漏

洞、部署的数据库管理系统的安全缺陷和漏洞;而且在入侵实施过程中,攻击者还需要进一

步掌握更多信息,如目标网络内部拓扑结构、目标网络与外部网络的连接方式与链路路径、

防火墙的端口过滤与访问控制配置、使用的身份认证与访问控制机制等。一旦攻击者完全

掌握了这些信息,目标系统就彻底暴露在攻击者面前了。

实际上,攻击者只要有足够的耐心和灵活的思路,结合各种黑客工具和技巧,他们可以

从公开渠道收集到目标系统的各类信息,绝对会让人大吃一惊。

对于防御者而言,如果防御者能从攻击者的视觉了解到他们想要看到什么,他们能看到

什么,他们能利用这些情报做到什么,那防御者就会知道自己所维护的系统可能存在哪些潜

在的安全威胁,以及如何去解决和防范这些安全威胁。

应该指出的是,网络信息收集和入侵并不具有明显界限的先后次序关系,信息收集是融

入整个入侵过程中,攻击者收集的信息越全面细致,就越有利于入侵攻击的实施,而随着入

侵攻击的深入,攻击者就能获得更多目标系统的安全细节。

本节将从网络踩点、网络扫描、网络查点这3方面介绍对网络攻防双方都适用的最为基

础的网络信息收集技术,并给出防范这些攻击技术的简单而有效的防御措施。

5.1 
网络踩点
1.
网络踩点是指黑客通过因特网有计划有步骤地信息收集,了解攻击目标的隐私信息、网
络环境和信息安全状况,根据踩点结果,攻击者将寻找出攻击目标可能存在的薄弱环节,为
进一步的攻击行动提供指引。


下面,我们对最为流行与常见的网络踩点手段GoogleHacking、Whois服务和DNS查
询进行介绍。

GoogleHacking是指通过Web搜索引擎查找特定安全漏洞或私密信息的方法,其会
利用各个常用的搜索引擎,以及流行的Gog客户端软件Atha、Wio、
SiteDigger。
ogleHackinenkt

能否利用搜索引擎在Web中找到所需要的信息,关键在于能否合理地提取搜索的关键
字。我们可以利用表5.2的搜索引擎操

1列出的这些常见的搜索引擎高级搜索语法和表5.
作符结合,生成搜索关键字
。


表5.搜索引擎高级搜索语法

1 

网络空间安全概论

搜索引擎高级搜索语法

intext 

intitle 

cache 

define 

filetype 

info 

inurl 

link 

site 

说明

把网页中的正文内容中的某个字符作为搜索条件。例如在搜索引擎里输入int(“) ext:网络空间安全概论”,将返回所有在网页正文部分包含“网络空间安
全概论”的网页,alintext使用方法和intext类似

搜索网页标题中是否有我们所要找的字符。例如搜索“e:网络空间安

ititl
全”,将返回所有网页标题中包含“网络空间安全”的网页,(n) 同理,alintitle也
同intitle类似

搜索搜索引擎里关于某些内容的缓存

搜索某个词语的定义,搜索“define:hacker”,将返回关于hacker的定义

搜索指定类型的文件。例如输入“e:”,将返回所有以dc结尾的文

filetypdoco

件URL 

查找指定站点的一些基本信息

搜索我们指定的字符是否存在于URL中。例如输入“l:a”,将返回

inurdmin 
N个类似于这样的链接:htp://www.xcxx/dmin,用来找管理员登

xx.om/xa
录的URL 。alinurl也同inurl类似,可指定多个字符

搜索与给定网页存在链接的页面,例如搜索“nziusu.,可

lik:www.hhihcom”
以返回所有和www.iusu.om做了链接的URL

zhhihc

仅搜索特定网站或域名范围,例如搜索“sie:www.hhihcom ”,将返回所

tziusu.
有与www.iusu.om这个网址相关的URL

zhhihc

表5.搜索引擎操作符

2 

搜索引擎操作符

+ 

-

“” 

| 
· 

* 

说明

把搜索引擎可能忽略的关键字列入查询范围

查询结果中排除含有这个检索关键字的页面

查询结果精确匹配双引号部分包含完整搜索关键字

查询结果包含输入的多个关键字中任意一个即可匹配

单一的通配符

通配符,代表多个字母

例如,使用“site:orgfiletype:xl这样的关键字,1所示

s身份证号” 可能搜索到如图5.


的包含个人身份信息的数据表,而类似“e:l:g” 能找到如图5.sitorginurloin的关键字,2所
以使得攻击者得以进行进一步攻击测试。

示的网站登录页面, 

第


章网络攻防技术

图5.

1 搜索引擎搜索到的包含身份证号的文档


图5.

2 搜索引擎搜索到的网站登录页面

如果说使用搜索引擎还需要手工设置搜索关键字,而且从成百上千个搜索结果中找到
目标网站也需要具备一定的专业知识,这对攻击者而言多少有点效率低下。那么诸如
Katnhs://gtucann--ea/Kaaa)、能快速识别系统弱点和敏感数据

aa(
tpihb.om/daeXtbbtn
的工具集项目GoogleHackingDiggityProject(htps://resources.bishopfox.com/ 
resources/tools/google-hacking-diggity/)等较为知名的自动化工具,可以自动执行Google 
Hacking搜索出大量的安全漏洞、错误、配置缺陷、应用程序独有的旗标信息等安防细节,即
使是一位初出茅庐的黑客小子,也能很轻易地使用这些工具从世界各地的Web网站中找到
目标。

那么,如何避免让我们成为网络攻击者的目标呢? 防范GoogleHacking应该做到以下

几点
(
。
1)将不希望被别人搜索到的敏感信息从论坛、微博、微信等公共媒体上删除干净。


网络空间安全概论

(2)发现存在非预期泄露的敏感信息后,应采取行动进行清除。
(3)发布信息时,尽量不要出现真实个人信息。例如,不要轻易相信各种微店、拼团、网
络抽奖活动,因为这些活动往往要求提供个人电话号码、社交媒体账号甚至身份证号码等个
人隐私信息。
(4)作为网络管理员,不要轻易在讨论组或技术论坛上发布求助技术帖,因为那样往往
会将单位内部网络拓扑结构或路由器配置信息泄露给他人。
(5)关注中国国家漏洞库CNNVD等安全漏洞信息库发布的技术信息,及时更新软件
或操作系统补丁。
网络踩点的第二个技巧是使用WHOIS查询。WHOIS查询包括DNS注册信息查询
服务和IPWHOIS查询。什么是DNS和IP呢? 
在真实世界中,有多种方式来标识一个人类。例如,身份证号码、户口本或出生证书上
的名字、学生证上的学号或者工作证上的工号等,但在某些特定环境下,某种识别方法可能
比别的方法更合适些。例如,在日常生活中,我们更愿意以户口本上的姓名而非身份证号码
来记忆某个特定的人,因为前者更容易被记住。

Inent上的主机和人类一样, 使用www.zeu.n

tre也使用多种方式进行标识。例如, fu.dc
这种域名形式来标识一部提供Web服务的服务器,使用EA-F8-D7-AC-49-2E以太网硬件
地址,或220.38.v或FE80:20FF:C782这类IP6地址对

181.148这种IP4地址, A00:FE01:v
主机进行标识,这些不同的主机标识形式,是互联网中联络特定网络或主机所必需的关键信
息。对人类而言,更喜欢域名这种便于记忆的主机标识,而作为通信枢纽的路由器,使用定
长且有着层次结构的IP地址标识目标主机,显然更便于快速寻址。
为了折中上述这些标识的不同应用场景,t需要能提供一种域名到IP地址转换

Interne
的服务,这就是域名系统(omanNameSytDNS) 如图5.

Disem,的主要任务,3所示。DNS 
包括:①一个由分层的DNS服务器实现的分布式数据库;②一个使得主机能够查询分布
式数据库的应用层协议。


图5.

3 DNS服务器的部分层次结构

一个组织或个人申请DNS域名时,会以注册人身份,通过商业运营的注册商,例如国内
比较知名的万网,确认所选择的域名是否未被他人注册;接着,注册商向官方注册局申请分
配此域名。域名注册成功后,官方注册局(Registry)信息、注册商(Registrar)信息、注册人
(Registrant)的详细域名注册信息(域名登记人信息、联系方式、域名注册时间和更新时间、
权威域名服务器的IP地址等),会进入官方注册局或注册商维护的公开数据库中,并向公众
提供DNS注册信息的WHOIS查询。

因此,垃圾邮件制造者和其他类型的网络攻击者,通常会利用这些公开资源,查询他们


所感兴趣的目标组织或个人的DNS注册信息、网络位置(及真实地理位置等信息。

IP地址)
t是谁在负责维护如此庞大的DNS/IP信息库呢? 

第

那么,当今的In

terne

答案是ICANN 

(pg互联网名称与数字地址分配机

InternetCororationforAsinedNamesandNumbers, 
构)。该机构位于DNS/IP层次化管理结构的顶层,目前主要负责协调以下几类标识符的分
配工作。

(1)Internet域名
。
(2)IP地址
。


(3)网络通信协议的参数和端口号码。
ICANN有很多下属分支机构,但与DNS/IP注册和分配相关的机构主要有3个: 
ASO 、GNSO 、CNNSO, 4所示。

如图5.

章网络攻防技术


图5.

4ICANN与DNS/IP管理分支机构的层次结构图

(1)ASO(AddresSupportingOrganization,地址支持组织),主要听取、审查与IP地
址分配政策有关的意见,并向ICANN董事会提出建议,负责把IP地址块统一分配给负责
各自辖区内公共Internet号码资源管理、分配和注册事务的五大洲际Internet注册管理机
构(RegionalInternetRegistry,RIR )。这些RIR再把IP地址分配给企事业单位、Internet 
接入服务提供商(InternetServiceProvider,ISP)或者国家Internet注册机构(National 
InternetRegistry,NIR)或者本地Internet注册机构(LocalInternetRegistry,LIR): 
htp:ao.cnog。

//www.sian.r(2)GNSO(GenericNameSupportingOrganization,通用名称支持组织),负责听取、审
c.eed.rg.n

查与通用顶级域域名(如.om 、nt、.u、o、ifo等)分配政策有关的各种意见,并向


网络空间安全概论

ICANN董事会提出建议:htp://www.sian.r。

gno.cnog(3)CNNSO(CountryCodeDomainNameSupportingOrganization,国家代码域名支
持组织),负责听取、审查与国家代码顶级域域名(如.n、jp 、.s、.k等)分配有关的各种意

c.uu
见,并向ICANN董事会提出建议:htp://www.nsian.rg。

cno.cno
因此,ICANN是所有WHOIS查询的最佳出发点。例如,如图5.


5所示为ICANN官
网查询得到的www.iu.om的域名注册信息。

badc


图5.biu.omWHOIS查询结果部分截图

5 www.adc

综上所述,DNSWHOIS查询的一般思路是:在www.n.rg得到某个提供WHOIS

iaao
查询服务的权威机构,进一步查询得到目标组织的域名注册商,再从域名注册商查询得到目
标组织的域名注册细节。

此外,以下这些一站式WHOIS信息查询机构也能提供DNS查询服务。

tp:osaa.rg或hnennt。

.h//whiinotp://www.itric.e
.htp:whoi.com或htp://www.oscom 。.l(.) 
//wwwasuwhi.

.h//www.nencntoshml。
tp:itri.e/whi.t

.站长之家:whoshnzcom 。
icia.

那么,IP注册信息的(.) WHOIS查询如何实现呢? 现在已经知道IP分配事务是由
ICANN的地址管理组织ASO总体负责,而具体IP网段分配记录和注册者信息都存储于
各个洲际互联网管理局RIR的数据库中。因此,任意一个RIR都可以作为IP注册信息查
询的出发点。

以下是59.60这个IP地址通过APNIC的WHOIS查询得知该IP地址为福州

77.
231.
大学所有及其他详细注册信息,查询结果如图5.由于IPWHOIS查询有时效性, 
例仅供参考)。
6所示( 图

第
章网络攻防技术

图5.77.60的查询结果

6 APNIC对IP地址59.231.

虽然管理联系人、已注册的网络地址块、正式的名字服务器等这些信息都必须向注册机
构提供,且允许互联网上的其他用户公开获得。但用户还是可以采取一些安防措施不让攻
击者轻易得手。

(1)及时更新负责管理、技术和缴费等事务的联系人信息,并及时通知域名注册机构。
(2)为了防止社会工程学攻击,最好使用不在本单位电话交换机范围内的号码作为联
系电话,还可以使用虚构的人名来作为管理性事务的联系人,这样,一旦某位员工受到了来
自这个虚构联系人的电子邮件或电话,该单位的信息安全部门就能很快发现黑客对本单位
的攻击企图。
(3)可以使用域名注册商提供的私密注册服务,确保敏感信息如组织的实际物理地址、
电话号码、电子邮箱等信息不被公开。
除了DNS/IPWHOIS查询可能导致信息泄露,如果DNS配置得不够安全,同样有可
能泄露组织的敏感信息。由于DNS是一个能把主机名映射为IP地址或者把IP地址映射


网络空间安全概论

为主机名的分布式数据库系统,所以对于一名网络管理员来说,允许不受信任的Internet用
户执行DNS区域传送是后果极为严重的错误配置。

DNS区域传送是指一台辅助DNS服务器使用来自主服务器的数据刷新自己的ZONE 

数据库,原本目的是为了实现DNS服务的冗余备份。本来DNS区域传送的操作请求只能

来自于辅助DNS服务器,但现在许多DNS服务器被错误配置成只要有人发出请求,就会向

对方提供一个区域数据库的拷贝。设想一下,如果一个组织没有使用公用/私用DNS机制

来分割外部公用DNS信息和内部私用DNS信息,则区域传送将把一个组织内部网络的完

整导航图全都暴露在攻击者面前。这将使得攻击者可以: 

(1)搜集到目标的重要信息。
(2)作为跳板,攻击那些仅通过DNS传送才暴露的目标。
尽管令人难以置信,现实是仍然有不少网络管理员允许不受限制的DNS区域传送。一
个简单而粗暴的解决方案是:对外的DNS服务器配置为禁止DNS区域传送,且该服务器
不能包含内部网络相关主机的敏感信息。

1.网络扫描
5.2 

如果说网络踩点相当于实施盗窃之前侦查外围环境以确定目标大楼,那么网络扫描就
是从中寻找有人居住的房间,并找出所有可供潜入的门窗。网络攻击者可以通过网络扫描
技术和自动化扫描工具,确定目标网络内活跃的主机列表,以及这些主机开放的通信端口、
操作系统类型等敏感信息。
表5.
常见的网络扫描类型包括主机扫描、端口扫描、操作系统/网络服务辨识、漏洞扫描,见

3。

表5.网络扫描类型和目的

3 

网络扫描类型网络扫描目的对比的入室盗窃
主机扫描找出网段内活跃主机确定目标:找出大楼中有人居住的房间
端口扫描找出主机上所开放的网络服务寻找门窗:找出可进入房间的门窗位置
操作系统/网络服务
辨识
识别主机安装的操作系统类型与开放
网络服务类型,以选择不同渗透攻击
代码及配置
识别房间、门窗等差值的类型,针对不同
材质结构选择不同破解工具
漏洞扫描
找出主机/网络服务上存在的安全漏
洞,作为破解通道
缝隙/漏洞搜索:进一步发现门窗中可撬
开的缝隙、锁眼

1.主机扫描
主机扫描是指向目标系统发出特定的数据包,并分析目标系统返回的响应结果(或者没
有任何结果)的行为。

典型的主机扫描常常使用ICMP(RFC792)实现。ICMP可提供与IP协议层配置和IP 
数据包处置相关的诊断和控制信息的通信协议。因其能提供丰富的网络诊断信息,所以可
被用于实现主机扫描。常用于主机扫描的ICMP报文如表5.

4所示。


表5.常用于主机扫描的ICMP报文

4

第

名称

ICMPDestinationUnreachable(目标不可达) 
ICMPSourceQuench(源抑制) 
ICMPRedirection(重定向) 
ICMPTimestampRequest/Reply(时间戳) 
ICMPAddresMaskRequest/Reply(子网掩码) 
ICMPTimeExceded(超时) 
ICMPParameterProblem(参数有错) 
ICMPEchoRequest/Reply(响应请求/应答) 

类型

3 

4 

5 

13/14 
17/18 
11 

章网络攻防技术

12 

8/0 

例如,经典的PING程序(操作系统自带)使用ICMPEchoRequest/Reply(响应请求/ 
响应)报文,攻击者可用ping来确认目标主机是否在线。而使用ICMP地址掩码请求/答复
(ICMPAddresMaskRequest/Reply)消息,攻击者可以获得目标设备的子网掩码,据此, 
攻击者还能进一步找出目标网络的各个子网,并获得默认网关和广播地址信息,进而攻击默
认网关或对目标网络发起“拒绝式”服务攻击。

所以有安全意识的网络管理员,往往会在他们的网络边界路由器或防火墙设置规则阻
塞ICMP报文,因为从上面的两个例子不难看出,如果允许ICMP通信不受限制地进入网络
边界路由器,会给网络攻击者们留下发动攻击的可乘之机。

由于ICMP报文可能被防火墙过滤,所以除了ICMPPing扫描,网络攻击者也经常使
用TCP或UDP,结合端口扫描技术来发现活动主机。例如,大多数网络都允许80端口的
通信穿过自己的网络边界路由器到达内部非军事区,甚至大多数无状态防火墙产品如Cisco 
IOS系列,通常还会放行80端口的TCPACK数据包;同理,选择SMTP的25端口、POP 
的110端口、IMAP的143端口等知名的网络服务支持端口进行ping扫描,通常也都能获
得满意的扫描结果。

较为常见的基于开放端口的主机扫描如图5.从上到下分别是TCPACKping
扫描、TCPSYNping扫描、UDPping扫描。
7所示, 

常见的主机扫描工具包括ping扫描和Namp扫描,前者通过向目标网络发出IMCP 
EchoRequest数据包,并分析目标网络返回的响应结果来判断目标网络内的主机是否存
活,UNIX典型的ping工具为fping,Windows典型的ping工具是SuperScan。Nmap工具
则集合了ICMP/SYN/ACK/UDPping功能,是一个功能强大的跨平台扫描工具。

如何防范主机扫描呢? 首先利用诸如snort之类的入侵检测系统,监测主机扫描活动。
其次,根据业务需求,对允许放行哪些ICMP通信报文进入网络或特定系统做出细致评估。
例如,使用访问控制列表将外来ICMP通信限制在外部网络,以及在不妨碍正常通信的前提
下,只允许指定的ICMP数据包到达特定主机等措施,如只允许ECHO_REPLY 、TIME_ 
EXCEEDED 、HOST_UNREACHABE进入DMZ网络,而限制TIMESTAMP 、ADDRESS 
MASK的进入。


网络空间安全概论


图5.

7 基于ICMP/TCP/UDP的主机扫描

2.端口扫描
Internet上主机间的通信总是通过端口发生的,因此当网络攻击者通过主机扫描确定
活跃主机之后,活跃主机的开放端口就是他们入侵目标系统的绝佳通道。端口扫描是指网
络攻击者通过连接到远程目标系统的TCP/UDP端口,以确定哪些服务正在运行,或者正
处于监听状态。打个比方,处于监听状态的活跃服务相当于你家的大门和窗户,它们都是外
人窥探你私人领地的通道,这些通道或者可以使外人窥探你的私密信息,或者当通道损坏时
(网络服务存在安全漏洞), 5列出了常见的网络

外人可以在非授权情况下侵入你家。表5.
服务及对应的默认开放端口。

表5.常见的网络服务及默认开放端口

5 

默认端口

21 

22 

23 

25 

53 

67 

68 

69 

79 

80/8080 
110 

对应的网络服务

FTP文件传输服务

SSH安全登录服务

Telnet远程登录服务

SMTP简单邮件传输服务

DNS域名解析服务

BooTP/DHCP(BootstrapProtocolServer,引导程序协议服务器端
)
BooTP/DHCP(BootstrapProtocolClient,引导程序协议客户端
)
TFTP简单文件传输服务(UDP)
Finger服务开放,用于查询远程主机在线用户、操作系统类型以及是否缓冲区溢出等用
户


详细信息

HTTP超文本传输服务

POP3邮件服务