Сейчас на форуме: -Sanchez- (+8 невидимых)

 eXeL@B —› Основной форум —› Взлом .NET (part 2)
. 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 15 . 16 . >>
Посл.ответ Сообщение


Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 12 сентября 2017 12:06
· Личное сообщение · #1

Со времени создания топика много обсудили, во много м разобрались и много осталось за кадром. Решил подшить выкладываемый софт и линки

Инструменты:

dnSpy - бодрый декомпилятор и отладчик тут беты

Gray Wolf - DE-ObfuScatE / Edit IL(Live) / Add payloads / Edit attributes(public/privet) / Copy strong names signing on EXE/DLL
ReSharper 6.0 Build 2093 Pre-Release - Очень навороченый декомпилер, побробности --> ТУТ <--.
Рег-данные:
Code:
  1. User Name: ReSharper EAP User
  2. License Key: 0-A60kqsqDMPkvPrLC3bz1/jmns4/DAUV6
  3. which is valid until 31 March 2010

Reflector 8.3.3.115 - платный декомпилятор .NET 8.3.0.95 + (дополнение к нему)
Седьмая версия рефлектора - думаю все знают
Сборка Add-in'ов для Reflector - есть много полезных вещей
.Net ID 1.0.0.3 - определение защиты
DNiD by Rue - сигнатурный анализатор
Dotnet IL Editor (DILE)- Opensource дизассемблер и дебаггер
Xenocode Fox Code Analyzer- профайлер и дизассемблер
Reactor Decryptor 1.7 - что то декриптит, но что не понятно(с) zeppe1in
Simple Assembly Explor (SAE) - Assembler, Disassembler, Deobfuscator, IL editor and more...
DotNet Dumper 1.0 - Дампер .net'овских приложений. Подробное описание
Kurapica dotNET Tracer 1.1 - трейсер от известного автора инструментов для .net
ILSpy 1.0.0.481 - Opensource комбайн, на подобие SAE. Подробности тут
dotTrace Performance 4.0.665.4 - Неплохой трейсер для .Net приложений. Умеет делать трейсы не смешивая потоки как KDT. Умеет сравнивать трейсы двух запусков программы
Рег-данные:
Code:
  1. Name: exelab
  2. Serial: OLgDSHG0hJghkLdXYJh1IjM3ytMrqKcn

Universal Fixer 1.0 - fix dumps after dumping them whit Dotnet Dumper or other similiar tools and will also fix nasty things: multiple assembly/module definitions, wrong extends, etc.
iMPROVE .NET Deobfuscator - деобфускатор


ConfuserDumper
ConfuserDelegateKiller
CodeCrackerTools: ConfuserMethodsDecryptor, ConfuserDelegateKiller, ConfuserStringDecryptor, MegaDumper, etc.

Документация:
--> Microsoft <--
--> Metadata and File Format <--
--> CIL(опкоды с полным пояснениями) <--

Статьи с хабры:
Защита .NET приложений - Субъективная теоретическая муть с хабры, выдаваемая за обзор обфускаторов(только для фанатов)
Как обмануть NET.Reflector - вот это уже годная статья, в которой рассматривается ручная обфускация в стихах и картинках
Взлом программ для чайников - ну не знаю...прописные истины, но приятно, что все это есть на русском языке и нормально оформлено
Реверс-инжиниринг обфусцированной сборки .NET - один только заголовок чего стоит. По сути статья информативная
Инъекции MSIL кода в стороннюю сборку при помощи Mono.Cecil. Реализация принципов АОП в NET
Избавление .NET программы от регистрации на примере BEM
Снимаем дамп объектов с памяти .Net приложения

Другое:
.NET Reflector v7.0.0.198 (C# Source by wangshy)
String decryption with de4dot

Прошлый топик https://exelab.ru/f/action=vthread&forum=1&topic=16650&page=-1

-

Last edit: 2012-02-17, Links fixed. Jupiter

| Сообщение посчитали полезным: prorab777, ViruSZ7

Ранг: 57.0 (постоянный), 10thx
Активность: 0.050.08
Статус: Участник

Создано: 15 сентября 2017 01:02
· Личное сообщение · #2

столкнулся с dotfuscator, то ли новой то ли кастомной версии. de4dot последний билд его не берет
с декриптом строк я разобрался - изменил подсчет magic number и сам метод декрипта строк.
но мусорный код в виде циклов и кейсов остается и я не могу найти место в de4dot где это обрабатывается, чтобы посмотреть что не так.
кто-нибудь сталкивался уже с этим?



Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 16 сентября 2017 00:21
· Личное сообщение · #3

zds пишет:
de4dot последний билд его не берет


так он 100 лет в обед не обновлялся же....
надо учить код утилитки и пилить свою логику.

| Сообщение посчитали полезным: sefkrd

Ранг: 10.0 (новичок), 4thx
Активность: 0.020
Статус: Участник

Создано: 16 сентября 2017 07:46
· Личное сообщение · #4

zds
а сам файл можно залить?




Ранг: 337.6 (мудрец), 224thx
Активность: 0.210.1
Статус: Участник
born to be evil

Создано: 16 сентября 2017 12:04
· Личное сообщение · #5

zds
--> Extending-de4dot <--

-----
От многой мудрости много скорби, и умножающий знание умножает печаль




Ранг: 57.0 (постоянный), 10thx
Активность: 0.050.08
Статус: Участник

Создано: 18 сентября 2017 00:52 · Поправил: zds
· Личное сообщение · #6

igorcauret
--> Link <--
здесь таргет и профикшенный для декрипта строк de4dot

ajax
у меня проблем с изменением de4dot не было. вопрос был в том где de4dot обрабатывал мусорный код раньше, чтобы посмотреть почему не работает сейчас. но походу такого функционала и раньше не было для dotfuscator. был только декрипт строк.
может если время будет, то запилю с нуля

| Сообщение посчитали полезным: igorcauret


Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 24 сентября 2017 11:46
· Личное сообщение · #7

Смотрю в шапке нет даже документации на С# (CLI)
--> Microsoft <--
--> Metadata and File Format <--
--> CIL(опкоды с полным пояснениями) <--

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.


| Сообщение посчитали полезным: Medsft, denis765600, ARCHANGEL

Ранг: 330.4 (мудрец), 334thx
Активность: 0.160.17
Статус: Участник
ILSpector Team

Создано: 25 сентября 2017 11:37 · Поправил: Medsft
· Личное сообщение · #8

ClockMan пишет:
Смотрю в шапке нет даже документации на С#
стопудово поддерживаю шапка никудышная, ТС слился, больно смотреть.
Ну все с Archer теперь попрёт)

| Сообщение посчитали полезным: ClockMan

Ранг: 5.8 (гость), 4thx
Активность: 0.010
Статус: Участник

Создано: 25 сентября 2017 17:49
· Личное сообщение · #9

zds ссылка на меге мертвая, перезалейте пожалуйста



Ранг: 1.2 (гость), 1thx
Активность: 0.010
Статус: Участник

Создано: 27 сентября 2017 15:52
· Личное сообщение · #10

Раз уж пришлось собирать de4dot из последних исходников с гитхаба, то просто оставлю тут, может кому пригодится: http://rgho.st/private/6xZnLfRB4/669b038a0476b1a7fd92bd1258b707f7




Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 27 сентября 2017 16:13 · Поправил: 4kusNick
· Личное сообщение · #11

hoyux
Зачем?

https://ci.appveyor.com/project/0xd4d/de4dot/build/artifacts



-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.


| Сообщение посчитали полезным: denis765600

Ранг: 1.2 (гость), 1thx
Активность: 0.010
Статус: Участник

Создано: 27 сентября 2017 16:19 · Поправил: hoyux
· Личное сообщение · #12

4kusNick пишет:
Зачем?

Да кто же знал что где-то такое есть

hoyux пишет:
Дык на гихабе же ссылка есть в самом начале описания )

Еслиб я читал... Скачал и закрыл




Ранг: 62.3 (постоянный), 51thx
Активность: 0.040.01
Статус: Участник

Создано: 27 сентября 2017 22:56
· Личное сообщение · #13

hoyux
Дык на гихабе же ссылка есть в самом начале описания )




Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 04 октября 2017 12:19 · Поправил: 4kusNick
· Личное сообщение · #14

Чего-то сдох AssemblyComparer который я ранее пользовал, нашел другой удобный тул для сравнения дотнет сборок (для моно тоже канает), ранее на форуме не упоминался: BitDiffer



Он давно не обновлялся, но в моем случае справился с задачей, может еще кому пригодится.

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.


| Сообщение посчитали полезным: Jaa, Flint, JohnyDoe, -=AkaBOSS=-

Ранг: 81.6 (постоянный), 102thx
Активность: 0.060.02
Статус: Участник

Создано: 09 октября 2017 14:44
· Личное сообщение · #15

--> Первая бета dnSpy 4 <--

| Сообщение посчитали полезным: DICI BF, sefkrd, v00doo, Haoose-GP

Ранг: 10.3 (новичок)
Активность: 0.020
Статус: Участник

Создано: 23 октября 2017 22:16
· Личное сообщение · #16

Не знает никто что может помочь с анпаком? http://bit.ly/2zyR7DA
Пробовал de4dot, de4dot fixed by ivancitooz - не берут.
Последний вроде спецом под Confuser / Crypto Obfuscator пилился



Ранг: 36.1 (посетитель), 11thx
Активность: 0.020
Статус: Участник

Создано: 25 октября 2017 03:13 · Поправил: Jonny
· Личное сообщение · #17

orislip пишет:
Не знает никто что может помочь с анпаком? http://bit.ly/2zyR7DA


Если ничего не помогает, попробуй вручную:
1. Открыть S..S.. .exe в DnSpy
2. перейти в <Module>.cctor через выпадающее меню ПКМ
3. в конце конструктора расположились 3 вызова каких-то функций. Ставим останов на самом первом и запускаем программу на выполнение.
4. после всплыва на точке останова дампим программу. Загружаем сдампленное - тела функций на месте.
5. Причесываем программу в de4dot (я использовал сборку 2016 года) с командной строкой -p cr -f SS.exe
6. В причесанной программе видим что константы обфусцированы. У меня вызовы идут к Class14, Class15 ( 0x02000012) , к методам вида
Code:
  1. internal static int smethod_0(int int_1)
  2.          {
  3.                  return BitConverter.ToInt32(Class14.byte_0, int_1);
  4.          }


например в стат конструкторе ZipFile
Code:
  1. static ZipFile()
  2. {
  3.          // Note: this type is marked as 'beforefieldinit'.
  4.          ZipFile.encoding_1 = Encoding.GetEncoding(Class15.smethod_0(62759));
  5.          ZipFile.int_2 = Class14.smethod_0(44681);
  6. }


От этой обфускации можно избавиться и после декомпиляции в проект , написав консольную программу замены по Regexp, проходящей по полученный cs Файлам и заменяющий вызовы. (естественно нужно будет вычислить значение буфера Class14.byte_0);
Потребуется еще разобраться с зашифрованными ресурсами. Как там дело обстоит я не смотрел.

P.S. Видимо, программа SS.exe защищена с помощью CryptoObfuscator а сверху еще накрыт ConfuserEx ( опция - шифровка кодовой секции). То есть более осмысленные действия - это позволить защите конфузера расшифровать кодовую секцию , сдампить модуль и натравить потом уже распаковщик CryptoObfuscator.

| Сообщение посчитали полезным: parfetka, 4kusNick, orislip

Ранг: 262.5 (наставник), 337thx
Активность: 0.340.25
Статус: Участник

Создано: 26 октября 2017 20:25
· Личное сообщение · #18

Выложите пожалуйста Sn.exe (Strong Name Tool) из .NET SDK
Спасибо!



Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 26 октября 2017 20:59
· Личное сообщение · #19

https://www.sendspace.com/file/s3vuw5

| Сообщение посчитали полезным: TryAga1n

Ранг: 315.1 (мудрец), 631thx
Активность: 0.30.33
Статус: Модератор
CrackLab

Создано: 27 октября 2017 15:42
· Личное сообщение · #20

ребята, есть ли в природе монитор/логгер вызванных методов? по типу API Monitor ( http://www.rohitab.com/apimonitor )



Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 27 октября 2017 16:50
· Личное сообщение · #21

Возможно дот нет трейсер? http://prntscr.com/h2r5k6
такого крутого как апимонитор (но для дотнета) не знаю




Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 27 октября 2017 18:57 · Поправил: 4kusNick
· Личное сообщение · #22

Есть ещё dotTracer



-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.




Ранг: 315.1 (мудрец), 631thx
Активность: 0.30.33
Статус: Модератор
CrackLab

Создано: 27 октября 2017 19:24
· Личное сообщение · #23

Да, это я все видел, но это не то что требуется. Хотелось бы видеть значения параметров до/после выполнения метода.
Кстати, пока тул искал (которого паходу нет) наткнулся на https://github.com/Michidu/ILUnpacker



Ранг: 52.6 (постоянный)
Активность: 0.020
Статус: Участник

Создано: 28 октября 2017 21:30
· Личное сообщение · #24

Привет, подскажите пожалуйста как обновить (рекомпилировать) скрытые методы созданные компилятором (это опция в dnSpy)
В моём случае выходит, что эти методы получают управление, а не те что я изменил ))
Например - есть метод по нажатию на кнопку, я его меняю под свои цели )), а исполняется в итоге параллельный метод (с таким же кодом) созданный компилятором - программа dnSpy это видит, но менять там ничего не получается...
Я так понимаю должен быть некий рекомпилятор, для синхронизации этих двух методов..



