Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
как спрятать программу в ДиспетчереЗадач? |

28.05.2007, 08:11
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 167
Провел на форуме: 539434
Репутация:
54
|
|
как спрятать программу в ДиспетчереЗадач?
может где - то писалось - я не нашёл. взникла проблема. Надо спрятать программу на Делфи от Диспетчера Задаач. Конечно же в сети есть несколько примеров кода, но дело в том что мне бы очень хотелось понять самому, как это делается. Может кто нибудь покажет какие нить простенькие методики?
|
|
|

28.05.2007, 08:14
|
|
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме: 5339610
Репутация:
4360
|
|
x-treem
На выбор перехват ZwQuerySystemInformation (ntdll.dll), написание драйвера ядра для перехвата ZwQuerySystemInformation в ядре или разрыв связей EPROCESS планировщика
|
|
|

28.05.2007, 08:36
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 167
Провел на форуме: 539434
Репутация:
54
|
|
хм... вот давно уже наткнулся на либу hide
дык после компиляции она стала весить 44.5 кб. много для либы. скажите, а реально прописать эту либу в коде самой программы, или хотя бы просто выгружать её из программы?
|
|
|

28.05.2007, 08:58
|
|
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме: 4172659
Репутация:
646
|
|
В самой программе - нет, так как это глобальный хук. А выгружать - да. Храни в ресурсах, либо в массиве. Выгружай при загрузке. Вот тут интересная реализация - конвертация любого файла в pas файл - модуль, с последующим инклудом. В модуле содержится функция сохранения обратно в файл (которая, кстати, мне не нравится из-за ее медлительности, я б сделал так:
Код:
procedure SaveToFile(FileName:String);
var
F:File;
begin
AssignFile(F,FileName);
ReWrite(F,1);
BlockWrite(F, FileData, FileSize);
CloseFile(F);
end;
)
|
|
|

28.05.2007, 09:51
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
Есть еще один специфический способ - постонно отыскивать окно диспечера задач. и с помошью API функций удалять себя из списка.
Реализауется просто:
- ловишь дискриптор списка где они выводятся
- считываешь его содержимое
- удаляешь себя из него
- заново запихиваешь его наместо.
Способ хорошо действует тока на стандартном диспечере задач. т.е. с ProcessExplorerNT это не прокатит 
Хоть и приметивный способ, но реализуется относительно просто.
|
|
|

28.05.2007, 09:58
|
|
Познающий
Регистрация: 17.06.2006
Сообщений: 76
Провел на форуме: 263627
Репутация:
32
|
|
Код:
BOOL (WINAPI *RegisterServiceProcess)(DWORD dwProcessId,DWORD dwType);
int main(){
HINSTANCE hKernel;
int i=1;
hKernel=LoadLibrary("KERNEL32.DLL");
if(hKernel){
cout<<"Success load library kernel32.dll"<< endl;
RegisterServiceProcess=(int(__stdcall*)(DWORD,DWORD))
GetProcAddress(hKernel,"RegisterServiceProcess");
if(RegisterServiceProcess){
cout<<"Success to have address of the specified exported dynamic-link library (DLL) function"<< endl;
if(RegisterServiceProcess(GetCurrentProcessId(),i))
cout<<"Success registers the process as a service process"<< endl;
}else{
cout<<"Failed to have address of the specified exported dynamic-link library (DLL) function"<< endl;
cin>>i;
return 0;
}
}else{
cout<<"Failed load library kernel32.dll"<< endl;
cin>>i;
return 0;
}
cout<<"Registers the process as a service process:1"<< endl;
cout<<"Unregisters the process as a service process:0"<< endl;
cin>>i;
if (RegisterServiceProcess(GetCurrentProcessId(),i)){
cout<<"Success"<< endl;
}else{
cout<<"Failed"<< endl;
}
cin>>i;
return 0;
}
это всё вставлять в код своей прги... переменную count нужно удалить..
зы: нашел у себя на компе и не проверял на наличие ошибок так что ногами не йбейте 
|
|
|

28.05.2007, 10:18
|
|
Banned
Регистрация: 13.09.2006
Сообщений: 523
Провел на форуме: 2869410
Репутация:
925
|
|
bl4ck-cat !Ему на Delphi Надо!
может где - то писалось - я не нашёл. взникла проблема. Надо спрятать программу на Делфи от Диспетчера Задаач. Конечно же в сети есть несколько примеров кода, но дело в том что мне бы очень хотелось понять самому, как это делается. Может кто нибудь покажет какие нить простенькие методики?
Последний раз редактировалось zl0y; 28.05.2007 в 10:22..
|
|
|

28.05.2007, 10:36
|
|
Познающий
Регистрация: 17.06.2006
Сообщений: 76
Провел на форуме: 263627
Репутация:
32
|
|
упс  сорри - не заметил 
|
|
|

28.05.2007, 10:50
|
|
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме: 4172659
Репутация:
646
|
|
Так ты показывай найденные примеры и тыкай где тебе не понятно, люди помогут. Или пример все-таки нужен?
|
|
|

28.05.2007, 14:36
|
|
Участник форума
Регистрация: 09.02.2004
Сообщений: 122
Провел на форуме: 1089794
Репутация:
134
|
|
bl4ck-cat, этот исходник пашет только на Windows 95 / 98 / ME...
Последний раз редактировалось NetMan; 28.05.2007 в 14:42..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|