![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Получить путь и имя процесса [D7, WinXP]
Cj © (2007-12-26 10:36:00)САБЖ. Сделал прогу (экспериментальная), которая скывает свой путь, не исползуя хакерские приемы.
Пытаюсь теперь узнать путь и имя проги,а Process Explorer, PHunter, и ДЗ показывают не-то, что надо.
Вот задумался, а если я вирус такой подцеплю, как тогда путь/ имя к нему узнать?
Ссылка вот http://webfile.ru/1656755
посмотрите. Ручаюсь -это не вирус.
Подскажите как сделать САБЖ.
Сильно не пинайте, если где неправ.
Спасибо заранее.
И скажите мне если узнаете, путь к проге.
Cj (2007-12-26 18:07:00) [21]
> Вот тебе утилитка которая показывает все твои запущенные
> творчества: http://webfile.ru/1657256
Вот смотрите что она говорит.
Какая у вас система(версия и.т.д.) у меня:
Имя ОС Microsoft Windows XP Professional
Версия 5.1.2600 Service Pack 2 Сборка 2600
Изготовитель ОС Microsoft Corporation
Имя системы ASUS
Изготовитель ASUSTeK Computer Inc.
Модель F3JP
Тип Компьютер на базе X86
Процессор x86 Family 6 Model 15 Stepping 2 GenuineIntel ~1662 МГц
Процессор x86 Family 6 Model 15 Stepping 2 GenuineIntel ~1662 МГц
Версия BIOS American Megatrends Inc. 208, 23.05.2007
Версия SMBIOS 2.4
Папка Windows D:\MUSTDIE
Системная папка D:\MUSTDIE\system32
Устройство загрузки \Device\HarddiskVolume1
Язык Россия
Аппаратно-зависимый уровень (HAL) Версия = "5.1.2600.2180 (xpsp_sp2_rtm.040803-2158)"
Имя пользователя ASUS\Cj
Часовой пояс Владивосток (зима)
Полный объем физической памяти 2 048,00 МБ
Доступно физической памяти 1,45 ГБ
Всего виртуальной памяти 2,00 ГБ
Доступно виртуальной памяти 1,96 ГБ
Файл подкачки 3,54 ГБ
Файл подкачки C:\pagefile.sys
Cj (2007-12-26 18:01:00) [22]
> Вот тебе утилитка которая показывает все твои запущенные
> творчества: http://webfile.ru/1657256
ща посмотрю...
Rouse_ (2007-12-26 17:44:00) [23]
> Молодец, про действия догадался.
Ты знаешь я не бабка-гадалка, а программист и твой код читается достаточно легко в дизассемблере. Так что ни о каких догадках речи не идет...
> Toolhelp показывает только X:\[], а на самом деле файл там-
> же
У меня он показывает там где находится сейчас реально исполняемый файл, а не то откуда он запускался.
Если хочешь увидеть кто его толкнул первым, запусти аудит и будет тебе счастье.
Тож мне - технологию придумал :)
Вот тебе утилитка которая показывает все твои запущенные творчества:
http://webfile.ru/1657256
Cj (2007-12-26 16:31:00) [24]
> Rouse_ © (26.12.07 15:45) [5]
Молодец, про действия догадался.
Только он еще текущую директорию сменяет на X:\ чтобы не узнали в какой он папке
Cj (2007-12-26 16:28:00) [25]
> а не из PEB, таким образом ничто не скрывается и даже банальный
> CreateToolhelp32Snapshot покажетэту гадость :)
Ну попробуй.
Покажи код, который показывает.
Интересно, как это у Slow не показалось, а у тебя показывает.
Toolhelp показывает только X:\[], а на самом деле файл там-же(откуда запускал)
Rouse_ (2007-12-26 15:45:00) [26]Он мувит себя в корень диска с именем Char($7F), и запускает с параметрами свою копию указывая в параметрах путь, откуда был запущен оригинал, после чего прибивает себя.
Новый процесс, зная из параметров командной строки путь, возвращает копию себя на место. После чего он читает адрес в котором содержится путь к текущему модулю примерно вот таким кодом:
program Project1;
{$APPTYPE CONSOLE}
uses
Windows;
var
P: PByte;
Data, BytesRead: DWORD;
S: String;
begin
P := GetProcAddress(GetModuleHandle(kernel32), 'GetCommandLineA');
if P <> nil then
begin
Inc(P);
BytesRead := 0;
ReadProcessMemory(GetCurrentProcess, P, @Data, 4, BytesRead);
ReadProcessMemory(GetCurrentProcess, Pointer(Data), @Data, 4, BytesRead);
S := PChar(Data);
writeln(S);
readln;
end;
end.
после чего трет нулями юникодный и ансишный варианты.
Проблема в том что GetCommandLine возвращает данные из BaseAnsi(Unicode)CommandLine, а не из PEB, таким образом ничто не скрывается и даже банальный CreateToolhelp32Snapshot покажет эту гадость :)
Cj (2007-12-26 11:37:00) [27]
> slow!alfamoon!com (26.12.07 11:22) [3]
> Че, переписываешь в PEBе? А что, идея занятная, кстати.
> Но найти в нужном EPROCESSе имя труда не составит.
Заинтересовался?
Нет, PEB я даже не задеваю.
Но насчет EPROCESS (может, это я быстро)- запускаю pHunter(ms-rem) и ставлю только по EPROCESS - и показывает, то-же не то.
Но может это я все-таки не так делаю, попробуй ты поищи.
И заметь - я все операции провожу со СВОИМ процессом, никаких драйверов и dll(если думаешь, что руткит).
slow!alfamoon!com (2007-12-26 11:22:00) [28]Че, переписываешь в PEBе? А что, идея занятная, кстати. Но найти в нужном EPROCESSе имя труда не составит.
Cj (2007-12-26 11:00:00) [29]
> > Ручаюсь -это не вирус.Ты бы исходником свои заверения
> подкрепил.
вот этого я и боюсь: если до меня такого не делали, то как только выложу - сразу такие проги(вири) полезут.
из жизни
Один раз стоило показать экспериментальный код (там про проводник(не вирь))в институте, как сразу вири самопальные полезли. Я то знал, как их удалять, но хотелось в морду надавать всем у кого я флэхи брал, тк на ВСЕХ были самопалки.
Вот поэтому исходники я не хочу вылаживать до тех пор, пока не найду/найдут способ узнать путь процесса(даже кстати Каспер не определяет).
Я не заставляю тебя запускать его, даже при максимальной выкрутке защиты твоего Антивируса. Но если вири такие полезут?
И еще, за такое меня могуть засадить, как тех двоих.
DVM (2007-12-26 10:42:00) [30]
> Ручаюсь -это не вирус.
Ты бы исходником свои заверения подкрепил.