Don Reverso
05.07.2024, 21:02
ЯП: C#
Тип: .NET
Защита: Обфускатор
Сложность: 2/10 (субъективно)
Задача: получение всех логинов и паролей
Автор:@necrofox
Хотите сами решить - во вложениях лежит zip. Пароль: rev_time
Внимание!
Ни я, ни автор крэкми, ни в прямом, ни в переносном смыслах не призываем вас к употреблению, хранению или распространению наркотиков и всему, что с этим связано - это плохо, сами понимаете.
Так же этот файл содержит сомнительного содержания гифки. Не знаю, насколько они безопасны для эпилептиков, но я бы на их месте всё же не рисковал.
Пусть вас не смущает этот небольшой дисклеймер - файл называется narkocrackme.exe, ну и выглядит он, конечно же, соответствующе (будьте готовы к назойливому аудиосопровождению):
https://forum.antichat.xyz/attachments/29112607/1720189575204.png
Согласитесь, выглядит поинтереснее банального ввода серийника. Раз уж это .NET, попробуем открыть через .NET Reflector:
https://forum.antichat.xyz/attachments/29112607/1720190066101.png
Нашему пристальному взгляду сразу стала доступна формочка Form1и интересно выглядящий метод button1_Click. Как уже можно предположить, это та самая кнопка "Log in", и её метод проверяет введённые нами данные. Попробуем посмотреть код этого метода:
https://forum.antichat.xyz/attachments/29112607/1720195142123.png
Внимание сразу же притягивают гигантские строки, закодированные в base64 (внешние функции + набор символов + знак "=" на конце). Сам метод сначала бросается на метку TR_0047, глянем, что там:
https://forum.antichat.xyz/attachments/29112607/1720195328714.png
Как можно заметить, эти закодированные строки мелькают либо в MessageBox, либо в textBox1+textBox2, причём последние участвуют в if-выражении. Ничего не напоминает?
https://forum.antichat.xyz/attachments/29112607/1720195551162.png
Ладно, хватит лить воду, пора заняться декодом. Но надо учитывать, какая самая внешняя функция используется, поскольку почти везде мы имеем конструкции следующего вида:
this.textBox1.Text == Encoding.UTF8.GetString(Convert.FromBase64String(E ncoding.UTF8.GetString(Convert.FromBase64String("..."))))
Которые указывают, что декодить строку нам придётся дважды, но есть одно место:
this.textBox1.Text == Convert.ToBase64String(Encoding.UTF8.GetBytes(Enco ding.UTF8.GetString(Convert.FromBase64String(""))))
Которое сначала декодит, а потом обратно шифрует строку, т.е. никакого эффекта эти функции не возымеют, и нам можно просто копипастить то, что внутри. Итак, декодим строки, участвующие в textBox'ах:
Python:
from
base64
import
b64decode
non_decoded
=
"bVlzN2VyWSAtINC90LjRh9GC0L7QttC10YHRgtCy0L4=::0YEt 0YMt0Lot0LA="
creds
=
[
"VG1WamNtOVhiMnht::UUcxMlpHNWxZM0p2"
,
"U0hkcFpGOVk=::UUdoM2FXUmZlQT09"
,
"YlZsek4yVnlXUT09::UUcxNWN6ZGxjbms9"
]
print
(
"DECODED CREDITS:\n"
)
print
(
"login: "
+
"\npassword: "
.
join
(
non_decoded
.
split
(
"::"
)
)
)
print
(
)
for
el
in
creds
:
decr
=
el
.
split
(
"::"
)
decr
=
[
b64decode
(
b64decode
(
i
.
encode
(
"utf-8"
)
)
)
.
decode
(
"utf-8"
)
for
i
in
decr
]
print
(
"login: "
+
"\npassword: "
.
join
(
decr
)
)
print
(
)
Запускаем:
https://forum.antichat.xyz/attachments/29112607/1720197160293.png
Попробуем эти креды запустить в формочку:
https://forum.antichat.xyz/attachments/29112607/1720197592130.png
https://forum.antichat.xyz/attachments/29112607/1720197633493.png
https://forum.antichat.xyz/attachments/29112607/1720197670129.png
https://forum.antichat.xyz/attachments/29112607/1720197770661.png
Как можно догадаться, все строки из MessageBoxотносились к этим обращениям на разные "аккаунты". Я уже упоминал - автор сего чуда юмором явно не обделён, поэтому захреначил аккаунты под несколько довольно известных (в узких кругах) персон. Правда mYs7rYжалко...
Это всё, что нам требовалось - вытащить все логины/пароли. Так что этот несложный крэкми можно назвать решённым!
Надеюсь, этот небольшой райтап вам помог. Удачного ревёрса!
made 4 @rev_with_da_boys
Тип: .NET
Защита: Обфускатор
Сложность: 2/10 (субъективно)
Задача: получение всех логинов и паролей
Автор:@necrofox
Хотите сами решить - во вложениях лежит zip. Пароль: rev_time
Внимание!
Ни я, ни автор крэкми, ни в прямом, ни в переносном смыслах не призываем вас к употреблению, хранению или распространению наркотиков и всему, что с этим связано - это плохо, сами понимаете.
Так же этот файл содержит сомнительного содержания гифки. Не знаю, насколько они безопасны для эпилептиков, но я бы на их месте всё же не рисковал.
Пусть вас не смущает этот небольшой дисклеймер - файл называется narkocrackme.exe, ну и выглядит он, конечно же, соответствующе (будьте готовы к назойливому аудиосопровождению):
https://forum.antichat.xyz/attachments/29112607/1720189575204.png
Согласитесь, выглядит поинтереснее банального ввода серийника. Раз уж это .NET, попробуем открыть через .NET Reflector:
https://forum.antichat.xyz/attachments/29112607/1720190066101.png
Нашему пристальному взгляду сразу стала доступна формочка Form1и интересно выглядящий метод button1_Click. Как уже можно предположить, это та самая кнопка "Log in", и её метод проверяет введённые нами данные. Попробуем посмотреть код этого метода:
https://forum.antichat.xyz/attachments/29112607/1720195142123.png
Внимание сразу же притягивают гигантские строки, закодированные в base64 (внешние функции + набор символов + знак "=" на конце). Сам метод сначала бросается на метку TR_0047, глянем, что там:
https://forum.antichat.xyz/attachments/29112607/1720195328714.png
Как можно заметить, эти закодированные строки мелькают либо в MessageBox, либо в textBox1+textBox2, причём последние участвуют в if-выражении. Ничего не напоминает?
https://forum.antichat.xyz/attachments/29112607/1720195551162.png
Ладно, хватит лить воду, пора заняться декодом. Но надо учитывать, какая самая внешняя функция используется, поскольку почти везде мы имеем конструкции следующего вида:
this.textBox1.Text == Encoding.UTF8.GetString(Convert.FromBase64String(E ncoding.UTF8.GetString(Convert.FromBase64String("..."))))
Которые указывают, что декодить строку нам придётся дважды, но есть одно место:
this.textBox1.Text == Convert.ToBase64String(Encoding.UTF8.GetBytes(Enco ding.UTF8.GetString(Convert.FromBase64String(""))))
Которое сначала декодит, а потом обратно шифрует строку, т.е. никакого эффекта эти функции не возымеют, и нам можно просто копипастить то, что внутри. Итак, декодим строки, участвующие в textBox'ах:
Python:
from
base64
import
b64decode
non_decoded
=
"bVlzN2VyWSAtINC90LjRh9GC0L7QttC10YHRgtCy0L4=::0YEt 0YMt0Lot0LA="
creds
=
[
"VG1WamNtOVhiMnht::UUcxMlpHNWxZM0p2"
,
"U0hkcFpGOVk=::UUdoM2FXUmZlQT09"
,
"YlZsek4yVnlXUT09::UUcxNWN6ZGxjbms9"
]
(
"DECODED CREDITS:\n"
)
(
"login: "
+
"\npassword: "
.
join
(
non_decoded
.
split
(
"::"
)
)
)
(
)
for
el
in
creds
:
decr
=
el
.
split
(
"::"
)
decr
=
[
b64decode
(
b64decode
(
i
.
encode
(
"utf-8"
)
)
)
.
decode
(
"utf-8"
)
for
i
in
decr
]
(
"login: "
+
"\npassword: "
.
join
(
decr
)
)
(
)
Запускаем:
https://forum.antichat.xyz/attachments/29112607/1720197160293.png
Попробуем эти креды запустить в формочку:
https://forum.antichat.xyz/attachments/29112607/1720197592130.png
https://forum.antichat.xyz/attachments/29112607/1720197633493.png
https://forum.antichat.xyz/attachments/29112607/1720197670129.png
https://forum.antichat.xyz/attachments/29112607/1720197770661.png
Как можно догадаться, все строки из MessageBoxотносились к этим обращениям на разные "аккаунты". Я уже упоминал - автор сего чуда юмором явно не обделён, поэтому захреначил аккаунты под несколько довольно известных (в узких кругах) персон. Правда mYs7rYжалко...
Это всё, что нам требовалось - вытащить все логины/пароли. Так что этот несложный крэкми можно назвать решённым!
Надеюсь, этот небольшой райтап вам помог. Удачного ревёрса!
made 4 @rev_with_da_boys