首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用python - Scapy脚本以列表形式获取数据包的端口号

Scapy是一个强大的Python库,用于网络数据包的创建、发送、捕获和分析。使用Scapy脚本以列表形式获取数据包的端口号,可以通过以下步骤实现:

  1. 导入必要的模块和库:from scapy.all import *
  2. 创建一个空列表来存储端口号:port_list = []
  3. 定义一个回调函数来处理捕获的数据包,并将端口号添加到列表中:def packet_callback(packet): if packet.haslayer(TCP): src_port = packet[TCP].sport dst_port = packet[TCP].dport if src_port not in port_list: port_list.append(src_port) if dst_port not in port_list: port_list.append(dst_port)
  4. 使用sniff函数捕获数据包,并调用回调函数进行处理:sniff(prn=packet_callback, count=10)这里的count参数指定捕获的数据包数量。
  5. 打印端口号列表:print(port_list)

完整的代码示例:

代码语言:python
复制
from scapy.all import *

port_list = []

def packet_callback(packet):
    if packet.haslayer(TCP):
        src_port = packet[TCP].sport
        dst_port = packet[TCP].dport
        if src_port not in port_list:
            port_list.append(src_port)
        if dst_port not in port_list:
            port_list.append(dst_port)

sniff(prn=packet_callback, count=10)

print(port_list)

这个脚本使用Scapy库来捕获TCP数据包,并将源端口号和目标端口号添加到一个列表中。你可以根据实际需求修改代码,例如修改捕获的数据包数量、添加过滤条件等。

腾讯云相关产品和产品介绍链接地址:

请注意,以上链接仅供参考,具体产品选择应根据实际需求和情况进行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

端口扫描之开放端口扫描方式

当客户端发送一个带有 SYN 标识和端口号 TCP 数据包给服务器后,如果服务器端返回一个带 RST 标识数据包,则说明端口处于关闭状态 nmap-sT模式 ? #!...TCP 数据包仅仅只会包含端口号而不会有其他任何标识信息。...它结果只能说明端口是否被过滤。再次强调,ACK 扫描不能发现端口是否处于开启或关闭状态。 客户端会发送一个带有 ACK 标识和端口号数据包给服务器。...ACK 扫描类似,同样是客户端向服务器发送一个带有 ACK 标识和端口号 TCP 数据包,但是这种扫描能够用于发现目标服务器端口状态。...无连接协议则不会事先建立客户端和服务器之间通信信道,只要客户端到服务器存在可用信道,就会假设目标是可达然后向对方发送数据。 客户端会向服务器发送一个带有端口号 UDP 数据包

2.3K20

21.2 Python 使用Scapy实现端口探测

Scapy 是一款使用Python编写跨平台网络数据包操控工具,它能够处理和嗅探各种网络数据包。...使用Scapy可以通过Python脚本编写自定义网络协议和攻击工具,这使得网络安全测试变得更加高效和精确。...图片21.2.2 ICMP构建与发送首先我们先来构建并实现一个ICMP数据包,在之前文章中笔者已经通过C语言实现了数据包构建,当然使用C语言构建数据包是一件非常繁琐实现,通过运用Scapy则可以使数据包构建变得很容易...将上述跟踪过程自动化,就可以完成数据包跟踪,其Python代码如下所示。...,通过对数据包收发判断即可获取特定主机开放状态;from scapy.all import *import argparseimport loggingdef tcpScan(target,ports

53210

21.2 Python 使用Scapy实现端口探测

Scapy 是一款使用Python编写跨平台网络数据包操控工具,它能够处理和嗅探各种网络数据包。...使用Scapy可以通过Python脚本编写自定义网络协议和攻击工具,这使得网络安全测试变得更加高效和精确。...21.2.2 ICMP构建与发送 首先我们先来构建并实现一个ICMP数据包,在之前文章中笔者已经通过C语言实现了数据包构建,当然使用C语言构建数据包是一件非常繁琐实现,通过运用Scapy则可以使数据包构建变得很容易...将上述跟踪过程自动化,就可以完成数据包跟踪,其Python代码如下所示。...,一个扫描端口列表,通过对数据包收发判断即可获取特定主机开放状态; from scapy.all import * import argparse import logging def tcpScan

31310

python scapy用法之ARP主

python scapy用法之ARP主机扫描和ARP欺骗  目录: 1.scapy介绍 2.安装scapy 3.scapy常用 4.ARP主机扫描 5.ARP欺骗 一、scapy介绍 scapy是一个可用于网络嗅探非常强大第三方库...三、scapy常用 1.嗅探流量包 sniff函数进行嗅探流量,iface表示使用网卡接口,filter是过滤条件,count是嗅探包个数。结果显示嗅探到了3个ARP包。...四、ARP主机扫描 1.使用scapy写一个ARP主机扫描脚本  #局域网主机扫描器 使用ARP扫描 #主机扫描 from scapy.all import * import time wifi="...,可以测试ans[0],发现结果是元组形式 for s,r in ans: result.append([r[ARP].psrc,r[ARP].hwsrc]) #把目标的IP以及MAC地址加入到新列表...,可以测试ans[0],发现结果是元组形式 for s,r in ans: result.append([r[ARP].psrc,r[ARP].hwsrc]) #把目标的IP以及MAC地址加入到新列表

2.9K20

Scapy介绍(一)「建议收藏」

大家好,又见面了,我是你们朋友全栈君。 介绍 关于Scapy Scapy是一个Python程序,使用户能够发送,嗅探和剖析并伪造网络数据包。此功能允许构建可以探测,扫描或攻击网络工具。...Scapy主要做两件事:发送数据包和接收答案。您定义一组数据包,它发送它们,接收答案,匹配带有答案请求,并返回数据包对(请求,应答)列表和不匹配数据包列表。...快速包设计 其他工具坚持程序 – 你从shell运行范例。结果是描述数据包可怕语法。对于这些工具,采用解决方案使用工具作者想象场景形式更高但不太强大描述。...(1个隐式数据包) 合理默认值 Scapy尝试为所有数据包字段使用合理默认值。...学习 Scapy使用Python解释器作为命令板。

1.6K20

python无线网络安全入门案例【翻译】

随着 Scapy ⾯世,这是⼀个⽤python绝佳封包⼯具, 作者是Philippe Biondi ,跟其他嗅探⼯具 Kismet 和 Airodump-ng 不同,Scapy 可以个性化定制,...您可以使⽤Scapy访获取数据包,如下所⽰: root@bluelinux:/home/shreeraj/wifi# scapy Welcome to Scapy (1.0.4.1beta) >>>...查看分组内容,它是⼀个包含ot11分组信息信标帧。 Scapy提供了⼀种获取图形视图⽅法。...通过嗅探执⾏相应⼊侵检测 到目前为止,我们已经可以使用上⾯描述⽅法构建⼊侵检测系统,并可⽤来监视⽆线流量。 您可以使⽤Scapy嗅探此流量,并 在其上构建脚本。 该脚本可以帮助跟踪⼊侵检测。...ScapyPython中以交互式和脚本⽅式运作, 增强了其有效性,使其成为⽆线⽹络评估⼯具包中必不可少⼯具。 Scapy也是可扩展,允许您构建强⼤脚本 来执⾏⽹络监控。

1.6K70

Python Scapy(2.3.1)文

使用Python语法和Python解释器作为DSL语法和解释器有很多有优点:不必编写独立解释器,用户不需要在学其他语言,他们将受益与一个完整,简介,强大语言。...Scapy能允许用户描述数据包或者设置数据包在协议栈层面上。每一个协议字段都有默认值并且能重载。Scapy不会强迫用户使用特定方法或模板。...我们首先实例化一个IP类,然后我们再次实例化它并提供四个有意义目标IP地址(/30是子网掩码)。使用Python列表,我们发展了一个隐式数据包在一个显示数据报上。...敏感默认值 Scapy试图对所有的数据包使用敏感默认值,如果不重写的话: 1.IP源地址选择是根据目标地址和路由表。 2.校验和是计算过。...这就意味着你可以直接使用Python(分配变量,使用循环,定义函数等等)。 如果你没有学过Python,请查看其他教程先学习Python

1.1K10

信息收集——僵尸扫描

僵尸扫描介绍 往往鱼与熊掌不可得兼,僵尸扫描在隐藏踪迹同时也有着其极其苛刻使用条件。...本 其实nmap自带有僵尸扫描模块,但是我这里需要抓包给大家分析,所以自己写了个简单python脚本(请点击原文链接查看),用来发现僵尸机(zombie)和抓包分析,后面会直接演示如何用nmap进行僵尸机发现和利用...第一个函数用来发现僵尸机,利用了Scapy库构造数据包,原理就是上面所讲向要探测僵尸主机连续发送三个SYN/ACK包,通过判断IPID值来确定是否是个好僵尸。...第二个函数和第一个函数差不多,同样是利用Scapy库构造数据包,原理上面第二步有,就不再啰嗦了。下面我来演示一下操作。 三: 操作步骤 1.首先调用第一个函数判断xp是否是僵尸机 ? 2....因为利用zombie时中途会伪装IP,所以我在Wireshark中没有发现连续包,所以这里就不截数据包图了。第二个函数思路很清晰,希望懂python朋友好好看看。

84300

Python无状态SYN快速扫描

起因 freebuf中有一篇文章,讲述了基本扫描原理并给出了简易python代码,几种扫描方式中我发现SYN扫描准确率高返回信息明确,而且不会留下握手痕迹,但是速度有些慢,因此我们可以使用无状态扫描...scapy Scapy是一个python库,是一个强大操纵报文交互程序。它可以伪造或者解析多种协议报文,还具有发送、捕获、匹配请求和响应这些报文以及更多功能。...所以我们使用scapy编写扫描程序。 有状态扫描 #!...scapy和netaddr包,ip 和port 两个列表定义了要被扫描部分 netaddr包用于处理ip,由于scapysend发包函数可以传入一个IP段为目的ip,而且实践证明这样比一个for循环一个一个发快多...所以将字符串ip段"1.34.0.0/16"初始化一个IPNetwork类,并使用subnet函数分割为c段,返回一个列表,再将这些列表合并,就得到了由c段组成所有需要扫描ip地址。

2.5K70

数据包处理利器——Scapy基础知识

什么 是scapy Scapy是功能强大交互式数据包处理程序。它能够伪造或解码各种协议数据包,在线发送,捕获,匹配请求和响应等。...它在其他工具无法处理许多其他特定任务上也表现出色,例如发送无效帧,组合技术(VLAN跳变+ ARP缓存中毒,WEP加密通道上VOIP解码等等) 安装scapy 直接pip安装即可,我使用python3...pip3 install scapy scapy基本使用 输入scapy回车进入scapyshell 可以使用ls()来查看scapy支持协议 使用lsc()查看scapy支持函数 还可以使用...ls()获取协议包含参数 发送和接收数据包 send - 在第3层发送数据包Scapy创建第2层标头),不接收任何数据包。...sr 发送数据包并接收响应。 sr()返回两个列表,第一个列表包含响应,第二个列表包含未响应

