Запуск приложения
От: rk13 Латвия  
Дата: 24.04.04 11:56
Оценка:
Заранее извиняюсь за возможно некорректный вопрос.
Если в процессе загрузки приложения написанного для .net исполняемой среды просходит просто вызов импорт. функции (для exe) _CorExeMain и передача управления среде, то можно ли самостоятельно изменить процесс загрузки, вообще-то интересно как?
-= debug is our last hope =-
Re: Запуск приложения
От: mihailik Украина  
Дата: 27.04.04 13:43
Оценка:
R>просто вызов импорт. функции (для exe) _CorExeMain и передача управления среде, то можно ли самостоятельно изменить процесс загрузки, вообще-то интересно как?

Подредактировать EXE и вызывать _CorExeMain не из mscoree.dll, а из своей какой-нибудь mycoree.dll.

Правда, после такого изврата подписанные сборки станут некорректными. На то ведь StrongName и придумали.
... << RSDN@Home 1.1.3 stable >>
Re[2]: Запуск приложения
От: rk13 Латвия  
Дата: 27.04.04 17:09
Оценка:
Здравствуйте, mihailik, Вы писали:

R>>просто вызов импорт. функции (для exe) _CorExeMain и передача управления среде, то можно ли самостоятельно изменить процесс загрузки, вообще-то интересно как?


M>Подредактировать EXE и вызывать _CorExeMain не из mscoree.dll, а из своей какой-нибудь mycoree.dll.


M>Правда, после такого изврата подписанные сборки станут некорректными. На то ведь StrongName и придумали.

это как это если имееца ввиду вызвать _CorExeMain не непостедстненно из самой сборки, а из какой-нибудь левой mycoree.dll, то после того как среда инициализируется откуда будет исполняться код? Вообщем-то я вот чего хочу понять, реально ли как нибудь скрыть то, что софтинка вообще нетовской сборкой является (хотя бы с первого взгляда)? в смысле без всяких левых пакеров, а то мне IDA нагло сразу выдает, мол сборка .net и т.д. Например Thinstail (хоть он и обфускатор с добавками по натуре) хорошо это сделал. Могет есть какие предположения куда покопать...
... << RSDN@Home 1.1.3 stable >>
-= debug is our last hope =-
Re[3]: Запуск приложения
От: mihailik Украина  
Дата: 28.04.04 07:26
Оценка:
R>Вообщем-то я вот чего хочу понять, реально ли как нибудь скрыть то, что софтинка вообще нетовской сборкой является (хотя бы с первого взгляда)?

Ну сделай на Дельфи приложение. Пусть из себя достанет сборку (ну из ресурса), захостит CLR-домен и запустит сборку из byte[].


R> в смысле без всяких левых пакеров, а то мне IDA


А это что за артефакт?

R> нагло сразу выдает, мол сборка .net и т.д.


А каковы критерии "левизны" пакера?



R> Например Thinstail (хоть он и обфускатор с добавками по натуре) хорошо это сделал. Могет есть какие предположения куда покопать...


Не понимаю, зачем оно вообще тебе нужно.
... << RSDN@Home 1.1.3 stable >>
Re[4]: Запуск приложения
От: rk13 Латвия  
Дата: 28.04.04 10:54
Оценка:
Здравствуйте, mihailik, Вы писали:

M>Ну сделай на Дельфи приложение. Пусть из себя достанет сборку (ну из ресурса), захостит CLR-домен и запустит сборку из byte[].

тэкс... у MS как то был пример (есди мине не изменяет память) как сделать хостинг для сборки своими руками, но че-то я не могу найти могет кто встречался с примерами или статьями на эту тему

R>> в смысле без всяких левых пакеров, а то мне IDA

M>А это что за артефакт?
ну это я сборку дизассемблером посмотрел кстати IDA Pro 4.51 может сборку и как PE и как .net приложение рассмотреть (и всё это в купе с подсветкой, логическими переходами и др. вкусностями)


M>А каковы критерии "левизны" пакера?

