Показать сообщение отдельно

  #1  
Старый 09.07.2024, 15:42
Don Reverso
Новичок
Регистрация: 17.05.2025
Сообщений: 0
С нами: 524585

Репутация: 0
По умолчанию

  • Название: Независимый код
  • Категория: reverse
  • Платформа: antichat
Вместо какого-либо бинарника или dllнас в архиве ждёт один-единственный myflag.txt. Почитаем, что там:



Судя по всему, наш текстовый файл - дизассемблированный IL-код (ldstr, mscorlib, stloc.0). Сразу в глаза бросаются строки "Введите флаг" и "Успех, это он!". Так что искомая нами информация располагается где-то здесь.

Кроме этих строк у нас мелькают "qBFecRe#K2yff345" и "ILc0dE_t@sK23###" - казалось бы, ничего не значащие строки, но эти сомнения развеются после того, как мы увидим EncryptStringToBytes_Aes. Все строки загружаются в стек через ldstr, после через stloc.n они выгружаются и сохраняются в локальную переменную n, а ldloc.n - выгружает её обратно в стек. И обе эти строки в конечном итоге попадут в качестве аргументов EncryptStringToBytes_Aes: string(наш ввод), затем "qBFecRe#K2yff345" (key) и "ILc0dE_t@sK23###" (IV).



После же полученный набор байтов сравнивается с targetBytes, и, в зависимости от результата проверки, мы получаем соответствующий ответ. Поэтому наша задача - расшифровать targetBytes, чтобы получить флаг.

Воспользуемся замечательной тулзой - Cyberchef:



Получили флаг! Честно говоря, тут было больше крипты, чем ревёрса. Тем не менее, таск решён!

Надеюсь, этот небольшой райтап поможет вам в нашей нелёгкой стезе.

[S]Удачного ревёрса![/S] Удачной крипты???

made 4@rev_with_da_boys
 
Ответить с цитированием