eXeLab
eXeL@B DVD 2017 !

Курс видеоуроков КРЭКЕРСТВО + ПРОГРАММИРОВАНИЕ 2017
(актуальность: май 2017)
Свежие инструменты, новые видеоуроки!

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

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

Нанимаем реверс-инженеров на постоянной основе
Русский / Russian English / Английский

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

 eXeL@B —› Софт, инструменты —› ILSpector. NET assembly browser and decompiler, debugger, High and Low level Editor
. 1 . 2 . 3 . 4 . 5 . 6 . 7 . >>
Посл.ответ Сообщение
Medsft

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

Создано: 30 января 2015 16:57 · Поправил: 16 мая 2016 13:40 Medsft New!
· Личное сообщение · #1

NAME: ILSpector
DESC: The best decompiler and debugger for the obfuscated .net assemblies.
Last build: 25.03.2016
URL: http://il4re.ml/


Description:
ILSpy (based on original latest ILSpy public version 2.2.0.1737)
-add debugger from the SharpDeveloper studio
-add CopyFullyQualifiedTypeName.Plugin
-add OpCodeTableForm
-add to treeview contextmenu:
- strong name utility
- rename class utility
- Jump to EntryPoint
- string viewer utility (search enable)
- extension exeecute utility (reservation work enable)
- search any text in decompileTextView
- Find method call
- Analyze. Reference calls positioning and highlight ("IL Code" view)
- hexeditor methodbody utility (runtime compilation enable,
two technologies save the result(High Level:recompile assembly
and Low Level:Binary Patch(See results and work in Patch_table)))
add to decompiletextview contextmenu:
- replace instruction (High Level,need recompile to save assembly)
- nop instruction (High Level,need recompile to save assembly)
- reverse branch (High Level,need recompile to save assembly)
- nop instruction (Low Level, no need recompile binary patch see Patch Table)
- reverse branch (Low Level, no need recompile binary patch see Patch Table)

Mono.Cecil
-ignore null type (Read TypeDefinition)
-ignore invalid parameter(Read MethodDefinition)
-ignore invalid generic argument()
-ignore invalid attribute (if (attribute.Constructor == null) continue;)
-ignore invalid signature(GetSecurityDeclarationSignature)
-fix handle null value in obfuscated assembly
-add ToString for CustomAttributeArgument
-add ToString for CustomAttributeNamedArgument
-ignore null element(MemberDefinition)
-avoid recursive declaringtype of some obfuscated assemblies,currently only one level checking
-add AllMemberReferences(IEnumerable<MemberReference> GetMemberReferences)
-add ElementTypeIntValue(ElementTypeIntValue)
-add support to read/write directly from bytes(FromBytes)
-Read reloc section, Contributed by Khiem Nguyen
-add alternative "Save" technology modified assembly (support obfuscated assembly)

Sorry for my bad English and WPF Need bug reports)

| Сообщение посчитали полезным: neprovad, HandMill, uncleua, Austerlitz, 4kusNick, TryAga1n, VodoleY, s0cpy, SReg, zNob, raiser, DICI BF, CyberGod, plutos, Deluser, Dart Raiden, Shubka75, JohnyDoe, aleXela, Bronco, redlord, Gideon Vi, djdram, zds, nick8606, vovanre, verdizela, v00doo, Alinator3500, soho, ZaZa, Hellspawn

Hellspawn


Ранг: 990.3 (! ! !)
Статус: Модератор
Author of DiE

Создано: 30 января 2015 23:14 New!
· Личное сообщение · #2

Good stuff bro
sendersu

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

Создано: 30 января 2015 23:33 New!
· Личное сообщение · #3

Sorry we crashed http://prntscr.com/5z2924

ПКМ на ИЛь кодесе справа
vovanre

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

Создано: 30 января 2015 23:37 New!
· Личное сообщение · #4

Эта сборка умеет читать выхлоп ConfuserEx на агрессивном. Адово плюсую! Намного меньше возни!
uncleua

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

Создано: 30 января 2015 23:55 New!
· Личное сообщение · #5

При hex-редактировании - http://i.imgur.com/hkNfyiU.png
vovanre

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

Создано: 31 января 2015 00:00 · Поправил: vovanre New!
· Личное сообщение · #6

Хекс редактирование на обфусцированной сборке (после нажатия ок) -> http://joxi.ru/GrqMMGZSy64Drz
sendersu

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

Создано: 31 января 2015 00:28 · Поправил: sendersu New!
· Личное сообщение · #7

1) на не очень крутом офускаторе падает
http://prntscr.com/5z3125

2) we crashed again http://prntscr.com/5z38js

3) дрег-дроп сборок на дерево слева поломан (на оригинале пашет)

4) аттачер не видит дот-нет процессов (запускал SAE )
Medsft

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

Создано: 31 января 2015 18:59 New!
· Личное сообщение · #8

Some bug found.File replace. Please reload
+ add Remove IllegalConstruction handler
uncleua

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

Создано: 31 января 2015 19:12 New!
· Личное сообщение · #9

По правому клику в IL режиме все-равно если кликнуть в любом месте окна с кодом - http://i.imgur.com/VKyBz83.png
Medsft

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

Создано: 31 января 2015 22:05 New!
· Личное сообщение · #10

Uncleua сделай скриншот ошибки и своих действий... Не могу симулировать ее
vovanre

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

Создано: 31 января 2015 23:30 · Поправил: vovanre New!
· Личное сообщение · #11

Medsft пишет:
Uncleua сделай скриншот ошибки и своих действий... Не могу симулировать ее

Не поленился видео снять -> http://youtu.be/3LC75RV72CI

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

Medsft

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

Создано: 2 февраля 2015 09:49 · Поправил: Medsft New!
· Личное сообщение · #12

Some bugs found.File replace. Please reload
+add video: How to add new Execute Extension

vovanre пишет:
Не поленился видео снять
еслиб все так баг-репорты оформляли. Респект вообщем.
Medsft

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

Создано: 3 февраля 2015 19:20 · Поправил: Medsft New!
· Личное сообщение · #13

И так базовый функционал мода по видимому работает как надо,поскольку баг репортов(хоть каких) не наблюдается, и это хорошо. А руки то без дела лежать на столе не могут... И задумал я добавочки... Бывает так: смотришь на тело метода и ни хрена не понимаешь, что тут и о чем.. Control Flow во всех его вариациях. И назрело решение сделать деобфускатор тел методов но не так чтобы потом потребовалась рекомпиляция и не важно какой движок для этого используется моно или рефлекшен или днлиб.Рекомпиляция ведёт за собой в итоге.. как быэто.. после неё получается совсем другая ехе или длл. Этож еду понятно у разраба и исследователя) разные компиляторы...Так о чем я)) если предположить что тело обфускированного метода полюбому больше тела его оригинального собрата ТО если распутать метод собрать его заново и method body добить нулями до старой длины а в конце ret -- может вполне оригинальненько получиться. На выходе мы будемиметь бин патч массив который останется применить к оригинальной сборке.
Задача ясна: за дело.
Есть:
- мой иль спай мод который жрет почти все
- движок де контрол флоу который умеет еще и удалять лишние exception handler'ы, и не нужные бокал переменные оставшиеся от control flow
-есть байт массив тела оригинального метода с его заголовком с адресом его размещения в файле
- есть адреса и содержимое всяких там таблиц
И теперь главный вопрос к знатокам Net: если я распутаю метод( как аксиому примем что после распутывания его размер меньше оригинального) при этом не буду ничего больше делать ...ренейм и всякая такая хрень мне нужно будет только поправить заголовок и ентри поинт метода?
zeppe1in


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

Создано: 3 февраля 2015 23:23 New!
· Личное сообщение · #14

Medsft
Я так понял ты хочешь с пересобранной сборки перенести только тело метода в оригинальную?
Если так то будет косяк с сылками на таблицы т.к. они не будут соответствовать оригинальной сборке.
А вообще править тело метода и заголовок, этого достаточно. ентри поинт зачем трогать не понял.
Slinger

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

