操作系统指纹识别(基于kali)

本文介绍了操作系统指纹识别的重要性及多种技术,包括Banner抓取、TCP和ICMP常规指纹识别技术,以及使用Nmap、Xprobe2、p0f和miranda等工具进行探测。这些方法可以帮助识别目标主机的操作系统,辅助进行渗透测试和安全攻防。
摘要由CSDN通过智能技术生成

操作系统指纹识别

1 Banner抓取

2 TCP 和 ICMP 常规指纹识别技术

TCP数据报格式

ICMP首部格式

TTL与TCP窗口大小

FIN探测

BOGUS flag 探测

TCP ISN 抽样

IPID 抽样

TCP Timestamp

ACK值

ICMP错误信息

DHCP

3 数据包重传延时技术

4 使用Nmap进行操作系统探测..

一般性探测

指定网络扫描类型.

设置扫描条件

推测结果.

5 使用Xprobe2进行操作系统探测

6 使用p0f进行操作系统探测

7 使用miranda进行操作系统探测


1 操作系统指纹识别

识别目标主机的操作系统,首先,可以帮助我们进一步探测操作系统级别的漏洞从而可以从这一级别进行渗透测试。其次,操作系统和建筑在本系统之上的应用一般是成套出现的,例如LAMP或者LNMP。操作系统的版本也有助于我们准确定位服务程序或者软件的版本,比如windows server 2003 搭载的IIS为6.0,windows server 2008 R2 搭载的是IIS7.5。

操作系统指纹识别技术多种多样,这里我简要介绍我所知道的几种常用技术,不会具体深入到细节中,若您感兴趣可自己查阅资料。

1 Banner抓取

Banner抓取是最基础、最简单的指纹识别技术,而且在不需要其他专门的工具的情况下就可以做。操作简单,通常获取的信息也相对准确。

严格的讲,banner抓取是应用程序指纹识别而不是操作系统指纹识别。Banner信息并不是操作系统本身的行为,是由应用程序自动返回的,比如apache、exchange。而且很多时候并不会直接返回操作系统信息,幸运的话,可能会看到服务程序本身的版本信息,并以此进行推断。

凡事皆有利弊,越是简单的方法越容易被防御,这种方法奏效的成功率也越来越低了。

先来看一个直接Banner抓取的例子。

这里写图片描述

在上图中,直接telnet 80端口,在返回的服务器banner信息中,看到“Server: Microsoft-HTTPAPI/2.0”的字样。

在IIS中使用ISAPI扩展后,经常会看到这样的Banner。下表可以帮助我们识别操作系统:

Server Header Value Windows Server Version
Microsoft-HTTPAPI/2.0 Windows 2003 Sp2, Windows 7, Windows 2008, Windows 2008 R2
Microsoft-HTTPAPI/1.0 Windows 2003

如果没有ISAPI拦截,我们可能会看到如下图的信息,

这里写图片描述

准确的IIS版本,会帮助我们更准确的判断操作系统,可以参考下表:

IIS Version Windows Server Version
IIS 5.0 Windows 2000
IIS 5.1 Windows XP
IIS 6.0 Windows 2003
IIS 7.0 Windows 2008, Windows Vista
IIS 7.5 Windows 2008 R2, Windows 7

对于asp.net站点,通常会看到“X-Powered-By”字样,会指示.net 版本,但是这对判断操作系统版本帮助不大。

其他web服务器如apache、nginx,除非直接输出操作系统版本,否则根据服务程序版本无法推断操作系统版本。配置不当的服务可能会输出如下信息:

HTTP/1.1 200 OK

Date: Mon, 16 Jun 2003 02:53:29 GMT

Server: Apache/1.3.3 (Unix) (Red Hat/Linux)

Last-Modified: Wed, 07 Oct 1998 11:18:14 GMT

ETag: “1813-49b-361b4df6”

Accept-Ranges: bytes

Content-Length: 1179

Connection: close

Content-Type: text/html

有经验的管理员都

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值