【网络安全 | 信息收集】操作系统判定及端口扫描(全网最详析)

在信息收集时,知晓目标网址的操作系统、开放端口可以确定攻击方向、扩大攻击面。

操作系统判定

本文提供四种判断方法

1)大小写

Windows对大小写不敏感:

在 Windows 中,"file.txt"、"FILE.txt" 和 "File.txt" 被认为是相同的文件名。

例如该网站:

在这里插入图片描述
将C改为大写后页面不受影响,说明该网站不区分大小写,为Windows操作系统:

在这里插入图片描述

Linux/Unix对大小写敏感:

在 Linux/Unix 中,"file.txt"、"FILE.txt" 和 "File.txt" 被认为是不同的文件名。

在这里插入图片描述

可以看到,这个网站为Linux操作系统:

在这里插入图片描述

2)TTL

TTL(Time to Live)是指数据包从源到目的地所经过的设备数量。每当一个数据包通过一个设备(例如路由器)时,TTL 值会减少 1。当 TTL 值为0时,该数据包将被丢弃。这是为了防止数据包在网络中无限传输,浪费网络资源和时间。

Windows系统的默认TTL是128,Linux系统的默认TTL是64。

当ping某个IP时,如果回显的TTL在65128,说明为Windows系统。如果回显的TTL在164,说明为Linux系统。

ping本机并不会导致TTL的减少:

在这里插入图片描述

TTL的默认值可以被修改,可能ping某个IP时,得到的TTL为128,造成欺骗,所以TTL不能作为判定的完全依赖。

3)namp

nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。具有多种功能,其中包含操作系统的扫描。

通过以下命令识别操作系统:

nmap -O IP

在这里插入图片描述
该主机运行的操作系统是 Microsoft Windows 10 1607 版本

p0f

在命令行输入 p0f 后回车,进入被动检测状态,然后使用浏览器访问目标网站,即可看到回显。

在这里插入图片描述
可以看到,该网站的操作系统为Linux 2.2.x-3.x:

在这里插入图片描述

可以发现, p0f 并不能保证绝对的识别。

端口

telnet

Windows自带telnet,查看某一IP上的端口是否可以访问:

telnet IP 端口

该端口不可访问:

在这里插入图片描述

若端口可访问,将进入telnet页面:

telnet 127.0.0.1 80

在这里插入图片描述

namp

nmap的功能多样,也可进行端口扫描。

该命令使用nmap扫描所有端口:

namp -sV -p 1-65535 IP

在这里插入图片描述

  • 端口 80/tcp 是开放的,但服务被 tcpwrapped 包裹,意味着具体的服务无法确定。
  • 端口 443/tcp 也是开放的,同样被 tcpwrapped 包裹。

masscan

与Nmap不同,Masscan以非常快的速度对目标IP地址进行端口扫描,并返回端口状态和响应数据。

命令如下(全端口扫描):

masscan -p 1-65535 IP

猜你喜欢

转载自blog.csdn.net/2301_77485708/article/details/135481212