Создано: 4 февраля 2015 00:32 · Поправил: Slinger New!
· Личное сообщение · #15

Эксепшн при выделении кода при использовании инструмента binery edit (low level). Но далеко не у всех. Обфусцированная сборка цели.

http://i.imgur.com/5m7FmoF.jpg
SHADOW785

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

Создано: 4 февраля 2015 12:54 · Поправил: SHADOW785 New!
· Личное сообщение · #16

Не могу смотреть локальные переменные во время отладки. В сборке отсюда - https://exelab.ru/f/index.php?action=vthread&forum=1&topic=16650&page=35#12 переменную видно при наведении курсора мыши:

http://i.imgur.com/naxeXMG.png

В этой сборке такая панель не появляется.

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

Medsft

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

Создано: 4 февраля 2015 15:32 New!
· Личное сообщение · #17

Some bugs found.File replace.Please reload.
+add Class or Method Injector.
+add video "How to inject class or method"
Medsft

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

Создано: 4 февраля 2015 16:16 · Поправил: Medsft New!
· Личное сообщение · #18

SHADOW785 пишет:
Не могу смотреть локальные переменные во время отладки
- исправлено.
Последняя версия в раздаче от "build 04_02_15_17_14"

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

ZaZa


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

Создано: 4 февраля 2015 18:45 · Поправил: ZaZa New!
· Личное сообщение · #19

--> Баг 1: Binary Edit bug... <--

--> Баг 2: Browse Dependencies bug... <--

--> Баг 3: Search MSDN... bug...<--

Пожелания:
1. Закрывать все открытые окна в контексте ILSpy после закрытия основного окна (в частности, Mirage_table).
2. Рассмотреть возможность изменения значений переменных при дебаге. Очень помогает при отладке...
3. Закрывать процессы, открытые при дебаге, при закрытии основного окна.
4. Ограничить поле Rename'r (New name) до 100 символов (хотя бы)... Переполнить не удалось... Зачем изменяемое поле Old Name?

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

Medsft

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

Создано: 5 февраля 2015 15:21 · Поправил: Medsft New!
· Личное сообщение · #20

Some bugs found.File replace.Please reload.
Last build 05_02_15_57_00

To Zaza:
- bug 1-fixed
- bug 2-fixed
- bug 3-fixed
- bug 4(close ownerwindow)-fixed
- bug 5(oldName not readonly)-fixed

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

ZaZa


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

Создано: 5 февраля 2015 20:31 · Поправил: ZaZa New!
· Личное сообщение · #21

Баги:
--> Баг 1. Not PE File... <--

Пожелания:
1. String Viewer - при двойном нажатии мыши открывается метод, но нет позиционирования на строке. Очень хотелось бы, а вдруг метод большой.
2. Все окна, вновь создаваемые (в частности, Extension Execute)
Code:
  1. MaxButton = false;
  2. BorderStyle = 1;

В идеале, конечно... Согласен, для некоторых окон не надо делать - String Viewer, Opcode Table (хотя и так хватает ширины)...
3. А можно ведь затемнить ту часть, что после имени метода идет (VA?) (типа: AboutBox1 @0200000a).
4. Прикрепить горячие клавиши на Rename'r (F2) и другие - общемировые (Analyze -> CTRL+A и т.д.)
5. Перестать защищать сборку IlSpy mod Medsft (Шепни в ЛС, где скачать не защищенную)
6. Хотелось бы увидеть функцию автоматической подсветки в окне decompiling. Выделил мышкой переменную/метку/значение, а она уже подсвечивается ниже и т.д.

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

Medsft

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

Создано: 5 февраля 2015 21:19 · Поправил: Medsft New!
· Личное сообщение · #22

{1,2,3,4 }- надеюсь завтра нас ждёт сюрприз.
5.Enigma virtual box - не протектор, об этом написано у них на сайте))).По мне так гораздо удобней если все упаковано в один файл. Согласен плагины не цепляются НО: моно и сам илспай сильно модифицирован и писать плагины под данный мод не зная че к чему ...это высший дзен.Есть мысли как улучшить и чтото добавить- welcome!
Я ж заранее извинился wpf не мой конек

Добавлено спустя 12 часов 18 минут
ZaZa пишет:
-> Баг 1. Not PE File... <--
--- насмешил

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

Medsft

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

Создано: 6 февраля 2015 18:26 New!
· Личное сообщение · #23

Some bugs found.File replace.Please reload.
Last build: "build 06_02_19_20_00"
- refactoring rename`r handler. At "Now" if you want rename press F2 on Field, Property,Method,Class, NameSpace -selected treenode.
ZaZa


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

Создано: 6 февраля 2015 20:04 · Поправил: ZaZa New!
· Личное сообщение · #24

Зря убрал из меню "Rename'r". Если бы не написал, что по F2 переименовать можно - не догадался бы. Оставь в меню ссылку "Rename" с указанием горячей клавиши...

Баги под названием 'Not PE File...' остались.
P.S. Когда писал название, отвлекся, потому и Not PE получилось...
Medsft

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

Создано: 6 февраля 2015 20:48 New!
· Личное сообщение · #25

Ок
ZaZa


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

Создано: 6 февраля 2015 21:17 · Поправил: ZaZa New!
· Личное сообщение · #26

--> Баг 1: Debugging broken assembly...<--
В архиве неисправная сборка.
Причем, если в конце ткнуть на "Прервать", то больше сборку не запустить в debug...

--> Баг 2: Class or Method Injector protected assemblies <--

--> Баг 3: Save code... <--

На сегодня, пока все
vovanre

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

Создано: 6 февраля 2015 22:24 New!
· Личное сообщение · #27

Medsft пишет:
По мне так гораздо удобней если все упаковано в один файл

Ilmerge не? Или там есть нативные библы?
Medsft

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

Создано: 7 февраля 2015 16:29 New!
· Личное сообщение · #28

Сегодня билда не будет.
По поводу багов
баг 3. Движок moda не предназначен для генерации кода проекта в целом (особенности взаимосвязанной работы моно и nrefactory) по отдельности пожалуйста хотите листинг класса сохранить на здоровье, для создания же проекта используйте рефлектор или оригинальный ilspy
баг 2. Пожалуйста не используйте в качестве подопытной мыши при работе в моде, сам мод, он ведь немного запакован )))
баг 1. Помоему он просто ругается на отсутствие на компе каких то библиотек.
Часть незначительных баг пофиксена. Очередной билд в понедельник.
Medsft

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

Создано: 9 февраля 2015 19:16 New!
· Личное сообщение · #29

Some bugs found.File replace.Please reload.
Last build 09_02_15_57_00
add change private to public method handler
add undo operation (lo-lev bytes)
Medsft

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

Создано: 10 февраля 2015 18:16 · Поправил: Medsft New!
· Личное сообщение · #30

Some bugs found.File replace.Please reload.
Last build 10_02_15_19_00
+change private to public member handler at work on Low level
Project rename to "ILSpy NEXT"


П.С. А почему ренейм проекта читайте вечером в моем блоге )))

Добавлено спустя 1 час 56 минут
Мне задают вопросы.Только для русскоговорящего народонаселения.
Отличия между Low и High level редакторами:
Если Вы делаете патч в low режиме в итоге Вы получаете Patch_table таблицу патчей где
Первое число смещение от начала файла второе число старое значение третье число новое значение эти патчи можно сохранять читать заново и наконец применять к сборке.Как применяется патч сборка вычитыаается в простой binaryreader и по смещению происходит замена байт ---- простой и пожалуй наиболее действенный байт патчинг
Теперь о high levele "Ilspy NEXT" это уникальный инструмент одновременно с генерацией бин патча он производит перекомпиляции изменений как говориться в рантайм, для того чтобы исследователь мог сразу увидеть изменения которые он внёс в код. И при этом сохраняется возможность их сохранить, Нашим модифицированным движком, с полной рекомпиляцией сборки
. 1 . 2 . 3 . 4 . 5 . 6 . 7 . >>
 eXeL@B —› Софт, инструменты —› ILSpector. NET assembly browser and decompiler, debugger, High and Low level Editor

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

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