Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Ayuda Matar un proceso aunque cambie de nombre (https://www.clubdelphi.com/foros/showthread.php?t=52982)

lostprophets 06-02-2008 21:00:05

Ayuda Matar un proceso aunque cambie de nombre
 
weno actualmente uso esto:

Código Delphi [-]
function KillTask(FileName:String):integer;
var 
ContinueLoop:BOOL;
FSnapshotHandle:THandle;
FProcessEntry32:TProcessEntry32;
const 
PROCESS_TERMINATE=$0001;
begin 
FSnapshotHandle:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
FProcessEntry32.dwSize:=Sizeof(FProcessEntry32);
ContinueLoop:=Process32First(FSnapshotHandle,FProcessEntry32);
while integer(ContinueLoop)<>0 do 
begin 
if 
((UpperCase(ExtractFileName(FProcessEntry32.szExeFile))=UpperCase(FileName))
or (UpperCase(FProcessEntry32.szExeFile)=UpperCase(FileName)))
then 

Result:=Integer(TerminateProcess(OpenProcess(PROCESS_TERMINATE,BOOL(0),

FProcessEntry32.th32ProcessID),0));
ContinueLoop:=Process32Next(FSnapshotHandle,FProcessEntry32);
end; 
CloseHandle(FSnapshotHandle);
end; 


begin 
KillTask('Notepad.exe');
end

pero si le cambio de nombre al archivo se va a poder ejecutar no?

algo fijo y unico del archivo aparte del CRC ? PID? ayuda?

cHackAll 06-02-2008 21:09:09

Cita:

Empezado por lostprophets
...pero si le cambio de nombre al archivo se va a poder ejecutar no?

Pues dijiste CRC verdad? si obtienes el CRC o cualquier Hash podras identificar el ejecutable... es más, si haces un virus como muchos quieren y llegas a un nivel de polimorfismo; lamentablemente hay secciones únicas en el ejecutable que lo "delatan"

PD: No dejes de utilizar las etiquetas... para algo las han echo! [ delphi ]

Suerte.

lostprophets 06-02-2008 21:15:10

tonces para detectar un proceso de acuerdo al CRC seria???????? =SSS

cHackAll 06-02-2008 21:33:02

Cita:

Empezado por lostprophets (Mensaje 263873)
tonces para detectar un proceso de acuerdo al CRC seria???????? =SSS

Es una pregunta? te pido escribas en forma adecuada.

lostprophets 06-02-2008 21:35:05

entonces para detectar un proceso de acuerdo a su crc como seria






no abuses de tu poder...

cHackAll 06-02-2008 21:46:59

Cita:

Empezado por lostprophets (Mensaje 263884)
entonces para detectar un proceso de acuerdo a su crc como seria

Te explico; debes obtener la matriz del CRC32... luego al enumerar los procesos obtienes la ruta de la aplicación, abres el ejecutable y lo procesas para obtener su CRC; lo comparas con una lista que tengas de procesos "negros" y de acuerdo con el resultado de la comparación lo dejas o finalizas.

El anterior método es aplicable obteniendo la CRC desde la memoria... esto para el caso de que hayan renombrado la aplicacion; para ello en lugar de obtener la ruta y abrir el ejecutable; debes abrir la memoria virtual del proceso ajeno despues de haber habilitado el privilegio de Debugger en tu proceso.

En ambos casos la idea es comparar una "ID" en una lista.

Cita:

Empezado por lostprophets (Mensaje 263884)
no abuses de tu poder...

Poder? ehh bueno me alagas, pero dudo tener el poder de un dios griego o el poder de un volcan; pero en todas mis participaciones he respetado nuestra Guia de estilo. Simplemente mira mis respuestas y mira que tanto tiempo dedicas a tus preguntas para percatarte la desigualdad que existe. Lo de "alcarar tu pregunta" solo fue un consejo, si querias lo podías haber dejado como estaba y el destino del hilo hubiese sido otro.


Edito PD CRC32, en el Club hay ejemplos para abrir los archivos y "recorrerlos"

Saludos

jachguate 06-02-2008 23:05:32

Cita:

Empezado por lostprophets (Mensaje 263884)
no abuses de tu poder...

:eek::eek::eek:
¿cuál es el abuso de poder según vos aquí? :confused::confused::confused:


La franja horaria es GMT +2. Ahora son las 02:39:29.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi