TGViewer
RUH8 RUH8 @ruheight · 21.7K subscribers
Post #1862 26.7K
Один из приколов в XZ-бэкдоре я пропустил. Бэкдором можно управлять, послав ему зашифрованную и подписанную цифровой подписью команду. И она зашита в модуль N RSA-ключа (они передаются как ASN.1 или PEM). Сперва я подумал, что ключ используется просто как контейнер, но на самом деле можно сгенерировать работающую ключевую пару с вшитым значением. Есть и статья Ленстры о том, как готовить такие ключи ("Generating RSA Moduli with a Predetermined Portion"), и работающий код от Райан Кастеллучи. Небольшой пример, как вшить константу:
from sympy import randprime, nextprime, isprime
import os, math

x = b"\x80\x00\x00\x00\x00\x00\x00\x01"
j = 0
while True:
j += 1
p = randprime(0, (1 << 256))
l = int.from_bytes(x + os.urandom(56), "big")
q = l // p # nextprime(l // p);
if isprime(q):
break
n = q * p;
print(str(l.bit_length()) + ":" + hex(l >> 256) + "...")
print(str(n.bit_length()) + ":" + hex(n >> 256) + "...")
print(str(p.bit_length()) + ":" + hex(p))
print(str(q.bit_length()) + ":" + hex(q))
# check key, textbook RSA
f = (p - 1) * (q - 1)
e = 65537
d = pow(e, -1, f)
m = 0xDEADBEEFCAFEBABE
c = pow(m, e, n)
t = pow(c, d, n)

#находки
  • 👍 132
  • 🔥 48
  • 🤔 27
  • 🥱 5
More from @ruheight
  1. Aug 29, 2026Техническое. Если кому-то не ответил, сразу чего-то не сделал, то я иногда сильно занят в…
  2. Aug 24, 2026Вышел tmp.out #5
  3. Aug 22, 2026На лошадярне нешуточная ажитация. Не понимаю. Я вот целиком и полностью поддерживаю правос…
  4. Aug 18, 2026А не пошел бы ты, Михаил Альбертович, нахуй? А можно и для гендерного равноправия - в пизд…
  5. Jul 18, 2026По-моему, самое время распустить "IT Армию" и "Киберкорпус". Хорошо было бы, если безобраз…
  6. Jul 9, 2026Каждый раз, когда я наблюдаю за идиотами в их естественной среде обитания, у меня возникае…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →