ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование_OLD > С/С++, C#, Delphi, .NET, Asm
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #4961  
Старый 21.11.2009, 18:01
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

Репутация: 137
По умолчанию

0ldbi4

Функция завершения процесса по PID ( в том числе и системных)
Код:
function ProcessTerminate(dwPID:Cardinal):Boolean;
var
 hToken:THandle;
 SeDebugNameValue:Int64;
 tkp:TOKEN_PRIVILEGES;
 ReturnLength:Cardinal;
 hProcess:THandle;
begin
 Result:=false;
 // Добавляем привилегию SeDebugPrivilege
 // Для начала получаем токен нашего процесса
 if not OpenProcessToken( GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES
  or TOKEN_QUERY, hToken ) then
    exit;

 // Получаем LUID привилегии
 if not LookupPrivilegeValue( nil, 'SeDebugPrivilege', SeDebugNameValue )
  then begin
   CloseHandle(hToken);
   exit;
  end;

 tkp.PrivilegeCount:= 1;
 tkp.Privileges[0].Luid := SeDebugNameValue;
 tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;

 // Добавляем привилегию к нашему процессу
 AdjustTokenPrivileges(hToken,false,tkp,SizeOf(tkp),tkp,ReturnLength);
 if GetLastError()<> ERROR_SUCCESS  then exit;

 // Завершаем процесс. Если у нас есть SeDebugPrivilege, то мы можем
 // завершить и системный процесс
 // Получаем дескриптор процесса для его завершения
 hProcess := OpenProcess(PROCESS_TERMINATE, FALSE, dwPID);
 if hProcess =0  then exit;
  // Завершаем процесс
   if not TerminateProcess(hProcess, DWORD(-1))
    then exit;
 CloseHandle( hProcess );

 // Удаляем привилегию 
 tkp.Privileges[0].Attributes := 0; 
 AdjustTokenPrivileges(hToken, FALSE, tkp, SizeOf(tkp), tkp, ReturnLength);
 if GetLastError() <>  ERROR_SUCCESS
  then exit;

 Result:=true;
end;
Получить PID указанного процесса можно так
Код:
function GetProcID(Names: String): cardinal;
var
  PHandle: THandle;
  ProcEntry: TProcessEntry32;
  lpName, Name: string;
begin
  Result:=0;
  Name:=UpperCase(Names);
  PHandle:=CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  ProcEntry.dwSize:=sizeof(TProcessEntry32);

  if Process32First(PHandle, ProcEntry) then
  begin
    lpName:=ProcEntry.szExeFile;
    lpName:=UpperCase(lpName);
    if lpName=Name then
    Result:=ProcEntry.th32ProcessID;
  end;

  while Process32Next(PHandle,ProcEntry) do
  begin
    lpName:=ProcEntry.szExeFile;
    lpName:=UpperCase(lpName);
    if lpName=Name then
    Result:=ProcEntry.th32ProcessID;
  end;
  CloseHandle(PHandle);
end;
Не забудь добавить в uses TLHelp32

Как уже понял вызывается завершение процесса так
Код:
ProcessTerminate(GetProcID('Winrar.exe'));

Последний раз редактировалось ZET36; 21.11.2009 в 18:14..
 

  #4962  
Старый 21.11.2009, 18:06
0ldbi4
Постоянный
Регистрация: 14.04.2008
Сообщений: 327
Провел на форуме:
584699

Репутация: 69
По умолчанию

ZET спасибо

Последний раз редактировалось 0ldbi4; 21.11.2009 в 18:18..
 

  #4963  
Старый 21.11.2009, 18:07
Nullsleep
Познающий
Регистрация: 02.06.2009
Сообщений: 67
Провел на форуме:
237284

Репутация: 54
Отправить сообщение для Nullsleep с помощью ICQ
По умолчанию

В XP - WinExec('net stop SharedAccess', SW_HIDE);
 

  #4964  
Старый 21.11.2009, 18:20
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

Репутация: 137
По умолчанию

Цитата:
Сообщение от 0ldbi4  
ZET спасибо так то всё ясно но примеров не видел и не соображу где достать дискриптор и какой процесс у брэндмауэра?
Добавил примеры в предыдущий пост.

