eXeLab
eXeL@B DVD 2017 !

Видеокурс программиста и крэкера 5D 2O17
(актуальность: декабрь 2O17)
Свежие инструменты, новые видеоуроки!

  • 400+ видеоуроков
  • 800 инструментов
  • 100+ свежих книг и статей

УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: alexcoder1, Boostyq, AquaFred, v00doo (+4 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Основной форум —› Опять .net (part 2)
. 1 . 2 . 3 . >>
Посл.ответ Сообщение
Archer


Ранг: 1915.6 (!!!!)
Статус: Модератор
retired

Создано: 12 сентября 2017 12:06 New!
· Личное сообщение · #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/index.php?action=vthread&forum=1&topic=16650&page=-1

-

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

Ранг: 34.8 (посетитель)
Статус: Участник

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

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

Ранг: 479.0 (мудрец)
Статус: Модератор

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

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


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

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

igorcauret

Ранг: 3.2 (гость)
Статус: Участник

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

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


Ранг: 297.7 (наставник)
Статус: Участник
born to be evil

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

Ранг: 34.8 (посетитель)
Статус: Участник

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

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

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

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

ClockMan


Ранг: 471.8 (мудрец)
Статус: Участник
оптимист

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

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

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

Medsft

Ранг: 260.2 (наставник)
Статус: Участник

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

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

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

denis765600

Ранг: 5.8 (гость)
Статус: Участник

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

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

Ранг: 1.2 (гость)
Статус: Участник

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

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


Ранг: 714.1 (! !)
Статус: Участник
bytecode!

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

hoyux
Зачем?

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

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

hoyux

Ранг: 1.2 (гость)
Статус: Участник

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

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

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

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

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


Ранг: 54.6 (постоянный)
Статус: Участник

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

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


Ранг: 714.1 (! !)
Статус: Участник
bytecode!

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

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



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

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

Dart Raiden

Ранг: 62.8 (постоянный)
Статус: Участник

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

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

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

orislip

Ранг: 9.1 (гость)
Статус: Участник

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

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

Ранг: 33.8 (посетитель)
Статус: Участник

Создано: 25 октября 2017 03:13 · Поправил: Jonny New!
· Личное сообщение · #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.

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

TryAga1n

Ранг: 183.8 (ветеран)
Статус: Участник

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

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

Ранг: 479.0 (мудрец)
Статус: Модератор

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

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

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

SReg

Ранг: 238.2 (наставник)
Статус: Модератор
CrackLab

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

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

Ранг: 479.0 (мудрец)
Статус: Модератор

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

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


Ранг: 714.1 (! !)
Статус: Участник
bytecode!

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

Есть ещё dotTracer

SReg

Ранг: 238.2 (наставник)
Статус: Модератор
CrackLab

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

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

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

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

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

Ранг: 12.8 (новичок)
Статус: Участник

Создано: 29 октября 2017 01:16 · Поправил: Lambda New!
· Личное сообщение · #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 могу смотреть код. Но не могу найти код, который необходимо. Видимо, что-то пошло не так.
Также строки не расшифрованы. Подскажите пожалуйста, в какую сторону копать?
ajax


Ранг: 297.7 (наставник)
Статус: Участник
born to be evil

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

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

Ранг: 479.0 (мудрец)
Статус: Модератор

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

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


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

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

Ранг: 12.8 (новичок)
Статус: Участник

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

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


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

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

Ранг: 7.0 (гость)
Статус: Участник

Создано: 5 ноября 2017 09:42 New!
· Личное сообщение · #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
Dart Raiden

Ранг: 62.8 (постоянный)
Статус: Участник

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

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

| Сообщение посчитали полезным: sendersu, B0u3z1z1, force666, _MBK_, DICI BF

. 1 . 2 . 3 . >>
 eXeL@B —› Основной форум —› Опять .net (part 2)

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS