使用python中scapy 实施TCP 全开扫描
2021/11/24 20:11:44
本文主要是介绍使用python中scapy 实施TCP 全开扫描,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import sys from scapy.all import * // 引入sys 和scapy两个模块 if len(sys.argv)!=3: // 输入的如果不是三个元素会报错,注意sys.argv函数返回的是是个列表 print("synty error") sys.exit(1) dst_ip=sys.argv[1] //目标ip地址 dst_port=int(sys.argv[2])//目标端口 src_port=RandShort() //自动获取一个源端口 resp=sr1(IP(dst=dst_ip)/TCP(sport=src_port,dport=dst_port,flags="S")) //构建TCP数据包,“S”是全开扫描。 if(str(type(resp)) == "<class 'NoneType'>"): //这是返回数据包无类型情况 print("The port is %s Closed"%(dst_port)) elif(resp.haslayer(TCP)): //返回数据包如果是TCP包 if(resp.getlayer(TCP).flags == 0x12): //flags==0x12代表返回的是SYN+ACK数据包 send_rst = sr1(IP(dst=dst_ip)/TCP(sport=src_port,dport=dst_port,flags="AR")) //发送ACK+RESET数据包建立连接 print("The port is %s Open"%dst_port) elif(resp.getlayer(TCP).flags == 0x14): //flags==0x12代表返回的是reset数据包,对方拒绝建立连接 print("The port is %s Open"%dst_port)
这篇关于使用python中scapy 实施TCP 全开扫描的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程
- 2024-11-14Python编程基础入门