Процесс бранмаузера можно узнать заглянув в Панель управления-Центр обеспечения безопасности windows-Брандмаузер windows. И палить в диспечере задач, какой новый процесс вылезет
У меня просто файрвол стоит а брандмаузер отключон
 

  #4965  
Старый 21.11.2009, 18:24
0ldbi4
Постоянный
Регистрация: 14.04.2008
Сообщений: 327
Провел на форуме:
584699

Репутация: 69
По умолчанию

Nullsleep сработало, ZET ещё раз спасибо не хочется заморачиватся, сохранил пост использую в следующих проектах, а вот
Код:
ShellExecute (GetDesktopWindow(), 'open', 'http://downteam.ru/', '', '', SW_SHOWDEFAULT);
Что то не работает, хотя у меня вообще подобные вещи на компе не работают(залочены где то), но если ты уверен что робит Пуховой то так оставлю
 

  #4966  
Старый 21.11.2009, 19:04
Пуховой
Banned
Регистрация: 25.11.2007
Сообщений: 62
Провел на форуме:
1702086

Репутация: 89
По умолчанию

0ldbi4, в любом моем приложении, в меню "Сайт автора". По клику прописано как раз это:

ShellExecute (GetDesktopWindow(), 'open', 'http://downteam.ru/', '', '', SW_SHOWDEFAULT);
 

  #4967  
Старый 21.11.2009, 21:07
wolmer
Постоянный
Регистрация: 12.05.2009
Сообщений: 395
Провел на форуме:
4761503

Репутация: 229
По умолчанию

Код:
function TForm1.GetInd(): string;
var
 s:tsocket;
 addr: sockaddr_in;

 send1:string;
begin
 s:=socket(af_inet, SOCK_STREAM, 0);
 addr.sin_family:=AF_INET;
 addr.sin_addr.S_addr:=inet_addr(pchar('1'));
 addr.sin_port:=htons(80);

 if connect(s, addr, sizeof(addr))=0 then
  begin
    send1:='GET http://www.virustotal.com/vt/en/identificador HTTP/1.1'+#13#10+
'User-Agent: Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.2.15 Version/10.01'+#13#10+
'Host: www.virustotal.com'+#13#10+
'Referer: http://www.virustotal.com/ru/'+#13#10+
'Cookie: idioma=ru'+#13#10+
'Cookie2: $Version=1'+#13#10+
'Connection: Keep-Alive'+#13#10+#13#10;

  end;
end;
Не понимаю почему я не могу написать код после того как присвоил переменной send1 пакет,
т.е. хочу чтобы подсказки высветились (какие процедуры/функции доступны для написания)
он мне ниче не высвечивает а вылетает error окошко с текстом: "Unable to invoke Code Completion due to errors in source code" однако ошибок нету, компилируется нормально (однако если написать вместо пакета что нибуть другое -> дальше написание кода будет возможным)

Последний раз редактировалось wolmer; 22.11.2009 в 15:58..
 

  #4968  
Старый 21.11.2009, 21:56
slesh
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

глюк с делфи. такое бывает. попробуй перезапустить.
 

  #4969  
Старый 21.11.2009, 22:07
=Zeus=
Участник форума
Регистрация: 10.08.2009
Сообщений: 238
Провел на форуме:
724939

Репутация: 108
Отправить сообщение для =Zeus= с помощью ICQ
По умолчанию

Ребята, просветите.
Скачал исходничек программы для пинга. Все работает отлично. Но когда я увеличиваю размер пакета примерно до ~1300 байт, сервера перестают отвечать. Почему? Ведь максимально можно отправить около 50к.
Может специально стоит защита?

Последний раз редактировалось =Zeus=; 21.11.2009 в 22:49..
 

  #4970  
Старый 21.11.2009, 22:30
wolmer
Постоянный
Регистрация: 12.05.2009
Сообщений: 395
Провел на форуме:
4761503

Репутация: 229
По умолчанию

Цитата:
Сообщение от slesh  
глюк с делфи. такое бывает. попробуй перезапустить.
Все та же проблема
 
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