ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > Реверсинг
   
Закрытая тема
 
Опции темы Поиск в этой теме Опции просмотра

Выполнение кода в стеке
  #1  
Старый 01.11.2007, 23:51
Аватар для GlOFF
GlOFF
Постоянный
Регистрация: 08.05.2006
Сообщений: 816
Провел на форуме:
1845671

Репутация: 1338


По умолчанию Выполнение кода в стеке

Вопрос совместимости. Есть следующий код к примеру:
Код:
push XXXX 
push XXXX 
push XXXX 
push XXXX 
jmp esp
Т.е. положили в стек опкод и прыгнули на его выполнение. На всех ли процессорах разрешен запуск кода в стеке? Просто слышал что новые процесоры запрещают это. Правдо ли???
 

  #2  
Старый 02.11.2007, 00:39
Аватар для DWORD
DWORD
Участник форума
Регистрация: 24.07.2007
Сообщений: 138
Провел на форуме:
165671

Репутация: 215
По умолчанию

http://www.shellcode.ru/index.php?name=News&file=print&sid=11

Не, не везде будет работать. Опкод это не операция, а ее код! =]

Great:
> Опкод это не операция, а ее код! =]
бред какойто. к чему это?

Последний раз редактировалось _Great_; 02.11.2007 в 10:03..
 

  #3  
Старый 02.11.2007, 10:02
Аватар для _Great_
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме:
5339610

Репутация: 4360


Отправить сообщение для _Great_ с помощью ICQ
По умолчанию

Цитата:
На всех ли процессорах разрешен запуск кода в стеке? Просто слышал что новые процесоры запрещают это. Правдо ли???
Правда. Читай про DEP (Data Execution Prevention).
Винда даже может это программно эмулировать для системных нужд, если проц это не поддерживает.

http://en.wikipedia.org/wiki/Data_Execution_Prevention

ЗЫ. Правда это как-то умудрялись вроде обходить в каких-то случаях, подсовывая адрес WriteProcessMemory или VirtualProtect в стек и готовя там параметры..

Последний раз редактировалось _Great_; 02.11.2007 в 10:05..
 

  #4  
Старый 02.11.2007, 12:22
Аватар для DWORD
DWORD
Участник форума
Регистрация: 24.07.2007
Сообщений: 138
Провел на форуме:
165671

Репутация: 215
По умолчанию

Цитата:
Great:
> Опкод это не операция, а ее код! =]
бред какойто. к чему это?
:
Цитата:
Т.е. положили в стек опкод и прыгнули на его выполнение
Опкод нельзя исполнить, т.к. это не операция а ее код. Для выполнения операции нужны еще и операнды (а кроме них еще и всякие дополнительные биты, указывающие адрессацию и размерность операндов). Я правда не знаю, что здесь имеется ввиду под опкодом - может быть автор подразумевал всю закодированную команду? Просто в терминологии ассемблируемой команды код операции - это вполне определенный участок команды (обычно, но не всегда, 1 или немного по-больше байтов в начале команды для intel'овских и совместимых процессоров)
 

  #5  
Старый 02.11.2007, 14:54
Аватар для ProTeuS
ProTeuS
HARDstasy
Регистрация: 26.11.2004
Сообщений: 1,367
Провел на форуме:
4226592

Репутация: 2175


Отправить сообщение для ProTeuS с помощью ICQ
По умолчанию

Dword, ты синтакси4еские мнемоники имеешь ввиду, а ре4ьь шла о выполняемом коде\опкодам
 

  #6  
Старый 02.11.2007, 17:10
Аватар для _Great_
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме:
5339610

Репутация: 4360


Отправить сообщение для _Great_ с помощью ICQ
По умолчанию

Цитата:
Сообщение от DWORD  
:

Опкод нельзя исполнить, т.к. это не операция а ее код. Для выполнения операции нужны еще и операнды (а кроме них еще и всякие дополнительные биты, указывающие адрессацию и размерность операндов). Я правда не знаю, что здесь имеется ввиду под опкодом - может быть автор подразумевал всю закодированную команду? Просто в терминологии ассемблируемой команды код операции - это вполне определенный участок команды (обычно, но не всегда, 1 или немного по-больше байтов в начале команды для intel'овских и совместимых процессоров)
DWORD, опкодом называется как поле КодОПерации(КОП), так и полный машинный код данной команды, в зависимости от контекста. Более того, часто под опкодом понимается именно полный код данной инструкции.
 

  #7  
Старый 03.11.2007, 03:18
Аватар для Lamia
Lamia
Участник форума
Регистрация: 11.07.2007
Сообщений: 190
Провел на форуме:
254313

Репутация: 185
По умолчанию

Раньше это прекрасно работало, весь декриптор помещался в стеке, а сейчас не знаю, но вроде как выполняется!

Последний раз редактировалось _Great_; 03.11.2007 в 09:24.. Причина: орфография
 

  #8  
Старый 03.11.2007, 21:23
Аватар для DWORD
DWORD
Участник форума
Регистрация: 24.07.2007
Сообщений: 138
Провел на форуме:
165671

Репутация: 215
По умолчанию

Цитата:
Сообщение от ProTeuS  
Dword, ты синтакси4еские мнемоники имеешь ввиду, а ре4ьь шла о выполняемом коде\опкодам
Не понял, чего-чего я имею ввиду?
 

  #9  
Старый 03.11.2007, 23:04
Аватар для ProTeuS
ProTeuS
HARDstasy
Регистрация: 26.11.2004
Сообщений: 1,367
Провел на форуме:
4226592

Репутация: 2175


Отправить сообщение для ProTeuS с помощью ICQ
По умолчанию

http://en.wikipedia.org/wiki/Opcode
 

  #10  
Старый 03.11.2007, 23:14
Аватар для _Great_
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме:
5339610

Репутация: 4360


Отправить сообщение для _Great_ с помощью ICQ
По умолчанию

DWORD, знаешь, даже с если посчитать, что опкод это код операции, то есть, например, операция NOP c кодом 90h и замечательно выполняется, скажу тебе.
Не веришь - скрин:

 
Закрытая тема



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Секреты Gsm КероСиН Сотовый фрикинг 17 30.08.2007 21:01
Mozilla Firefox URLBar: выполнение произвольного кода. -=lebed=- Уязвимости 5 29.07.2007 11:48
Внедрение Sql кода с завязанными глазами k00p3r Чужие Статьи 0 12.06.2005 20:48
Внедрение Sql кода с завязанными глазами, часть 2 k00p3r Чужие Статьи 0 12.06.2005 20:45
Удаленное выполнение произвольного PHP кода в Zeroboard Red Форумы 7 14.01.2005 03:40



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