![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
Всем хай!
Вот ну не врубаюсь как написать код на дельфи так чтобы получить значения структуры при возникновении исключения ))) Может кто что делал уже подобное? Это сообщение отредактировал(а) EvilsInterrupt - 19.8.2007, 15:11 |
|||
|
||||
| ne0n |
|
|||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 4 Всего: 11 |
EvilsInterrupt, вопервых без асм не обойтись(может я крнечно чего то и не знаю... ), а во вторых с NT они стали привелигерованными и так просто с ними работать уже нельзя...
Это сообщение отредактировал(а) ne0n - 19.8.2007, 15:54 |
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
ne0n, ага ! Лечи тут мне еще ))) вишь статью Win32 SEH Мэтт Питрек, так там описана структура: Рисунок 1. Структура CONTEXT.
Чтобы получить дебаг регистры, то можно вставить преднамеренную багу ))) а винда вернет контекст, вот и все! ;) Ты их тут же правишь, востанавливаешь и говоришь продолжать ;) Какие нафиг привелигия нужны? ;) Я это могу замудрить на асм-вставках, но очень бы хотелось бы увидеть и на чистом дельфи, если это конечно возможно. |
|||
|
||||
| ne0n |
|
|||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 4 Всего: 11 |
а чем тебя асм вставки то не устраивают?!
|
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
ne0n, Не то что не нравится, а то что в я дельфи много-го не знаю! ;) А хочу знать, потому то и спрашиваю ;)
|
|||
|
||||
| ne0n |
|
|||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 4 Всего: 11 |
EvilsInterrupt, а ну ок тогда придеться юзать Debug Api...кстати походу я ошибался...только что щас нарыл у себя на винте номер всеми нелюбимого ][акера так Ms-rem обьясняет как построить свой трейсер(на debug api)...вот тебе ссылка:
http://gamefree.ru/2005/11/01/khaker_083__arkhiv_2005.html |
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
ne0n, статья довольно старая и притом давно на wasm.ru лежит! Там вообще лежат актуальных на "сейчас" 6 статеек ;)
Тута посоветовался с челом, говорит можно "_context" заюзать и потом апишку ))) Буду поглядеть! зы: Как было все просто, когда на асме писал. Но асме писать ПО для работы с БД это извращение ))) |
|||
|
||||
| ne0n |
|
|||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 4 Всего: 11 |
не спорю, может и старая но актуальная, как был Debug Api, так и остался, где это она там лежит что то я не видел, может линк дашь?! з.ы. а че за айпишка то?! з.з.ы. а зачем тебе в по для работы с базами данных отлабочные регистры?! Это сообщение отредактировал(а) ne0n - 20.8.2007, 23:47 |
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
ne0n, А это вспом. механизм для защиты ПО от вредителей заработать мне денег )))
|
|||
|
||||
| ne0n |
|
|||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 4 Всего: 11 |
EvilsInterrupt, хочешь проверять значение отладочных регистров, таками способом детиктить отладчик?! ИмХо есть полно способов поудобней и проще...мне кадеться надо копать в другую сторону...
|
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
ne0n, Неа, мысли шире! ;)
Берешь адрес важной процедуре в своей проге и добавляешь к нему дебаг-регистр и ложишь обратно и т.д. ;). Если брякпоинта нет, то в дебаг регистре 0 код не повредиться, а если бряка стоит, то код повредиться - значит так ему хакеру и надо! ЗЫ: Чтобы защитить ПО, надо использовать как можно больше трюков, а тот что я описал это один из них ;) |
|||
|
||||
| sentry |
|
|||
|
Code Monkey ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 29.1.2007 Где: Москва Репутация: 1 Всего: 10 |
|
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
sentry, К чему эти строки? Вы читали мои слова:
Такое чувство, что нет! Дело в том, что сейчас, да и ранее так же было, не возможно создать абсолютно не ломаемую защиту! НО это не значит что ее не надо разрабатывать! Принцип таков: вашу защиту все равно обойдут, но ваше ПО будет дольше держаться, если у нее будет как можно сложней защита! Глупо верить в слова: "А все равно сломают, зачем заморачиваться?", нужно хотя бы немножко усложнить защиту или смешать защитные механизмы с исходным кодом разрабатывемого ПО т.е: уважаемый sentry, если у вас нет ничего по существу, то прошу промолчать ;) |
|||
|
||||
| dumb |
|
|||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: 7 Всего: 158 |
||||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
dumb, в точку, но против трейсеров лучше применять трюки опирающиеся на конструкции try ..bug.. except ... end;
|
|||
|
||||
| ne0n |
|
|||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 4 Всего: 11 |
||||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
ne0n, Ну вот возьмем StarForce, ее стоко народу ломало, а за месяц не осилили ;) О чем говорит?
|
|||
|
||||
| sentry |
|
|||
|
Code Monkey ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 29.1.2007 Где: Москва Репутация: 1 Всего: 10 |
EvilsInterrupt, я бы ответил на твои посты, но тогда тема безнадежно увязнет в оффтопе, поэтому промолчу
По существу могу дать вот эту ссылку, может помочь. |
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
sentry, Ты не вникаешь в суть темы! А требуется подсказать мне то, как написать код на языке Object Pascal с применением Delphi, без применения асм-вставок!
На ассемблере я вырос, это мой любимый язык программирования! Уверяю тебя то что ты приводишь, последня ссылка, эта статья была прочитана мною сразу же как только она появилась на wasm.ru, потому что это мой строгий "бятя", более того, в статьях есть и мой труд! Это первое. В этой статье применяется язык C, а я прошу на Object Pascal, думаю ты знаешь что С и Object Pascal разные вещи, это второе. Я прошу не о том, что мне стоит и что не стоит делать, а прошу о том как решить задачу, которую я описал еще в первом посте! Это третье. ЗЫ: Прошу тебя и всех других с уважением отнестись на поставленные вопросы, если вам кажется что они глупы, не спешите с выводами, а уточните о чем речь и бога ради, хотя бы разок прочтите "Как задавать провильно вопрос?". Если бы ты его почитал, то ты бы знал что прочитав спустя рукава тему, не уяснив сути вопроса и лезть тут же отвечать является признаком дурного тона!
Это сообщение отредактировал(а) EvilsInterrupt - 24.8.2007, 12:14 |
|||
|
||||
| sentry |
|
||||||
|
Code Monkey ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 29.1.2007 Где: Москва Репутация: 1 Всего: 10 |
EvilsInterrupt, ты все-таки заставил меня написать код Эта программа, написанная по той статье, правильно выводит значения этих регистров (проверял вроде), но я не уверен, что правильно их меняет. Кстати, в ОС программа работает нормально, в OllyDbg зацикливается, а в W32Dasm вообще не открывается
|
||||||
|
|||||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 1 Всего: 9 |
sentry, Вот!!! Вот именно это я хотел. Спасибо! Вот щас ты сказал и написал по существу и я очень тебе благодарен ;)
|
|||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |