Сейчас на форуме: -Sanchez- (+8 невидимых) |
![]() |
eXeL@B —› Основной форум —› Взлом dotNET программ |
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 49 . 50 . >> |
Посл.ответ | Сообщение |
|
Создано: 30 августа 2010 22:59 · Поправил: s0l · Личное сообщение · #1 Со времени создания топика много обсудили, во много м разобрались и много осталось за кадром. Решил подшить выкладываемый софт и линки ![]() Инструменты: Рег-данные: Code:
Рег-данные: Code:
Статьи с хабры: Другое: [url=http://lifeinhex.com/string-decryption-with-de4dot/]String decryption with de4dot[/url - Last edit: 2012-02-17, Links fixed. Jupiter] ![]() |
|
Создано: 09 февраля 2011 10:31 · Личное сообщение · #2 |
|
Создано: 09 февраля 2011 13:30 · Личное сообщение · #3 |
|
Создано: 10 февраля 2011 09:06 · Личное сообщение · #4 |
|
Создано: 10 февраля 2011 11:29 · Личное сообщение · #5 |
|
Создано: 10 февраля 2011 11:34 · Личное сообщение · #6 |
|
Создано: 10 февраля 2011 13:28 · Поправил: sendersu · Личное сообщение · #7 что нового .NET Reflector 7 Beta 3 is now available. This build is feature complete and contains numerous enhancements to decompilation and .NET 4 support, along with tabbed decompilation, and PowerCommands integration. This beta fixes an exception that occurred when Reflector was closed due to an expected folder not being created. Внимание! ета версия требует активации время на поиграццо - 14 дней ![]() |
|
Создано: 17 февраля 2011 23:22 · Личное сообщение · #8 Пара вопросов: Может кто подскажет (сам пока не нашел) где в метаданных прописывается список сборок для аттрибута InternalsVisibleToAttribute? И можно ли, оставив InternalsVisibleToAttribute рабочим для дружественной сборки, убрать зависимость от publickey, т.е. сделать сборку дружественной только по имени (в случае если у дружественной сборки нет publickey). ![]() |
|
Создано: 18 февраля 2011 00:41 · Личное сообщение · #9 |
|
Создано: 18 февраля 2011 23:14 · Личное сообщение · #10 На подходе ReShaper 6 blogs.jetbrains.com/dotnet/2011/02/resharper-6-bundles-decompiler-free-standalone-tool-to-follow/ ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. ![]() |
|
Создано: 23 февраля 2011 01:13 · Личное сообщение · #11 Нужен .Net отладчик есть приложение, основной запускаемый файл - нативный, в процессе запуска выполняется куча длл - нативных, .Net и Mixed сборок программа падает на одном методе Mixed сборки хочется посмотреть это дело в отладке чем лучше дебажить такой случай? Dile я не смог туда прикрутить В принципе идеальным вариантом был бы отладчик Visual Studio, только не понимаю пока как запустить отладку и остановиться именно на нужном мне методе. Может есть какие-то примочки для студии? ![]() |
|
Создано: 24 февраля 2011 08:20 · Личное сообщение · #12 |
|
Создано: 24 февраля 2011 23:02 · Личное сообщение · #13 Av0id Спасибо, но это помоему не подходит. Проблема такая: Убил во всех файлах сборки StrongName Загрузка идет полным ходом до появления такого экспешена: Code:
Падение происходит в этой функции из-за отсутствия строгого имени: Code:
Code:
Что нужно поправить чтобы не ругалось на отсутствие строгого имени? ![]() |
|
Создано: 25 февраля 2011 05:10 · Личное сообщение · #14 |
|
Создано: 25 февраля 2011 09:05 · Поправил: sendersu · Личное сообщение · #15 Если убрать (занопить) проверку на null, if (name2 == null) { throw new ArgumentException("Evidence has no strong name key"); } тогда будет падать дальше, вот здесь this.a.RemoveType(name2.GetType()); this.a.AddHost(new StrongName(name2.PublicKey, this.a, name2.Version)); Тут, видимо, надо разобраться что делает a.RemoveType() и a.AddHost() тоесть можно ли их тоже проскочить. Если нельзя - надо сделать какой нибудь свой фейковый name2 (в САЕ или любом другом инструменте что умеет править IL код) ![]() |
|
Создано: 25 февраля 2011 11:49 · Поправил: Tyrus · Личное сообщение · #16 Убираем эксепшен - упадет дальше, как и сказал sendersu, т.к. в AddHost добавляется политика безопасности строго имени который тут null, предыдущая команда (RemoveType) убивает в политеке безопасности существующую привязанность к строгому имени (освобождает ее). В принципе было бы логично убить экспепшен и убить AddHost, но все равно где-то падает. Я хочу попробовать в начале функции подменить assemblyName на имя какого-нибудь левого файла, но имеющего валидное строгое имя, а в конце убрать AddHost, таким образом весь код до конца выполнится как и было задумано, но в политику безопастности не будет добавлено строгое имя. SAE IL код действительно нормально редактирует при помощи Mono.Cecil ![]() |
|
Создано: 26 февраля 2011 09:29 · Личное сообщение · #17 |
|
Создано: 26 февраля 2011 17:07 · Поправил: Tyrus · Личное сообщение · #18 NIKOLA Мешает то, что у меня файлов там 400 сотни и все они между собой связаны референсами со строгим именем + через InternalsVisibleToAttribute с паблик ключом строгого имени. И прежде чем наложить на них свой стронг нэйм я должен буду еще и пропатчить все связки. Вот этот Evidence не могу пока победить. Вроде понял как правильно пройти эту функцию для моих файлов - использовал Evidence.Clear(), но вот теперь надо вводить условие, т.к. через нее еще проходят и системные файлы и соответственно Clear() убивает и их зависимости и дальше все падает. Кстати Dile примостился аттачить - хоть этим можно дебажить, но такой неудобный.. Вот инфа про Evidence: msdn.microsoft.com/ru-ru/library/system.security.policy.evidence.aspx ![]() |
|
Создано: 26 февраля 2011 23:17 · Личное сообщение · #19 Победил таки. Все оказалось элементарно. if (evidence != null) { this.a = evidence; name2 = AppDomainRemoteObjectFactory<T>.a(evidence); } else { goto ret; } т.е. если идет сборка с Evidence и строгим именем - все идет по оригинальному коду а если с null, то вообще не лезем в назначения свойств политик безопастности, а просто выходим и загрузка пошла! ![]() |
|
Создано: 27 февраля 2011 21:44 · Поправил: Tyrus · Личное сообщение · #20 Code:
Где можно почитать про автоматическое восстановление шифрованных строк? Написал декодер шифрованных методов прота, все расшифрованные методы сохраняются в новую секцию, но для полной победы над протом осталось побороть обфускацию и шифрование строк - для автоматизации, т.к. с SAE руками можно сделать все, но хочется именно автомат. Может есть где-то сорцы какого-нибудь деобфускатора, который может восстанавливать строки? Пока вижу только такой способ: 1. Изучить как работает метод 349452901.349452936.93650356 по восстановлению строк 2. Пройтись им по шифрованным строкам в блобе "US" 3. Занопить вызовы 349452901.349452936.93650356 ![]() |
|
Создано: 27 февраля 2011 23:34 · Личное сообщение · #21 Tyrus пишет: Может есть где-то сорцы какого-нибудь деобфускатора, который может восстанавливать строки? САЕ идет с плагином 9Ray - если помедитировать чуток то можно под себя сделать для етого случая там правда есть нюанс - как правило етот декодер строк проверяет как его метод запустили..... если ето пропатчить - все должно заработать ![]() |
|
Создано: 27 февраля 2011 23:57 · Личное сообщение · #22 |
|
Создано: 28 февраля 2011 22:33 · Личное сообщение · #23 |
|
Создано: 28 февраля 2011 23:29 · Поправил: verissimo · Личное сообщение · #24 |
|
Создано: 01 марта 2011 00:34 · Личное сообщение · #25 |
|
Создано: 01 марта 2011 09:44 · Личное сообщение · #26 |
|
Создано: 01 марта 2011 13:32 · Личное сообщение · #27 sendersu А можно и на каждую строку сделать свой метод). один пакостный обфускатор, не помню какой. наделал целую кучу методов для декодирования стрингов, код вроде один и тот же, а методов много) в ручную каждый указывать не вариант и я именно по сигнатуре искал. точнее я смотрел чтобы метод подходил по входным и выходным параметрам, а потом искал в нём вызов ГетПабликКей. ----- zzz ![]() |
|
Создано: 01 марта 2011 17:27 · Личное сообщение · #28 |
|
Создано: 01 марта 2011 17:41 · Поправил: uncleua · Личное сообщение · #29 |
|
Создано: 04 марта 2011 09:04 · Личное сообщение · #30 DotNet Dumper 1.0 -will show only .NET processes under list, -all dumps will be saved under dumps - now can fix raw size/address (Themida targets) - now will fix AddressofEntryPoint - now dumps more assemblies - Dump native - dump native not only .NET - Smart Dump - dump sections page by page - Now you can dump a specific module - Bugs fixed - Rename of dumped files improved! new: - ability suspend/resume/kill processes - view Environment Variables, - abilty to Inject / Free a dll (under Selected process->Module) this one needs some bug check - don't know if is working on Vista / Windows 7 ![]() |
|
Создано: 04 марта 2011 09:44 · Поправил: uncleua · Личное сообщение · #31 Тогда вот еще в коллекцию... **************************** dotNET Tracer - This is the final version, it was supposed to stay private but I decided to release it for the advantage of the RCE community. this tool works best in Windows 7 but also works with XP-SP2 follow this topic if you face any problem on Windows 7 board.b-at-s.info/showtopic=6921 Download from here : www.4shared.com/file/tSj6cvgj/KDT.html **************************** ILSpy - ILSpy is the open-source .NET assembly browser and decompiler. Development started after Red Gate announced that the free version of .NET Reflector would cease to exist by end of February 2011. ILSpy Features: •Assembly browsing •IL Disassembly •Decompilation to C# •Saving of resources •Search for types/methods/properties (substring) •Hyperlink-based type/method/property navigation •Base/Derived types navigation •Navigation history •BAML to XAML decompiler •Save Assembly as C# Project wiki.sharpdevelop.net/ilspy.ashx ![]() |
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 49 . 50 . >> |
![]() |
eXeL@B —› Основной форум —› Взлом dotNET программ |
Эта тема закрыта. Ответы больше не принимаются. |