Ранг: 18.3 (новичок), 6thx
Активность: 0.030.02
Статус: Участник

Создано: 29 октября 2017 01:16 · Поправил: Lambda
· Личное сообщение · #25

Всем привет! Нужно посмотреть код утилиты.
ProtectionID определил: [.net scan core] ConfuserEx v0.5.0 detected!
Решил сдампить.
ConfuserDumper вылетает с ошибкой "Требуется неотрицательное число. Имя параметра: count". Видимо он работает только с ConfuserEx 1.9
Решил снять дамп с помощью OllyDbg. Искал регионы памяти со строкой "koi". Но ни один из найденых регионов не содержит "MZ" сигнатуру в начале.
Подскажите пожалуйста, что я делаю не так и какие утилиты мне необходимо использовать.
--> https://mega.nz/#!1NEUAY4B!Epx1WIpFiCtXk7UnPY2Gsft_FEP3dHyMX9cg15hqcus <--
--------------
Добавлено:
--------------
Удалось распаковать с помощью UnConfuserEx.
На этом этапе я смог смотреть расшифрованный код методов с помощью ILSpector и плагина от Medsft.
Потом я скормил программу утилитам ConfuserExCallFixer, ConfuserExSwitchKiller, ConfuserExDupPopPatcher.
Утилита ConfuserExStringDecryptor вылетела с ошибкой.
Все ОК. Программа работает.
На этой стадии получился такой файл:
--> https://mega.nz/#!1M1zWBQY!fWON8RcNiqIx_5OqsrRt4SuVoETEb5GRIuOCpOkEIJ8 <--
Потом обработал файл с помощью de4dot-v3.1.41592
Получился в результате файл, но уже не запускается:
--> https://mega.nz/#!RY0WmYKQ!opdmSgAjv2VSzK_BH9Wb6hfWU6TuSprVtbqHV7uKplM <--
В рефлекторе и dnspy могу смотреть код. Но не могу найти код, который необходимо. Видимо, что-то пошло не так.
Также строки не расшифрованы. Подскажите пожалуйста, в какую сторону копать?




Ранг: 337.6 (мудрец), 224thx
Активность: 0.210.1
Статус: Участник
born to be evil

Создано: 29 октября 2017 13:32
· Личное сообщение · #26

вы еще 2 CRLF между строками ставьте

-----
От многой мудрости много скорби, и умножающий знание умножает печаль




Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 29 октября 2017 17:22
· Личное сообщение · #27

Lambda пишет:
Также строки не расшифрованы. Подскажите пожалуйста, в какую сторону копать?


видимо потому, что

Lambda пишет:
Утилита ConfuserExStringDecryptor вылетела с ошибкой.




Ранг: 18.3 (новичок), 6thx
Активность: 0.030.02
Статус: Участник

Создано: 29 октября 2017 21:07
· Личное сообщение · #28

sendersu пишет:
видимо потому, что


Все верно. Это очевидно.

P.S. Всем спасибо. Нашел в интернете другую ConfuserExStringDecryptor и строки дешифровал. До изначального вида программу не привел. Но и этого результата хватило для решения задачи.



Ранг: 8.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 05 ноября 2017 09:42
· Личное сообщение · #29

plz help me
i need this file's unpacked
https://www.sendspace.com/filegroup/1Kcqe3X1gxzgGqRCz6zDgQ
plz
От модератора: 1) what you have done yourself? 2) you used wrong topic, warning #1



Ранг: 81.6 (постоянный), 102thx
Активность: 0.060.02
Статус: Участник

Создано: 08 ноября 2017 23:44
· Личное сообщение · #30

--> Зарелизили <-- dnSpy 4

| Сообщение посчитали полезным: _MBK_, sendersu, B0u3z1z1, DICI BF, force666
. 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 15 . 16 . >>
 eXeL@B —› Основной форум —› Взлом .NET (part 2)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати