PDA

Просмотр полной версии : Трояны...


W!z@rD
20.02.2006, 05:35
Всем респект!
Народ я начинающий кодер(delphi), ну и как все пытаюсь напмсать трояна! =) Так вот помогите! Исходники, статьи, Советы...

Заранее спасибо...

А и еще
как в троях пишут удалённые редакторы реестра...?
эт каждый ключ(который требует клиент =) ) сканируется и отправляется клиенту?

Dronga
20.02.2006, 05:48
Мда... Чувствую сейчас тебе KEZ накатает по полной :P

Ну а вообще была темка в таком ключе, поиском надо пользоваться, примерно вот так:

http://forum.antichat.ru/thread7397-%ED%E0%EF%E8%F1%E0%F2%FC+%E2%E8%F0%F3%F1.html

KEZ
20.02.2006, 12:24
Редакторы реестра - можно использовать RegEnumValueA/W/ExA/ExW, которую использует например regedit. И экспортирует ее advapi32.dll, а либ для нее в визуал C - advapi32.lib. Она позволяет получить все значения (переменные которые в регедити справа отображаются) у какого-то одного ключа. А ключи можно проенумировать ф-ией RegEnumKeyA/W/ExA/ExW

Можно сделать по такой схеме - клиент шлет запрос, например
GETKEY HKLM/Software/Microsoft/Windows NT/Winlogon
а ему в ответ сервер шлет все значения в ключе Winlogon
allocatecdroms REG_SZ 0
allocatedasd REG_SZ 0
allocatefloppies REG_SZ
name type value
...
и т д
клиент строит из этого список

А если есть подключи они тоже отправляются... На случаи если клиент хочет например изменить ключ (имя ключа) или значение параметра в ключе, можно придумать свои команды, например RNKEY, SETVAL, и т д

Ф-ие для работы с реестром такие
(msdn.microsoft.com, никуда не денешься)

LONG RegEnumValue(
HKEY hKey,
DWORD dwIndex,
LPTSTR lpValueName,
LPDWORD lpcValueName,
LPDWORD lpReserved,
LPDWORD lpType,
LPBYTE lpData,
LPDWORD lpcbData
);

LONG RegEnumKey(
HKEY hKey,
DWORD dwIndex,
LPTSTR lpName,
DWORD cchName
);


http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/regenumvalue.asp

F1reF0x
20.02.2006, 15:30
Если клиент-серверное то вот примерной как надо делать

Клиент (бэк конект)

WSAStartup // Иницализируем Winsock
Socket // Создаём сокет
Connect // Подключаемся к нашему серверу
if .. then .. // Если пришло например "R" то перезагрузить компьютер
WSACleanup // Уничтожаем Winsock

Сервер

WSAStartup // Иницализируем Winsock
Socket // Создаём сокет
Bind // Вашаем сервер на определёный порт
Send // Отправляем клиент что либо
WSACleanup // Выгружаем WinSock

Winsock. Общий принцип таков.

W!z@rD
01.03.2006, 05:16
Хы... принцип я знаю =) вот только интересуюсь редактором реестра =)

drmist
09.03.2006, 17:45
W!z@rD
Про редактор реестра тебе уже написали.
можешь посмотреть вот:
http://www.security-teams.net/index.php?showtopic=3059
правда на Си - но там перевести как нечего делать.
Еще есть недописанный RAT - функция download, чтение директорий, вывод списка дисков и кое-что еще. Рееста нет. Тоже на Си. Могу послать мылом, если хочешь.

Вобще трои на Delphi имхо не рулят.