Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 10.03.2011, 15:57   #341
Местный
 
Регистрация: 10.08.2010
Сообщений: 634
Сказал Спасибо: 22
Имеет 95 спасибок в 70 сообщенях
mira пока неопределено
По умолчанию

значит есть шанс что юзают полиморфику. Например чето меняют в коде перед его исполнением и назад после. Да тотже сплайсинг мб

Добавлено через 1 минуту
какую память? Какова модуля хоть..
__________________
читернуть бы ништяг

Последний раз редактировалось mira, 10.03.2011 в 15:57. Причина: Добавлено сообщение
mira вне форума   Ответить с цитированием
Старый 10.03.2011, 16:01   #342
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

скорее всего только энжини палят, но это пох по двум причинам:
1. Вся память открыта для чтенья и записи уже.
2. ???
__________________
Начало.
supernewbie вне форума   Ответить с цитированием
Старый 10.03.2011, 16:48   #343
Местный
 
Регистрация: 10.08.2010
Сообщений: 634
Сказал Спасибо: 22
Имеет 95 спасибок в 70 сообщенях
mira пока неопределено
По умолчанию

согласен с обоими доводами.
__________________
читернуть бы ништяг
mira вне форума   Ответить с цитированием
Старый 21.03.2011, 18:03   #344
Рыцарь
 
Аватар для destructor
 
Регистрация: 26.06.2009
Сообщений: 2,433
Сказал Спасибо: 154
Имеет 692 спасибок в 426 сообщенях
destructor на пути к лучшему
По умолчанию

было так:
Код:
.text:00401000 ; int __cdecl main(int argc, const char **argv, const char **envp)
.text:00401000 _main        
.text:00401000                 push    0               ; uType
.text:00401002                 push    offset Caption  ; lpCaption
.text:00401007                 push    offset Text     ; "hello"
.text:0040100C                 push    0               ; hWnd
.text:0040100E                 call    ds:MessageBoxW
.text:00401014                 xor     eax, eax
.text:00401016                 retn
.text:00401016 _main           endp
потом погромист добавляем специальный макрос который обьясняет упаковщику откуда докуда шифровать код.
становится так:
Код:
.text:00401000 ; int __cdecl main(int argc, const char **argv, const char **envp)
.text:00401000 _main           proc near              
.text:00401000 argc            = dword ptr  4
.text:00401000 argv            = dword ptr  8
.text:00401000 envp            = dword ptr  0Ch
.text:00401000
.text:00401000                 jmp     short loc_401012
.text:00401002                 db 43h, 56h, 20h, 20h, 0Ch, 0, 0, 0, 0, 0, 0, 0, 43h, 56h, 20h, 20h
.text:00401012 loc_401012:                            
.text:00401012                 push    0               ; uType
.text:00401014                 push    offset Caption  ; lpCaption
.text:00401019                 push    offset Text     ; "hello"
.text:0040101E                 push    0               ; hWnd
.text:00401020                 call    ds:MessageBoxW
.text:00401026                 jmp     short loc_401038
.text:00401028                 db 43h, 56h, 20h, 20h, 0Dh, 0, 0, 0, 0, 0, 0, 0, 43h, 56h, 20h, 20h
.text:00401038 loc_401038:                             
.text:00401038                 xor     eax, eax
.text:0040103A                 retn
.text:0040103A _main           endp
потом код можно прогнать упаковщиком, и станет он выглядеть так:
Код:
.text:00401000 ; int __cdecl main(int argc, const char **argv, const char **envp)
.text:00401000 _main           proc near              
.text:00401000 argc            = dword ptr  4
.text:00401000 argv            = dword ptr  8
.text:00401000 envp            = dword ptr  0Ch
.text:00401000
.text:00401000                 jmp     sub_408520  ; полетели в дебри виртуальной машины
.text:00401000 ; ------------------------------тут рандомный мусор------------------------
.text:00401005                 db 33h, 5Ah, 0B0h, 90h, 0DBh, 7Eh, 0F3h, 0AAh, 0F2h, 0F7h, 0C7h, 0C4h, 0B7h, 0F0h, 1Eh, 97h
.text:00401005                 db 26h, 11h, 0DEh, 33h, 0DFh, 0A9h, 0B8h, 0EAh, 20h, 0F8h, 82h, 78h, 2, 2Ah, 1Ch, 29h
.text:00401005                 db 0BEh, 0EBh, 10h, 0A8h, 23h, 1Fh, 13h, 0C2h, 0B8h, 0DDh, 3Fh, 51h, 7Eh, 0A9h, 29h, 0C1h
.text:00401005                 db 7Bh, 0A4h, 54h
.text:00401038 ; ---------------------------------------------------------------------------
.text:00401038                 xor     eax, eax
.text:0040103A                 retn
.text:0040103A _main           endp
Вложения
Тип файла: rar packed.rar (20.1 Кб, 8 просмотров)
__________________
Шожиделать.. ботить хочется..

Последний раз редактировалось destructor, 21.03.2011 в 18:06.
destructor вне форума   Ответить с цитированием
Старый 21.03.2011, 18:28   #345
Рыцарь
 
Аватар для destructor
 
Регистрация: 26.06.2009
Сообщений: 2,433
Сказал Спасибо: 154
Имеет 692 спасибок в 426 сообщенях
destructor на пути к лучшему
По умолчанию

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