4.3K10

Python黑客编程3网络数据监听和过滤

课程实验环境如下: • 操作系统:kali Linux 2.0 • 编程工具:Wing IDE • Python版本:2.7.9 • 涉及到主要python模块:pypcap,dpkt,scapy...,scapy-http 涉及到几个python网络抓包和分析模块,dpkt和scapy在kali linux 2.0 中默认已经被安装,如果你系统中没有需要手动安装一下,下面是软件包安装简单说明...1.4 使用SCAPY进行数据监听 Scapy是一个强大交互式数据包处理程序(使用python编写)。它能够伪造或者解码大量网络协议数据包,能够发送、捕捉、匹配请求和回复包等等。...Scapy可以单独使用,也可以在python中调用。 1.4.1 Scapy基本使用 了解Scapy基本使用和支持方法,首先我们从终端启动scapy,进入交互模式。 ?...lsc()列出scapy支持所有的命令。 ? 本篇文章使用只是scapy众多命令中一个,sniff。 conf:显示所有的配置信息。conf变量保存了scapy配置信息。 ?

4.6K30

检测是否含有挖矿脚本WiFi热点

在CoinHive官网注册登陆后,在其文档中发现了多种部署方式介绍,包括JS代码形式、人机验证形式、Wordpress插件形式等等,种类非常丰富。...使用Scapy编写恶意热点识别框架 总结一下,我们程序就像是一个对明文802.11数据帧分析器。按照这个思路,只需要添加不同识别规则就能扩展出对各种不同攻击行为检测。...为了添加扩展性,在此使用Scapy来编写一个简单框架。 1.使用PIP安装Scapy 注意由于scapy没有对http协议进行解析,所以引入了scapy_http扩展包。...``` sudo apt install python-pip pip install scapy pip install scapy_http ``` 2.获取热点列表...数据包 当匹配到告警规则后,输出热点名称、MAC地址及告警详情。

2.1K40

SeedLab——DNS Attack Lab

Other illustrate 1、DNS服务器现在在其DNS查询中随机化源端口号,这使得攻击变得更加困难。不幸是,许多DNS服务器仍然使用可预测端口号。...首先检查数据包中是否包含DNS层,并且查询域名是example.com。交换数据包源IP地址和目的IP地址。交换数据包端口号和目的端口号。创建欺骗响应DNS资源记录。...持续影响:通过DNS缓存投毒攻击,一次成功伪造响应可以在DNS服务器缓存中持续存在一段时间。这意味着每次用户机器发送DNS查询时,它都会从缓存中获取被伪造响应,而无需每次都发送欺骗数据包。...因此,速度是至关重要:我们发送数据包越多,成功率就越高。如果使用Scapy发送伪造DNS回复,速度相对较慢。可以使用C语言原始套接字,这样会比python快得多。...但在C语言中构建DNS数据包并不简单。所以使用一种混合方法,结合使用Scapy和C语言来进行攻击。

56120

Python灰帽编程 3.3 MAC洪水

Python灰帽编程 3.3 MAC洪水 传统交换机(我只对我目前使用交互机做过测试,按照常识只能这样表述)在数据转发过程中依靠对CAM表查询来确定正确转发接口,一旦在查询过程中无法找到相关目的...CAM表被这些伪造MAC地址占据,真实MA C地址条目却无法进入CAM表。那么任何一个经过交换机正常单播数据帧都会以广播帧形式来处理。交换机在此种情况下被降级为Hub。.../usr/bin/python from scapy.all import * i=5 while(i): print RandMAC() print RandIP() i=i-.../usr/bin/python from scapy.all import * i=5 while(i): print RandIP("192.168.1.*") i=i-1 运行结果如下.../usr/bin/python import sys from scapy.all import * import time iface="eth0" if len(sys.argv)>=2:

93370

Python Scapy ARP

参考手册:https://fossies.org/dox/scapy-2.3.3/ 当一台主机把以太网数据帧发送到位于同一个局域网上另一台主机时,是根据48bit以太网地址来确定目的接口。...设备驱动程序从不检查IP数据包目的IP地址。 地址解析为这两种不同地址形式提供映射:32bitIP地址和数据链路曾使用任何类型地址。...ARP功能是在32bitIP地址和采用不同网络技术硬件地址之间提供动态映射。 点对点链路不使用ARP。当设置这些链路时(一般在引导过程进行),必须告知内核链路每一端IP地址。.../usr/bin/python3.4 # -*- coding=utf-8 -*- import logging logging.getLogger("scapy.runtime").setLevel...,[1]未收到响应数据包 #print(type(result_raw[0])) # #https://fossies.org/dox/

83720

新手Python渗透工具入门

脚本获取信息如下: IP信息 子域名 备案 注册人 邮箱 地址 电话 DNS 具体操作如下: 我们要用到模块是requests python...二件套: 使用python编写一个arp断网攻击 2.介绍scapy模块 3.安装scanpy模块 4.编写arp攻击脚本 你们知道arp攻击原理吗?...(PS:我们只需要scapy一些参数就可以实现) scapy介绍: Scapy是一个Python程序,使用户能够发送,嗅探和剖析和伪造网络数据包。...此功能允许构建可以探测,扫描或攻击网络工具。 换句话说,Scapy是一个功能强大交互式数据包处理程序。它能够伪造或解码大量协议数据包,在线上发送,捕获,匹配请求和回复等等。...steup.py install 思路: 使用requests.headers()获取http头部信息 通过htp响应码来判断robots是否存在 通过http响应码判断存在目录

3K51

python绝技:运用python成为顶

所谓混杂模式,用最简单语言就是让网卡抓取任何经过它数据包,不管这个数据包是不是发给它或者是它发出,点击【http://en.wikipedia.org/wiki/Promiscuous_mode】...获取更多有关混杂模式资料。...利用电脑或手机在重启WiFi后,会从首选网络列表里一个个去尝试链接特性,可以抓包获取到,分析出电脑或手机首选网络列表,从而知道连接过哪些网络。 这章同样是建立在流量包分析上。...7. dpkt: 解析网络报文,如ftp,sctp,bpg,ipv6等 8. scapy:Scapy是一个可以让用户发送、侦听和解析并伪装网络报文Python程序。...14. pyinstaller, 打包成exe,给没有安装python用户使用。 体会 最终感受是黑客没有想像中那么神奇。黑客并不是技术达人,相反,黑客更多是利用现存工具。

1.3K10

Python 实现DNS查询放大攻击

此时我们使用scapy工具构建一个DNS请求数据包 sr1(IP(dst="8.8.8.8")/UDP()/DNS(rd=1,qd=DNSQR(qname="qq.com")),timeout=2) 查询指定网站...上图可以看出,我们所发送数据长度要小于接收到数据长度,流量差不多被放大了3倍左右,我们只需要将源地址伪造为被害机器,并使用海量DNS服务器作为僵尸主机发包,即可完成DDOS攻击。...多线程发包测试了,scapy构建数据包时由于DNS数据包比较特殊,构建是应该按照顺序 IP/UDP/DNS来构建,以下代码可以完成发包测试 import socket,os,sys from scapy.all...test.log里面一行一个存放所有的已知DNS列表,并通过check命令验证该DNS是否可用,并将可用DNS保存为pass.log main.py --mode=check -f dns.txt...当需要发起攻击时,只需要指定pass.log 文件,则自动使用该DNS列表进行批量查询。

1.7K31
领券