python制作基于TCP协议的SYN端口扫描工具

小菜前面两篇文章给大家介绍了一下主机存活扫描工具,这一讲该给大家讲讲扫指定主机端口是否开放的工具咯!当然啦,实现起来和之前一样的简单是多行代码完事儿呢(此处应该有掌声)。大家赶紧夸一下小菜吧~~先给大家看一下运行结果吧!(如图1)。

图1

0x01 SYN扫描原理

  1. tcp建立需要经过三次握手。
  2. 我们构建一个syn数据包(第一个数据包)发给目标机器。
  3. 目标机器返回一个syn+ack数据包(第二个数据包)说明目的主机的端口是开放的,反之则没有开放。

这里说的syn、ack 这些说的是tcp数据包中的标志。

0x02 工欲善其事必先利其器(当然啦,肯定要准备工具呢)

  1. python环境(这个就不用多说啦)。
  2. scapy(这次还用它,安装命令:pip install scapy),这个库封装了好多复杂的东西,咱们直接用就行。
  3. 还是提醒一句windows上用的话记得装上Npcap。

0x03 编写代码逻辑

这次还是给大家截图,显示的格式看起来舒服。如图2

图2

怎样使用,图2里面的代码 都注释好啦!大家可以抄过来用啦。

0x04 运行

运行结果如图1所示。图1中箭头1所指信息,大家不要的话可以去掉。图1中箭头2所指就是扫描出来的开放端口信息了呢。大家赶紧试试呢!

发表评论
留言与评论(共有 0 条评论)
   
验证码:

相关文章

推荐文章

'); })();