尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
基于 Scapy 的端口扫描器实验:TCP Connect、SYN、Xmas、FIN、NULL 与 UDP 扫描
一、实验目的掌握端口状态探测的基本原理熟悉使用 Scapy 构造和分析网络数据包理解不同端口扫描技术的工作原理、特点与局限对比自研扫描器与 Nmap 的扫描结果。二、实验环境与拓扑扫描主机AttackerKali Rolling 2025.2内网 IP172.16.111.129目标主机VictimKali Rolling 2025.2内网 IP172.16.111.123网关GatewayDebian Buster内网 IP172.16.111.1网络拓扑------------------ | | | 网关(Gateway) | | Debian Buster | | IP: 172.16.111.1| | | ----------------- | -------------------------------- | | ------------------- ----------------------- | | | | | 扫描主机(Attacker) | | 目标主机(Victim) | | Kali Rolling | | Kali Rolling | | 内网IP: 172.16.111.129 | | 内网IP: 172.16.111.123 | | Host-Only: 192.168.138.6| | Host-Only: 192.168.138.8| | | | | ------------------------- -------------------------三、端口状态模拟在目标主机上模拟三种端口状态状态模拟方式端口开放启动 SSH、DNS 服务22/tcp、53/udp关闭无服务监听12345过滤iptables 丢弃8080操作示例# 开放端口sudosystemctl startsshsudosystemctl start dnsmasq# 关闭端口确保 12345 无服务sudonetstat-tlnp|grep-E12345# 过滤端口防火墙拦截 8080sudoiptables-AINPUT-ptcp--dport8080-jDROPsudoiptables-AINPUT-pudp--dport8080-jDROP验证sudonmap-sS-p22,53,12345,8080 localhostsudonmap-sU-p22,53,12345,8080 localhost用 telnet 测试telnet 172.16.111.123 22连接成功看到 SSH 标语telnet 172.16.111.123 12345连接被拒绝telnet 172.16.111.123 8080连接超时。说明端口状态模拟成功。四、连通性测试在扫描主机、目标主机、网关上分别执行 pingping172.16.111.123ping172.16.111.1五、各扫描技术原理与测试结果所有扫描均使用自研 Python 脚本调用 Scapy 实现并用 tcpdump 抓包验证。1. TCP Connect 扫描原理调用操作系统的connect()完成完整三次握手。开放SYN → SYN-ACK → ACK连接建立后 RST 断开关闭SYN → RST-ACK过滤SYN → 无响应。测试sudotcpdump-ieth0-n-wtcp_connect_scan.pcapsudopython3 tcp_connect.py172.16.111.123-p22,12345,8080结果端口状态程序结果抓包分析是否符合原理开放开放SYN → SYN-ACK → ACK符合关闭关闭SYN → RST-ACK符合过滤过滤SYN → 无响应符合2. TCP Stealth ScanSYN 半开放扫描原理发送 SYN收到 SYN-ACK 后直接发 RST不完成三次握手。开放SYN → SYN-ACK → RST关闭SYN → RST-ACK过滤SYN → 无响应。测试sudotcpdump-ieth0-n-wtcp_stealth_scan.pcapsudopython3 tcp_stealth.py172.16.111.123-p22,12345,8080结果与 TCP Connect 类似但更隐蔽不会在应用层留下完整连接记录。3. TCP Xmas 扫描原理发送 FIN、URG、PSH 标志位置 1 的异常包。关闭返回 RST开放或过滤通常无响应无法区分。测试sudotcpdump-ieth0-n-wtcp_Xmas_scan.pcapsudopython3 tcp_Xmas.py172.16.111.123-p22,12345,8080结果端口状态程序结果抓包分析是否符合原理开放开放/过滤FIN-PSH-URG → 无响应符合关闭关闭FIN-PSH-URG → RST-ACK符合过滤开放/过滤FIN-PSH-URG → 无响应符合4. TCP FIN 扫描原理只设置 FIN 标志位。关闭返回 RST开放或过滤通常无响应。测试sudotcpdump-ieth0-n-wtcp_fin_scan.pcapsudopython3 tcp_fin.py172.16.111.123-p22,12345,8080结果与 Xmas 扫描类似无法区分开放与过滤。5. TCP NULL 扫描原理所有 TCP 标志位清零。关闭返回 RST-ACK开放或过滤通常无响应。测试sudotcpdump-ieth0-n-wtcp_null_scan.pcapsudopython3 tcp_null.py172.16.111.123-p22,12345,8080结果同样无法区分开放与过滤。6. UDP 扫描原理发送空 UDP 包。关闭返回 ICMP 端口不可达开放通常无响应除非应用层有响应过滤无响应。测试sudotcpdump-ieth0-n-wudp_scan.pcapsudopython3 udp_scan.py172.16.111.123-p22,53,12345,8080结果端口状态程序结果抓包分析是否符合原理开放开放/过滤UDP 包符合关闭关闭UDP → ICMP 端口不可达符合过滤开放/过滤UDP 包符合六、与 Nmap 对比使用 Nmap 对同一目标执行相同扫描sudonmap-sT-p22,80,12345,8080172.16.111.123sudonmap-sS-p22,12345,8080172.16.111.123sudonmap-sX-p22,12345,8080172.16.111.123sudonmap-sF-p22,12345,8080172.16.111.123sudonmap-sN-p22,12345,8080172.16.111.123sudonmap-sU-p22,53,12345,8080172.16.111.123Nmap 结果与自研扫描器基本一致22/tcp开放12345/tcp关闭8080/tcp过滤53/udp开放
RELATED

