Real Patch Code

Тема в разделе "WASM.BEGINNERS", создана пользователем kodermax, 8 фев 2007.

  1. kodermax

    kodermax New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2007
    Сообщения:
    26
    Как написать прогу, которая будет отлавливать запуск процесса fifa07 и потом менять какой-нибдуь байтик, чтобы вылетала ошибка.А то сосед достал в нее играть..:)
     
  2. HoBleen

    HoBleen New Member

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    77
    Каждые, например, 10 секунд вызываешь CreateToolhelp32Snapshot() и смотришь, запущен ли процесс с заданным именем. Если да - открываешь его и терминатишь.
     
  3. Hmm

    Hmm New Member

    Публикаций:
    0
    Регистрация:
    22 ноя 2006
    Сообщения:
    162
    Респект HoBleen .
    Судя по msdn , она возвращает какой-то хэндл .
    Вот как им дальше пользоваться ?

    Гы . нашел : Process32First,Process32Next .
    Может , кому поможет .
     
  4. ksu_ant

    ksu_ant New Member

    Публикаций:
    0
    Регистрация:
    28 сен 2005
    Сообщения:
    273
    Да испорть файл как-нибудь. Сам вылетит. Сосед же не будет чексум проверять ;)
    Конечно, может переустановить, но это уже второй вопрос :)
    Если потом захочешь сам поиграть - копию сохрани.
    Удачи!
     
  5. trash_master

    trash_master New Member

    Публикаций:
    0
    Регистрация:
    27 окт 2006
    Сообщения:
    319
    Адрес:
    Україна
    находишь сам файл fifa07.exe и меняешь первый байт в EntryPoint на 0xCCh и наслаждаешся :)
     
  6. HoBleen

    HoBleen New Member

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    77
    Должно получиться что-то типа такого:
    Код (Text):
    1.     HANDLE hProcess;
    2.     HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
    3.     if (hSnap == INVALID_HANDLE_VALUE)
    4.         return;
    5.  
    6.     PROCESSENTRY32 pre;
    7.     pre.dwSize = sizeof(pre);
    8.     if (!Process32First(hSnap, &pre))
    9.     {
    10.         CloseHandle(hSnap);
    11.         return;
    12.     }  
    13.  
    14.     do {
    15.         if (strcmp("FIFAxxx", pre.szExeFile) == 0)
    16.         {
    17.             hProcess = OpenProcess(PROCESS_TERMINATE, 0, pre.th32ProcessID);
    18.             if (hProcess = INVALID_HANDLE_VALUE)
    19.                 continue;
    20.             TerminateProcess(hProcess, 0);
    21.             CloseHandle(hProcess);
    22.         }
    23.     } while(Process32Next(hSnap, &pre));
    24.  
    25.     CloseHandle(hSnap);
    И запихиваешь все это в бесконечный цикл.
     
  7. Hmm

    Hmm New Member

    Публикаций:
    0
    Регистрация:
    22 ноя 2006
    Сообщения:
    162
    CreateToolhelp32Snapshot , Process32First , Process32Next хотят
    Header: Tlhelp32.h.
    Link Library: Toolhelp.lib.
    В моем masm'e такого нет . Это правильно ?
     
  8. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    в kernel32.lib
     
  9. Hmm

    Hmm New Member

    Публикаций:
    0
    Регистрация:
    22 ноя 2006
    Сообщения:
    162
    спсб . скомпилилось .
     
  10. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    А где sleep(10 * 1000) ? =)
    Hmm
    А чем тебе совет trash_master не устраивает?
     
  11. kodermax

    kodermax New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2007
    Сообщения:
    26
    Надо, сделать так чтобы он даже при переустановке многократной не мог играть, нужно чтобы программа всегда была в процессе и убивала появление fifa07..А на асме можно написать..это??
     
  12. kodermax

    kodermax New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2007
    Сообщения:
    26
    Применил исходник HoBleen без этого кстати и работает
    Код (Text):
    1.  if (hProcess = INVALID_HANDLE_VALUE)
    2.                 continue;
    И после того как завершит игру рабочий стол портится...как это исправить..
     
  13. Atlantic

    Atlantic Member

    Публикаций:
    0
    Регистрация:
    22 июн 2005
    Сообщения:
    322
    Адрес:
    Швеция
    kodermax
    Открываешь раздел реестра HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options, создаешь в нем подраздел с именем fifa07.exe, в нем создаешь строковый параметр Debugger. В него пишешь "C:\WINDOWS\system32\cmd.exe". И все - теперь вместо fifa07.exe всегда будет запускаться cmd.exe. Вместо cmd.exe можешь подставить свою прогу, которая, например, вываливает BSOD :) Правда от переименования файла это не спасет, так же, как и вариант с поиском процесса и сверкой имени.
     
  14. HoBleen

    HoBleen New Member

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    77
    Ну видимо что-то из DirectX. Тогда надо сделать, как сказал Atlantic - через замену пути к ехе. Либо подпортить файлы игры чтобы не запускалась =)
     
  15. kodermax

    kodermax New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2007
    Сообщения:
    26
    Как сделать, чтобы при запуске прога прописалась в автозагрузку, и процесс сделать скрытым..
     
  16. Hmm

    Hmm New Member

    Публикаций:
    0
    Регистрация:
    22 ноя 2006
    Сообщения:
    162
    "А чем тебе совет trash_master не устраивает?"
    А мне ненадо чтото портить . Мне надо дождаться конкретного процесса и похукать его .
    Atlantic . Интересная фишка.
    kodermax
    "процесс сделать скрытым." вово . Сделать скрытым , это интересно . Вырезать из сетевых соединений . Ещеб про полиморфизм , антиотладку, формграббер и автозалив по DE.Старая песня о главном.
     
  17. Hmm

    Hmm New Member

    Публикаций:
    0
    Регистрация:
    22 ноя 2006
    Сообщения:
    162
    Бррр . Только что наблюдал надпись :
    "Вы забанены . Причина : ересь BHC " . Жуть какая.
    После перегруза firefox'a пропало . Это бага такая?
     
  18. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    фишка =)
    А вообще проще сделать всё через драйвер :P
    И автозагрузка, и процесса не видно :) Да и код даже попроще чем в #6, благо примеров куча.
     
  19. kodermax

    kodermax New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2007
    Сообщения:
    26
    А можно процессу послать команду завершение работы. Чтобы он там сам начал готовиться к завершению.. сам себя завершил?
     
  20. Hmm

    Hmm New Member

    Публикаций:
    0
    Регистрация:
    22 ноя 2006
    Сообщения:
    162
    Дрррайверрр . Произносится шепотом , со смесью страха и вожделения в голосе.
    2kodermax : А вот это чего :
    P.S.: Кстати , мне подумалось . Может форум меня банить захотел , потому что я через tor зашел ? Он по ip банит ?