eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
обновлён 2 декабря!


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

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

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

 eXeL@B —› Основной форум —› Опять .net (part 2)
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 14 . 15 . >>
Посл.ответ Сообщение


Ранг: 1995.9 (!!!!)
Статус: Модератор
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

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


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

Создано: 20 июля 2018 10:23 New!
Цитата · Личное сообщение · #2

kid пишет:
пишу девиртуализатор для последней версии ВМ CliSecure.

И как успехи?

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

Создано: 21 июля 2018 10:56 New!
Цитата · Личное сообщение · #3

Lambda пишет:
Привет! Подскажите пожалуйста, чем обработана утилита.

http://rgho.st/private/6smMtQqDS/cf6bd083a674aeeb9bebfca4529ca159

Модификация ConfuserEx.

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


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

Создано: 26 июля 2018 17:18 New!
Цитата · Личное сообщение · #4

Привет, патчу дллку, под dnSpy запускаю, все работает как надо, если просто прогу, то берется откуда-то старая версия, в GAC такой dll я не нашел, откуда он ее затягивает?


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

Создано: 26 июля 2018 17:24 New!
Цитата · Личное сообщение · #5

Gmc пишет:
в GAC такой dll я не нашел, откуда он ее затягивает?

Наверное ответ в проге, которую ты не показал. Из ресурсов или с сети, что на ум разработчику взбрело.


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

Создано: 26 июля 2018 17:25 New!
Цитата · Личное сообщение · #6

Обновился Reflector v10.0.7.774.

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


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

Создано: 26 июля 2018 17:37 New!
Цитата · Личное сообщение · #7

f13nd пишет:
Наверное ответ в проге, которую ты не показал. Из ресурсов или с сети, что на ум разработчику взбрело.


т.е. детектит дебагер? самый прикол, когда аттачишься к ней, показывает патченный код, и дебаг идет, но выполняется оригинал, бред какой-то


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

Создано: 26 июля 2018 17:46 · Поправил: f13nd New!
Цитата · Личное сообщение · #8

Gmc пишет:
т.е. детектит дебагер?

может кс файла проверяет, я же не знаю. А GAC'ом ты не prefetch называешь? Может стоит prefetch отключить?

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

Создано: 26 июля 2018 17:53 · Поправил: Gmc New!
Цитата · Личное сообщение · #9

f13nd пишет:
может кс файла проверяет, я же не знаю. А GAC'ом ты не prefetch называешь? Может стоит prefetch отключить?


C:\Windows\Microsoft.NET\assembly\ тут смотрю GAC32 GAC64
Похоже он проверяет цифровую подпись, но откуда оригинал не понятно.
Prefetch зачистил, не помогло

Думал это баг просто, даже не подумал что это часть защиты может быть... Дебаг значит дальше...

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

Создано: 27 июля 2018 10:56 New!
Цитата · Личное сообщение · #10

Gmc пишет:
откуда он ее затягивает?

для уверенности что откуда подгружается мо жно процмоном глянуть

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

Создано: 27 июля 2018 11:41 New!
Цитата · Личное сообщение · #11

sendersu пишет:
для уверенности что откуда подгружается мо жно процмоном глянуть

Да, нашел C:\Windows\assembly\NativeImages_v4.0..., оттуда затягивает

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

Создано: 27 июля 2018 12:18 New!
Цитата · Личное сообщение · #12

Gmc
а что патчится? путь вроде не жаковский

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

Создано: 27 июля 2018 13:26 New!
Цитата · Личное сообщение · #13

sendersu пишет:
а что патчится? путь вроде не жаковский

dll просто, она там создает копию Имядлл.ni.dll и запускает ее, если цифровая подпись не верная, насколько я понял

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

Создано: 27 июля 2018 21:51 New!
Цитата · Личное сообщение · #14

Подскажите, есть или функция на которую можно поставить хук, чтобы отследить загрузку dotNet dll (по аналогии с LoadLibrary для нативных)? Нужно пропатчить лоадером dll которые подгружаются в процессе.

И еще вопрос почему getJit может не обрабатывать некоторые методы или классы? Использую подмену getJit на свою функцию, чтобы отследить некоторые методы по имени - столкнулся с проблемой, что через нее не получается отследить некоторые методы в классе или даже целые классы, хотя они 100% выполняются.

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

Создано: 29 июля 2018 16:32 New!
Цитата · Личное сообщение · #15

Нубский вопрос, чем можно патч сделать для .NET
Есть прога которая уже долгое время не меняет методы где проверяется лицензия, хочу не **ся каждый раз с скайем а просто сделать патчер.


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

Создано: 29 июля 2018 17:03 New!
Цитата · Личное сообщение · #16

sashka2002 пишет:
Нубский вопрос, чем можно патч сделать для .NET

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

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

Создано: 29 июля 2018 22:52 New!
Цитата · Личное сообщение · #17

Тем же чем обычно патчи делают.
Про это и был вопрос, мне нужно сам патчер сделать.
Гугл пока ничего толкового не дал, гуглю дальше.
Патчить буду .NET приложение.


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

Создано: 29 июля 2018 22:57 New!
Цитата · Личное сообщение · #18

sashka2002 пишет:
Гугл пока ничего толкового не дал, гуглю дальше. Патчить буду .NET приложение.

как скажешь


Ранг: 598.8 (!)
Статус: Модератор
Research & Development

Создано: 30 июля 2018 01:33 New!
Цитата · Личное сообщение · #19

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

Создано: 30 июля 2018 07:13 New!
Цитата · Личное сообщение · #20

sashka2002, тебе же f13nd все доступно описал. Если алгоритм регистрации не меняется, то опкоды будут +- одинаковые, делай поиск последовательности по маске, хоть в том же DUP'e и радуйся)

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

Создано: 30 июля 2018 16:51 New!
Цитата · Личное сообщение · #21

sashka2002 пишет:
чем можно патч сделать для .NET


Можно dnSpy прямо патчить, он позволяет даже код перекомпилить.
Еще вот этим я пользуюсь
https://exelab.ru/f/index.php?action=vthread&forum=3&topic=22494

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

Создано: 30 июля 2018 21:36 · Поправил: sashka2002 New!
Цитата · Личное сообщение · #22

я и пользуюсь dnspy для патчинга, но надоело его запускать и искать\менять вхождения для каждой версии проги. Думаю есть какой-то генератор патчей. Ты ему задаёшь функции и какую строчку заменить, он сам меняет, без того что бы открывать днспай и т.д.
DUP-ом пытался, но он не смог сравнить файлы.
Добавлю что ".net Patcher v0.7 by whoknows" вообще говорит мне что файлы не .NET. КАК так я не пойму, я ведь их редактировал и знаю точно что это .NET файлы.


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

Создано: 30 июля 2018 21:57 New!
Цитата · Личное сообщение · #23

sashka2002 пишет:
Думаю есть какой-то генератор патчей.

Патчей с декомпилером и компилером на борту.

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

Создано: 30 июля 2018 22:34 New!
Цитата · Личное сообщение · #24

f13nd пишет:
с декомпилером и компилером на борту

Щикарно, дайте две!

Тебе же уже предложили проверить на возможность использовать сигнатурную маску, если этот метод подходит, то вопрос автоматически решен


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

Создано: 30 июля 2018 23:51 · Поправил: 4kusNick New!
Цитата · Личное сообщение · #25

sashka2002
Потому что править надо аккуратно.
dnSpy при сохранении изменений предлагает пересобрать файл, и естественно отличий от оригинала в таком случае будут слишком много.

Потому правьте как можно меньше опкодов и не пересобирайте файл при сохранении.
Я небольшие правки обычно в ByteMe делаю, без пересборки. В dnSpy кстати даже не пробовал проверять - можно ли напрямую в сборку внести патч не перестраивая ее.

Тогда, имея всего несколько измененных опкодов, легко строится патч любым патч-мейкером будь то dup или еще что.


Ранг: 539.6 (!)
Статус: Участник
оптимист

Создано: 31 июля 2018 00:41 New!
Цитата · Личное сообщение · #26

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

Создано: 31 июля 2018 06:32 New!
Цитата · Личное сообщение · #27

4kusNick пишет:
можно ли напрямую в сборку внести патч не перестраивая ее.

Да, можно..
Выделяешь код нужный, пкм -> Показать инструкции в Hex-редакторе.. Поправил, сохранил, перегрузил все сборки, проверил..

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


Ранг: 323.0 (мудрец)
Статус: Участник
ILSpector Team

Создано: 31 июля 2018 11:25 New!
Цитата · Личное сообщение · #28

sefkrd пишет:
4kusNick пишет:
можно ли напрямую в сборку внести патч не перестраивая ее.
а ILSpector никто не пробовал?))))
http://i.prntscr.com/3nEJkV6JRWWrjyFcvOx2kw.png

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



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

Создано: 31 июля 2018 12:39 New!
Цитата · Личное сообщение · #29

Medsft пишет:
а ILSpector никто не пробовал?))))

Пробовал, но как я выше отмечал, для мелких правок пользуюсь ByteMe - он шустрый и лайтовый, то что мне надо.
Для серьезных дел и анализа кода - dnSpy, ILSpector, там обычно правкой пары опкодов не обходится потому там этот функционал для меня не критичен.

Ранг: 323.0 (мудрец)
Статус: Участник
ILSpector Team

Создано: 1 августа 2018 09:26 · Поправил: Medsft New!
Цитата · Личное сообщение · #30

sefkrd пишет:
4kusNick пишет:
можно ли напрямую в сборку внести патч не перестраивая ее.
а это не пробовал ?))))))))
http://prntscr.com/kd7qsd

P/S решил попиариться

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



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

Создано: 1 августа 2018 18:16 New!
Цитата · Личное сообщение · #31

Medsft пишет:
а это не пробовал ?))))))))

Нет, хватает ByteMe для патчей, по-крайней мере мне пока хватало.
Для серьезных дел - dnSpy, ILSpector
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 14 . 15 . >>
 eXeL@B —› Основной форум —› Опять .net (part 2)

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

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