相关推荐

瑞芯微RK平台视频硬解排障指南-下|板端实测记录

瑞芯微RK平台视频硬解排障指南-下|板端实测记录

媒体(视频编解码)排障分三层:底层是MPP(VPU硬解硬编库),中层是GStreamer(管道/插件),上层是零拷贝(dmabuf)这种性能优化手段。本文按这三层把&quo…

📅 2026/10/24 2:15:47
国内SRM采购系统有哪些?制造研发企业选型时重点比较什么

国内SRM采购系统有哪些?制造研发企业选型时重点比较什么

制造研发企业的采购复杂度远高于商贸企业,面临着BOM多阶拆解、工程变更频繁、原材料价格波动及交期严苛等实际痛点。很多企业决策者在问:国内有哪些SRM?所谓的SRM系统排名究竟该怎么看?本文从业务实操视角,客观拆解主流…

📅 2026/10/24 2:15:47
CUDA C++ 高效入门第四章 -- CUDA 同步技术 101

CUDA C++ 高效入门第四章 -- CUDA 同步技术 101

CUDA C 高效入门第四章 -- CUDA 同步技术 1011 资料2 正文2.1 C 同步技术粗盘点2.2 CUDA 同步技术盘点3 总结1 资料 前面的第二第三章节,我们系统介绍了 CUDA 的线程组织和内存组织,本章我们用五篇文章系统介绍 CUDA 的同步技术。 在 CUDA C 高效入门第…

📅 2026/10/24 2:15:47
MORE NEWS

更多资讯

📰

基于PCA降维与BP神经网络的交通流量预测MATLAB项目实例

交通流量预测这几年在智能交通、城市大脑、信号灯优化这些场景里特别火,但实际做起来有个很现实的问题:采集到的特征维度实在太多了。不同车道的车流量、平均车速、时间占有率、天气、时段、上下游拥堵指数,十几个甚至几十个特征堆在一起&…

📰

金融科技Java初级岗笔试复盘:集合并发、SQL优化与Spring核心考点

上周A同学发来一套某金融科技公司初级Java开发岗的在线笔试,说自己答得稀碎,想让我帮忙复盘。我拿过来扫了一遍,发现这套题出得挺有水平:表面看全是常规八股,实际每一道都在往工程坑和金融系统最关心的稳定性和并发问题…

📰

金融科技初级Java笔试全复盘:题型考点与编程题实战拆解

最近在牛客上刷题,好几次碰到有人问“某金融科技公司初级Java笔试题”的通勤回忆帖。这类帖子往往回复寥寥,偶尔有人在下面贴一道选择题答案,没头没尾。我自己也经历过这种笔试,深知真正需要的不只是一份题目清单,而是…

📰

专科生AI论文工具实测:千笔与学术猹如何解决写作痛点

又到了论文季,我手机里被问得最多的一句话是:“有没有适合专科生用的AI论文工具?”问的人多了,我就把市面上叫得出名字的几个挨个试了一遍,其中对比最久的是千笔专业学术智能体和学术猹。这两款工具定位不一样&#xf…

📰

电力用户用电信息采集通信协议集合与测试工具实战指南

简介:面向电力行业技术人员与智能电网开发者的通信协议资料包,聚焦用电信息采集系统中376.1、376.2、376.3、645与698等主流规约的理解与验证。内容既包含协议文档与说明,也配套集中器下行本地接口调试、645标准测试、698解析等国网电表测试软…

📰

8个AI论文网站实测:是智商税还是论文写作加速器?

离答辩还有十几天的时候,我看到同宿舍三个人都在用不同的“AI论文网站”赶论文,最激进的那个直接输入题目生成整篇初稿,交到指导老师那边之后,被批注写了整整八页。这件事让我想认真写一篇工具测评:这8个AI论文网站到底…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