Добавлено через 23 минуты
макрос1:
Цитата:
Сообщение от destructor Посмотреть сообщение
:00401000 jmp short loc_401012
.text:00401002 db 43h, 56h, 20h, 20h, 0Ch, 0, 0, 0, 0, 0, 0, 0, 43h, 56h, 20h, 20h
макрос2:
Цитата:
Сообщение от destructor Посмотреть сообщение
.text:00401026 jmp short loc_401038
.text:00401028 db 43h, 56h, 20h, 20h, 0Dh, 0, 0, 0, 0, 0, 0, 0, 43h, 56h, 20h, 20h

и все что между ними надо зашифровать
__________________
Шожиделать.. ботить хочется..

Последний раз редактировалось destructor, 21.03.2011 в 18:28. Причина: Добавлено сообщение
destructor вне форума   Ответить с цитированием
Старый 21.03.2011, 18:30   #346
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

откуда взяты и почему именно такие макросы даж страшно спрашивать)
__________________
Начало.
supernewbie вне форума   Ответить с цитированием
Старый 21.03.2011, 18:31   #347
Рыцарь
 
Аватар для destructor
 
Регистрация: 26.06.2009
Сообщений: 2,433
Сказал Спасибо: 154
Имеет 692 спасибок в 426 сообщенях
destructor на пути к лучшему
По умолчанию

после шифровки, то что вне макросов остается в нормальном виде:
Цитата:
Сообщение от destructor Посмотреть сообщение
.text:00401038 xor eax, eax
.text:0040103A retn

поэтому у тебя гдето нормальный код, а гдето куйпойми
__________________
Шожиделать.. ботить хочется..
destructor вне форума   Ответить с цитированием
Старый 21.03.2011, 18:32   #348
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

ОУ, пооооняяяяял...

---

правда общему горю это маловато поможет))
__________________
Начало.
supernewbie вне форума   Ответить с цитированием
Старый 21.03.2011, 18:47   #349
Рыцарь
 
Аватар для destructor
 
Регистрация: 26.06.2009
Сообщений: 2,433
Сказал Спасибо: 154
Имеет 692 спасибок в 426 сообщенях
destructor на пути к лучшему
По умолчанию

Цитата:
Сообщение от supernewbie Посмотреть сообщение
откуда взяты и почему именно такие макросы даж страшно спрашивать)
такой набор байт придумал разрабочик защиты, и выложил в "мануалах по упаковке"
чтобы прога для шифрования могла найти участок кода, который надо шифровать.

начинается макрос с джампа, чтобы перепрыгивать этот набор байт, и неупакованная программа с вставленными макросами нормально работала.

Добавлено через 7 минут
Цитата:
Сообщение от supernewbie Посмотреть сообщение
правда общему горю это маловато поможет))
частично, в пакер не любой код сворачивают,
например:

Код:
int secret()
{

#макрос_start
sleep(1);
#макрос_end

while(*b)
{
    *a=*b xor key;
     a++;
     b++;      
};

#макрос_start
sleep(2);
#макрос_end

return 0;
};
Добавлено через 4 минуты
на первый взгляд будет так:

Код:
                 jmp     sub_408520  ; полетели в дебри виртуальной машины
 ; ------------------------------тут рандомный мусор------------------------
db 33h, 5Ah, 0B0h, 90h, 0DBh, 7Eh, 0F3h, 0AAh, 0F2h, 0F7h, 0C7h, 0C4h, 0B7h, 0F0h, 1Eh, 97h
db 26h, 11h, 0DEh,
//--а гдето тут читаемый код--
 33h, 0DFh, 0A9h, 0B8h, 0EAh, 20h, 0F8h, 82h, 78h, 2, 2Ah, 1Ch, 29h
db 0BEh, 0EBh, 10h, 0A8h, 23h, 1Fh, 13h, 0C2h, 0B8h, 0DDh, 3Fh, 51h, 7Eh, 0A9h, 29h, 0C1h
db 7Bh, 0A4h, 54h, 33h, 5Ah, 0B0h, 90h, 0DBh, 7Eh,
//------------------------------
 0F3h, 0AAh, 0F2h, 0F7h, 0C7h, 0C4h, 0B7h, 0F0h, 1Eh, 97h
db 26h, 11h, 0DEh, 33h, 0DFh, 0A9h, 0B8h, 0EAh, 20h, 0F8h, 82h, 78h, 2, 2Ah, 1Ch, 29h
db 0BEh, 0EBh, 10h, 0A8h, 23h, 1Fh, 13h, 0C2h, 0B8h, 0DDh, 3Fh, 51h, 7Eh, 0A9h, 29h, 0C1h
db 7Bh, 0A4h, 54h
 ---------------------------------------------------------------------------
                 xor     eax, eax
                 retn
__________________
Шожиделать.. ботить хочется..

Последний раз редактировалось destructor, 21.03.2011 в 18:49. Причина: Добавлено сообщение
destructor вне форума   Ответить с цитированием
Старый 21.03.2011, 18:50   #350
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

но ида при этом нихера ж не поймет наверняка, и не покажет сама этот "где-то читаемый код" )
__________________
Начало.
supernewbie вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Основные форумы > Программинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 12:15.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!