ну если за пакер в нашем случае считать какую-то мега тулзу, которая всё что можно спрячет (хотя бы xor'ом пошифрует), импорты куда нибудь засунет и другую пакость сделает, то на него обязательно анпакер найдется (если не совсем левый). Ну, еше левый в смысле ... платный

M>Не понимаю, зачем оно вообще тебе нужно.

ну вообщем мне платформу .нет нада оценить с точки зрения защищенность. Так как все дела типа управляемости, CAS, roles и т.д. более менее ясны, то с защитой от дизассемблинга — байда, MS даже где-то просто предлагает предоставлять хостинг приложения на корпоративном сервере, вместо того чтобы в люди отдавать. Конечно есть обфускаторы (даже целая куча) включая родной, но по большому счету они только изменяют все идентификаторы на неперевариваемые, перемешивают ... вообщем при наличии времени и желания можно и расковырять.

з.ы. могет у кого есть что нибудь интересное на эту темы (в смысле не книги ... и не ссылки на ms). 10x
... << RSDN@Home 1.1.3 stable >>
-= debug is our last hope =-
Re[5]: Запуск приложения
От: mihailik Украина  
Дата: 28.04.04 16:54
Оценка:
M>>А каковы критерии "левизны" пакера?
R>то на него обязательно анпакер найдется (если не совсем левый). Ну, еше левый в смысле ... платный

Понял, ты от дизассемблера защищаешься.


R>ну вообщем мне платформу .нет нада оценить с точки зрения защищенность. Так как все дела типа управляемости, CAS, roles и т.д. более менее ясны, то с защитой от дизассемблинга — байда

R>но по большому счету они только изменяют все идентификаторы на неперевариваемые, перемешивают ... вообщем при наличии времени и желания можно и расковырять.

А ты хоть теоретически можешь предложить что-нибудь другое? Не понимаю, почему .NET здесь должен хоть как-то отличаться от обычного C++ и ассемблера.

Если тебя даже обфускаторы не убеждают, то уж читать чистый x86-ассемблер, наверное, совсем ерундой покажется.
... << RSDN@Home 1.1.3 stable >>
Re[5]: Запуск приложения
От: TK Лес кывт.рф
Дата: 28.04.04 17:41
Оценка:
Здравствуйте, rk13, Вы писали:

R>>> в смысле без всяких левых пакеров, а то мне IDA

M>>А это что за артефакт?
R>ну это я сборку дизассемблером посмотрел кстати IDA Pro 4.51 может сборку и как PE и как .net приложение рассмотреть (и всё это в купе с подсветкой, логическими переходами и др. вкусностями)

IDA для .NET это что-то типа каменного топора — и врагам голову можно раскрошить и себе по ноге не слабо заехать. Сейчас-же все используют более внятные дизассемблеры которые позволяют получить код на C#. А дальше, реинжиниринг, готовые UML диаграммы — это все на полу-автомате...

M>>Не понимаю, зачем оно вообще тебе нужно.

R>ну вообщем мне платформу .нет нада оценить с точки зрения защищенность. Так как все дела типа управляемости, CAS, roles и т.д. более менее ясны, то с защитой от дизассемблинга — байда, MS даже где-то просто предлагает предоставлять хостинг приложения на корпоративном сервере, вместо того чтобы в люди отдавать. Конечно есть обфускаторы (даже целая куча) включая родной, но по большому счету они только изменяют все идентификаторы на неперевариваемые, перемешивают ... вообщем при наличии времени и желания можно и расковырять.


Почитай форум — сразу с таким вопросом ты тут не первый...
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[6]: Запуск приложения
От: rk13 Латвия  
Дата: 28.04.04 22:03
Оценка:
Здравствуйте, TK, Вы писали:

TK>Здравствуйте, rk13, Вы писали:


TK>IDA для .NET это что-то типа каменного топора — и врагам голову можно раскрошить и себе по ноге не слабо заехать. Сейчас-же все используют более внятные дизассемблеры которые позволяют получить код на C#. А дальше, реинжиниринг, готовые UML диаграммы — это все на полу-автомате...

ну, скорее скальпель при обработке досок (хотя согласен что куда приятней вывод того же Reflector'a)
извиняюсь, если флейм тут развёл ненужный.
... << RSDN@Home 1.1.3 stable >>
-= debug is our last hope =-
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.