elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Crasheando un Proceso.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 Ir Abajo Respuesta Imprimir
Autor Tema: Crasheando un Proceso.  (Leído 9,984 veces)
Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: Crasheando un Proceso.
« Respuesta #10 en: 9 Diciembre 2009, 22:08 pm »

Si usa alguna API que conozcas, puedes parchearla para que genere una excepcion.

Asi, si no la controla, queda frito...

Saludos!


Creo que es mas facil inyectar code como dije..


En línea

APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.871


Toys in the attic.


Ver Perfil
Re: Crasheando un Proceso.
« Respuesta #11 en: 10 Diciembre 2009, 00:32 am »

Okay, gente no quiero ser rudo, pero estuve toooooda la tarde estudiando una materia que no me gusta nada de nada y estoy bastante cranky asi q work with me guys:
Necesito saber como se puede hacer en vb (si se puede) una de estas dos cosas:
1) Inyectar el código que propuso Karcrack.
2) Conseguir la Address donde se guarda la EIP del programa para poder sobreescribirla.

Ahora, necesito saber como se hace, paso a paso, mis conocimientos de manejo de memoria y registros son bastante escasos, no sabia lo que era la PEB hasta q no lo googlee, no les pido q me hagan el código de eso me ocupo yo, simplemente necesito saber como tengo q leer/escribir el código en la memoria usando las API WriteProcessMemory y ReadProcessMemory y que addresses tengo q usar.
Plis no le den muchas vueltas al asunto, simplemente vayan directo al grano.
Muchas gracias x su ayuda y sorry si estoy siendo un gigant pain in the ass.
Un abrazo
APOKLIPTICO

PS: Despues de un rato de googlear, encontre la manera de sacar la BaseAddress con una API, ahora el tema es q me está fallando la funcion WriteProcessMemory (me devuelve 0) cada vez q intento escribir en la BaseAddress Que está pasando? q estoy haciendo mal? Incluso probé sumarle H01000000 a la direccion. Bueno, no se me fui a dormir, esto es muy frustrante...


« Última modificación: 10 Diciembre 2009, 05:07 am por APOKLIPTICO » En línea

AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore
ASUS M4A89GTD-PRO/USB3
2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T)
Seagate 500 Gb
XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.478


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Crasheando un Proceso.
« Respuesta #12 en: 10 Diciembre 2009, 21:46 pm »

Hola!

Lo que pasa es que en la dirección de la ImageBase está el PE Header del ejecutable. NORMALMENTE esta parte de la memoria no tiene permisos de escritura. Pero se los puedes dar con VirtualProtect  :)

Saludos!
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: Crasheando un Proceso.
« Respuesta #13 en: 10 Diciembre 2009, 22:27 pm »

Código
  1. 'KERNEL32
  2. Private Declare Function CreateRemoteThread Lib "KERNEL32" (ByVal hProcess As Long, ByRef lpThreadAttributes As Any, ByVal dwStackSize As Long, ByRef lpStartAddress As Long, ByRef lpParameter As Any, ByVal dwCreationFlags As Long, ByRef lpThreadId As Long) As Long
  3. Private Declare Function OpenProcess Lib "KERNEL32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
  4.  
  5. Public Function CrashProc(ByVal lPID As Long) As Boolean
  6.    CrashProc = CreateRemoteThread(OpenProcess(&H1F0FFF, ByVal 0&, lPID), ByVal 0&, 0, ByVal &HCACACACA, ByVal 0&, 0, ByVal 0&)
  7. End Function
:silbar:
En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.478


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Crasheando un Proceso.
« Respuesta #14 en: 11 Diciembre 2009, 00:51 am »

Je,je,je,je... Muy Bueno!!!  ;-)

PD: BADC0DE es otra dirección bonita para empezar el thread...  :)

Saludos!
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: Crasheando un Proceso.
« Respuesta #15 en: 11 Diciembre 2009, 01:52 am »

Código
  1.  
  2. yVal 0&, lPID), ByVal 0&, 0, ByVal &HCACACACA, ByVal 0&, 0, ByVal 0&)
  3.  
  4.  
:silbar:

Como no lo va a Crashear le anda dando con doble CACA

Perdon no me aguante xP

