信息收集:端口扫描原理,端口扫描分类,端口扫描工具,手动判断操作系统,操作系统识别工具

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「专栏简介」:此文章已录入专栏《网络安全自学教程》

端口&系统版本

一、端口扫描

知道主机开放了哪些端口,就能根据「端口」找到对应的「服务」,再根据服务的已知漏洞进行渗透。

1、telnet

格式:telnet IP 端口

Windows系统:进入「黑窗口」表示端口开放;提示「连接失败」表示端口关闭。

Linux系统:返回「Connected」表示端口开放;返回「Connection refused」表示端口关闭。

2、Nmap

nmap(Network Mapper)是一个「网络扫描」和嗅探工具,-p参数指定扫描的端口。

shell 复制代码
nmap -sV -p 1-65535 206.119.105.9

3、Masscan

masscan是一个快速「端口扫描」工具,-p参数指定扫描的端口。

shell 复制代码
masscan -p 0-65535 206.119.105.9

4、端口扫描原理及分类

端口扫描本质上就是向主机的指定端口发送连接请求,收到响应,就说明端口开放;没有响应,就说明没开。

常用的扫描方式有全连接和半链接:

1)完全链接扫描

使用TCP三次握手建立一次完整的链接,从系统调用 connect()开始,端口开放则建立链接,端口不开放则返回-1。

2)半链接扫描

就是我们常说的SYN扫描,只建立TCP的前两次链接,发送一个SYN后,就停止建立链接,等待对方的响应。

如果返回一个ACK,就说明端口开放;如果返回一个RESET,就说明端口没开放。

这种不完整的链接,产生的日志较少,但需要超级管理员权限。

  • Telnet 使用完整的三次握手建立链接,常用于单个端口的测试。
  • Masscan 只发送SYN包,如果对方返回 ACK+SYN 就说明端口开放。
  • Nmap 默认使用SYN扫描,可以通过修改参数来修改扫描的方式。

二、操作系统识别

知道了「操作系统」,就可以针对已知漏洞进行渗透。

1、改变大小写

Windows系统不区分大小写,Linux区分大小写。

在网站的地址栏中,改变 url 的大小写,如果网页没有变化,就是Windows;如果网页404,就是Linux。

2、TTL

TTL(Time To Live)是IPv4请求包的一个字段,用来表示IP数据包在网络中可以转发的最大跳数(最大 255)。

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

ping目标网站,观察返回的ttl。

1~64 是Linux:

65~128 是Windows:

由于TTL的默认值可以修改,这个判断方式存在误差。

3、Nmap

Nmap根据特征行为「指纹」匹配特征库,来判断操作系统及版本;

语法:nmap -O IP

比如下面这个网站,是Linux,版本在2.4到2.6之间。

提示:Nmap的扫描结果可信度更高,但也并不不是100%准确。

4、p0f

p0f是kali自带的,「被动」指纹识别工具,抓取经过的流量,根据数据包判断操作系统。

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

如下图所示,os 这一栏展示 p0f 识别出的操作系统。

p0f 工具也不能保证100%的准确率,大部分识别工具的结果,都只能提供一定的参考价值。

相关推荐
white-persist13 分钟前
MCP协议深度解析:AI时代的通用连接器
网络·人工智能·windows·爬虫·python·自动化
递归不收敛13 分钟前
吴恩达机器学习课程(PyTorch 适配)学习笔记:3.4 强化学习
pytorch·学习·机器学习
新智元14 分钟前
谷歌杀入诺奖神殿,两年三冠五得主!世界TOP3重现贝尔实验室神话
人工智能·openai
StarPrayers.17 分钟前
卷积层(Convolutional Layer)学习笔记
人工智能·笔记·深度学习·学习·机器学习
skywalk816319 分钟前
AutoCoder Nano 是一款轻量级的编码助手, 利用大型语言模型(LLMs)帮助开发者编写, 理解和修改代码。
人工智能
金井PRATHAMA26 分钟前
描述逻辑对人工智能自然语言处理中深层语义分析的影响与启示
人工智能·自然语言处理·知识图谱
却道天凉_好个秋31 分钟前
OpenCV(四):视频采集与保存
人工智能·opencv·音视频
minhuan32 分钟前
构建AI智能体:五十七、LangGraph + Gradio:构建可视化AI工作流的趣味指南
人工智能·语言模型·workflow·langgraph·自定义工作流
Li zlun41 分钟前
MySQL 性能监控与安全管理完全指南
数据库·mysql·安全
WWZZ20251 小时前
ORB_SLAM2原理及代码解析:SetPose() 函数
人工智能·opencv·算法·计算机视觉·机器人·自动驾驶