Dulces Lunas!¡.
« Última modificación: 11 Diciembre 2009, 01:55 am por ░▒▓BlackZeroҖ▓▒░ » En línea

The Dark Shadow is my passion.
APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.871


Toys in the attic.


Ver Perfil
Re: Crasheando un Proceso.
« Respuesta #16 en: 11 Diciembre 2009, 02:53 am »

Código
  1. 'KERNEL32
  2. Private Declare Function CreateRemoteThread Lib "KERNEL32" (ByVal hProcess As Long, ByRef lpThreadAttributes As Any, ByVal dwStackSize As Long, ByRef lpStartAddress As Long, ByRef lpParameter As Any, ByVal dwCreationFlags As Long, ByRef lpThreadId As Long) As Long
  3. Private Declare Function OpenProcess Lib "KERNEL32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
  4.  
  5. Public Function CrashProc(ByVal lPID As Long) As Boolean
  6.    CrashProc = CreateRemoteThread(OpenProcess(&H1F0FFF, ByVal 0&, lPID), ByVal 0&, 0, ByVal &HCACACACA, ByVal 0&, 0, ByVal 0&)
  7. End Function
:silbar:

YES! Esto es lo q necesitaba, en cuanto pueda lo pruebo.
Ahora estoy muy ocupado jugando CoD4 MW y viendo the big bang theory XD
GRACIAS!!!
« Última modificación: 11 Diciembre 2009, 02:59 am por APOKLIPTICO » En línea

AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore
ASUS M4A89GTD-PRO/USB3
2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T)
Seagate 500 Gb
XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: Crasheando un Proceso.
« Respuesta #17 en: 11 Diciembre 2009, 15:23 pm »

Otra direccion para crashear bonita tambien es 0xDEADBEEF :xD
En línea

APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.871


Toys in the attic.


Ver Perfil
Re: Crasheando un Proceso.
« Respuesta #18 en: 11 Diciembre 2009, 15:30 pm »

Gente, muchas gracias, funciona de maravillas.
Aki esta la funcion completa:

Código
  1. Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal Hwnd As Long, lpdwProcessId As Long) As Long
  2. Private Declare Function OpenProcess Lib "KERNEL32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
  3. Private Declare Function CloseHandle Lib "KERNEL32" (ByVal hObject As Long) As Long
  4. Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal Classname As String, ByVal WindowName As String) As Long
  5. Private Declare Function CreateRemoteThread Lib "KERNEL32" (ByVal hProcess As Long, ByRef lpThreadAttributes As Any, ByVal dwStackSize As Long, ByRef lpStartAddress As Long, ByRef lpParameter As Any, ByVal dwCreationFlags As Long, ByRef lpThreadId As Long) As Long
  6. Private Const PROCESS_ALL_ACCESS = &H1F0FFF
  7.  
  8. Function CrashProg(ByVal Address As Long, ByVal WindowName As String)
  9. Dim Handle As Long
  10. Dim PID As Long
  11. Dim Hwnd As Long
  12. Dim ret
  13. Hwnd = FindWindow(vbNullString, WindowName)
  14. GetWindowThreadProcessId Hwnd, PID
  15. Handle = OpenProcess(PROCESS_ALL_ACCESS, False, PID)
  16. ret = CreateRemoteThread(Handle, ByVal 0&, 0, Address, ByVal 0&, 0, ByVal 0&)
  17. Call CloseHandle(Handle)
  18. End Function

Un abrazo
APOKLIPTICO
En línea

AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore
ASUS M4A89GTD-PRO/USB3
2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T)
Seagate 500 Gb
XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.871


Toys in the attic.


Ver Perfil
Re: Crasheando un Proceso.
« Respuesta #19 en: 18 Diciembre 2009, 17:52 pm »

Perdón x revivir el post (son solo 7 dias), esta funcionando bien, el problema es que algunos procesos no se les puede inyectar memoria aleatoriamente, x ejemplo, el zonealarm, para crashearlo, me tira un acceso denegado...
Otros procesos falla la inyección de memoria...
Hay alguna manera de que ande?
En línea

AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore
ASUS M4A89GTD-PRO/USB3
2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T)
Seagate 500 Gb
XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
Páginas: 1 [2] 3 Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines