elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
30 Agosto 2008, 14:46  



+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General (Moderadores: Hendriҳ, E0N)
| | |-+  El programa mas pequeño que no haga nada (en ASM)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 2 [3] Ir Abajo Imprimir
Autor Tema: El programa mas pequeño que no haga nada (en ASM)  (Leído 944 veces)
Eternal Idol N&P

Desconectado Desconectado

Mensajes: 1.276


Assembly (x86/x64), C/C++, Kernel Mode (WDM/WDF)


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #30 en: 02 Febrero 2008, 17:10 »

logicamente antes de escribir la rutina debes obtener la direccion de sleep y guardarla en addrsleep.

Por lo cual sigue estando hardcodeada  (mientras no se resuelva en tiempo de ejecucion lo sera) ;D Y con el codigo que deje es exactamente lo mismo ... salvo que necesita una sección de datos y copiarla tambien ...
« Última modificación: 02 Febrero 2008, 17:12 por Eternal Idol » En línea

be closely tied to
(v.) = estar estrechamente ligado a
Ex: He had been wrapped up in a new project that was closely tied to the company's new growth.

"La economia nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de este"
Juan Domingo Peron
Ferсhu

Desconectado Desconectado

Mensajes: 1.225

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #31 en: 02 Febrero 2008, 17:11 »

Citar
<~>FeRcHu<~> se entiende aunque es demasiada complejidad innecesaria

Okas al menos allguien me entiene jaja con eso alcanza.

nhaalclkiemr no entiendo por q siempre planteas el problema indirecto para llegar a otra cosa jaja si al final siempre terminamos disviando al tema q realmente esta el problema.

por q para mi hacer eso para matar a un Av es como medio raro.

Osea, si podes escribir en su "memoria" seguramente podras likidarlo sin vueltas x eso no entiendo el problema jeje, De simular q el AV sigue corriendo?? de ultima te haces un mini prog q simule el AV mostrando un icono y unos nags jaja y listo.

pero creo q es medio complicado de la forma q lo encarass...

En línea

Eternal Idol N&P

Desconectado Desconectado

Mensajes: 1.276


Assembly (x86/x64), C/C++, Kernel Mode (WDM/WDF)


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #32 en: 02 Febrero 2008, 17:14 »

A, otra idea q se me a ocurrido, puedes hookear un api q use el av en concreto y q llame frecuentemente. Entonces, hookeas el api y cuando llame al api haces q se ejecute una funcion tuya q no haga nada, vamos q entre el un bucle con sleeps o algo asi.
Es mas simple q el metodo anterior, por lo menos a mi parecer
Salu2  >:D

Es otra solucion de una complejidad innecesaria  ;) Si tenemos privilegios para escribir en la memoria del proceso los tendremos para suspender sus hilos directamente, mucho mas facil y fiable.
En línea

be closely tied to
(v.) = estar estrechamente ligado a
Ex: He had been wrapped up in a new project that was closely tied to the company's new growth.

"La economia nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de este"
Juan Domingo Peron
E0N
Lab &
Moderador
*****
Conectado Conectado

Mensajes: 2.591


Por variar un poco de avatar.. :P


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #33 en: 02 Febrero 2008, 17:17 »

Citar
Es otra solucion de una complejidad innecesaria  wink Si tenemos privilegios para escribir en la memoria del proceso los tendremos para suspender sus hilos directamente, mucho mas facil y fiable.

Yo solo doy ideas, luego q haga lo q kiera o lo q mas facil le parezca ;)
En línea
®®
Colaborador

Desconectado Desconectado

Mensajes: 5.144


Ver Perfil
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #34 en: 02 Febrero 2008, 17:19 »

Citar
Por lo cual sigue estando hardcodeada  (mientras no se resuelva en tiempo de ejecucion lo sera) grin Y con el codigo que deje es exactamente lo mismo ... salvo que necesita una sección de datos y copiarla tambien ...

no esta hardcodeada, pq digamos que esto es una porcion de codigo dentro de tu programa que el valor inicial de addrsleep es 0 y desde el programa que va a escribir en el fichero le pondremos la direccion de esta funcion. una vez se ejecute la funcion en el otro archivo addrsleep ya no vale 0 si no que vale la direccion de sleep y es un codigo valido para cualquier version de win. para que me entiendas mejor:


codigo que abre y mapea el fichero
obtengo una direccion donde copiar mi rutina
obtengo direccion de sleep
guardo esta direccion en addrsleep
copio mi ruitina en el archivo (logicamente tb estoy copiando la direccion de sleep para el sistema donde se esta ejecutando el codigo)
modifico cabecera para que apunte a mi codigo
cierro todo

de este modo te digo.
En línea
Eternal Idol N&P

Desconectado Desconectado

Mensajes: 1.276


Assembly (x86/x64), C/C++, Kernel Mode (WDM/WDF)


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #35 en: 02 Febrero 2008, 17:24 »

no esta hardcodeada, pq digamos que esto es una porcion de codigo dentro de tu programa que el valor inicial de addrsleep es 0 y desde el programa que va a escribir en el fichero le pondremos la direccion de esta funcion. una vez se ejecute la funcion en el otro archivo addrsleep ya no vale 0 si no que vale la direccion de sleep y es un codigo valido para cualquier version de win. para que me entiendas mejor:


codigo que abre y mapea el fichero
obtengo una direccion donde copiar mi rutina
obtengo direccion de sleep
guardo esta direccion en addrsleep
copio mi ruitina en el archivo (logicamente tb estoy copiando la direccion de sleep para el sistema donde se esta ejecutando el codigo)
modifico cabecera para que apunte a mi codigo
cierro todo

de este modo te digo.

¿Que pasa si copio el ejecutable a otra maquina con otra version de Kernel32.dll? ¿No esta hardcodeada? En cuanto esa libreria cambie, por un KB, por un Service Pack, etc el programa se puede ir a la *****. En tu programa no esta hardcodeada, es cierto, pero en el ejecutable modificado si ... a eso me referia yo desde el principio. No hay ninguna diferencia con:

Código:
;addrSleep = variable obtenida con GetProcAddress por ejemplo, aunque podemos enlazar estaticamente
push 100
mov eax, addrSleep
call addrSleep
« Última modificación: 02 Febrero 2008, 17:26 por Eternal Idol » En línea

be closely tied to
(v.) = estar estrechamente ligado a
Ex: He had been wrapped up in a new project that was closely tied to the company's new growth.

"La economia nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de este"
Juan Domingo Peron
®®
Colaborador

Desconectado Desconectado

Mensajes: 5.144


Ver Perfil
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #36 en: 02 Febrero 2008, 17:25 »

hombre eso esta claro, pero no es logico copiar el ejecutable del antivirus "solo" normalmente se instala y ahi debe estar el otro programa para escribirle la rutina. aunque la podria sacar en runtime en un momento dado.
En línea
Eternal Idol N&P

Desconectado Desconectado

Mensajes: 1.276


Assembly (x86/x64), C/C++, Kernel Mode (WDM/WDF)


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #37 en: 02 Febrero 2008, 17:27 »

hombre eso esta claro, pero no es logico copiar el ejecutable del antivirus "solo" normalmente se instala y ahi debe estar el otro programa para escribirle la rutina. aunque la podria sacar en runtime en un momento dado.

Claro, el punto era demostrar que si estaba hardcodeada, no en el origen pero si en el destino. Evidentemente que en el origen es muy simple de conseguir la direccion pero no es tan facil en el destino.
En línea

be closely tied to
(v.) = estar estrechamente ligado a
Ex: He had been wrapped up in a new project that was closely tied to the company's new growth.

"La economia nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de este"
Juan Domingo Peron
®®
Colaborador

Desconectado Desconectado

Mensajes: 5.144


Ver Perfil
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #38 en: 02 Febrero 2008, 17:35 »

en el destino esta chupao  :P. hace ya mas de 2 años que escribi una "shellcode" que ejecutaba cmd sin usar direcciones hardcodeadas. en concreto en este hilo http://foro.elhacker.net/index.php/topic,55797.0.html y bueno ya discutimos (no se si tu eres raise ;) ) sobre el tema de guardar direcciones en la pila etc ... pero vamos que las direcciones las saca. ahi el codigo es un poco kk y largo ya que ahi estaba algo verde en algunos temas pero hace su funcion.
En línea
Eternal Idol N&P

Desconectado Desconectado

Mensajes: 1.276


Assembly (x86/x64), C/C++, Kernel Mode (WDM/WDF)


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #39 en: 02 Febrero 2008, 17:40 »

en el destino esta chupao  :P. hace ya mas de 2 años que escribi una "shellcode" que ejecutaba cmd sin usar direcciones hardcodeadas. en concreto en este hilo http://foro.elhacker.net/index.php/topic,55797.0.html y bueno ya discutimos (no se si tu eres raise ;) ) sobre el tema de guardar direcciones en la pila etc ... pero vamos que las direcciones las saca. ahi el codigo es un poco kk y largo ya que ahi estaba algo verde en algunos temas pero hace su funcion.

Si, esa tecnica tiene muchos años pero me mantengo en lo dicho, creo que sigue siendo un poco mas facil solo llamar a GetProcAddres  ;D No, yo soy Eternal Idol.
« Última modificación: 02 Febrero 2008, 17:42 por Eternal Idol » En línea

be closely tied to
(v.) = estar estrechamente ligado a
Ex: He had been wrapped up in a new project that was closely tied to the company's new growth.

"La economia nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de este"
Juan Domingo Peron
®®
Colaborador

Desconectado Desconectado

Mensajes: 5.144


Ver Perfil
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #40 en: 02 Febrero 2008, 17:42 »

Citar
Si, esa tecnica de scannear tiene años pero me mantengo en lo dicho, creo que sigue siendo un poco mas facil solo llamar a GetProcAddres

logicamente, pero yo estoy hablando para poder meter codigo en otros archivos y no meter direcciones.
En línea
Ferсhu

Desconectado Desconectado

Mensajes: 1.225

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #41 en: 02 Febrero 2008, 17:44 »

Citar
en el destino esta chupao  tongue. hace ya mas de 2 años que escribi una "shellcode" que ejecutaba cmd sin usar direcciones hardcodeadas. en concreto en este hilo http://foro.elhacker.net/index.php/topic,55797.0.html y bueno ya discutimos (no se si tu eres raise wink ) sobre el tema de guardar direcciones en la pila etc ... pero vamos que las direcciones las saca. ahi el codigo es un poco kk y largo ya que ahi estaba algo verde en algunos temas pero hace su funcion.

jaja si la conoco mui bien, si no me ekivoco leia getprocaddress de la iat o algo asi jeje.

emmmmmmm no nos vallamos por las ramas.

yo creo q lo mejor seria q suspenda el hilo y listo, si no pasa algo como  q el prog principal los reviva, seria la mejor opcion.
En línea

nhaalclkiemr

Desconectado Desconectado

Mensajes: 1.644


Máximo exponente 9DB9F1AEED2FADBDE 997BBE20FEDA92


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #42 en: 03 Febrero 2008, 16:14 »

Puff dios cuantos post :xD :xD

Vamos por partes...a ver E0N es normal que te consuma el 20% si tienes cuatro nucleos...las aplicaciones aun no estan hechas para que puedan aprovechar más de un nucleo y por eso un programa que gaste el 100% de CPU (por ejemplo un brute force) en un Dual Core solo consumirá de máximo el 50% y en un Quad el 25%...si te consume un 20% es que el resto de programas te están consumiendo lo otro 5%...pero es como si estuviera consumiendo el 100%...

Tiene razón <~>FeRcHu<~> que plantee el tema de una manera indirecta...pero es que tenía pensada otra cosa...tenia pensado cojer el nuevo ejecutable (el de ASM) y ponerlo por encima del otro...entonces ya quedaría inservible...pero claro perdia el icono...y eso fue de lo que no me di de cuenta...

A ver voy explicar justo lo que quiero...es para un AV-Killer...matar a los procesos se hacerlo...la cuestión es una vez cerrados ya los procesos, modificar los ejecutables de manera que parezcan que siguen igual la proxima vez que se ejecuten...con el icono y que si los ejecutas no den error...que permanezcan en ejecucion pero sin hacer nada...antes lo de C3 era para que al ejecutarlos se salieran inmeditamente...pero supongo que si permanecen ejecutandose sin hacer nada es menos cantoso...

Y esto lo quiero hacer modificando lo menos posible el ejecutable (aunke esto no es lo más importante) y sobre todo de una manera rapida...cosas complicadas llevarían bastante tiempo si lo hago para todos los ejecutables...además pensad que aun estoy con VB y no es lo mas rápido k hai...

Lo que tiene es que funcionar con todos los ejecutables (no quiero que quede ninguno vivo por ai xD) y debe funcionar en todos los XP...

A ver...lo de redireccionar Threads pues la verdad no se hacerlo y no se muy bien lo que es pero tengo una idea y pienso que no es lo que quiero hacer...o si me sirve?

Lo de usar el Sleep me parece al mejor idea...pero no se que es eso de "hardcodeada"...la cuestión es que no se modificar el ejecutable para que use una API que antes no tenía...como lo hago?...

Lo de copiar el programa en ASM que no hace nada por encima del otro (a pelo xD) no me gusta mucho, no quiero tener que andar cogiendo los recursos para volver a ponerselos...si puedo copiar un trozo de un code y ponerselo en algun lado sin modificar la cabecera y con eso conseguir lo que quiero mucho mejor...pero weno siempre es una alternativa...

Saludos ;)
« Última modificación: 03 Febrero 2008, 16:21 por nhaalclkiemr » En línea

StasFodidoCrypter 1.0 - 100%
StasFodidoCrypter 2.0- 85%
Fire AV/FW-Killer - 97%

CUIDADO!!!!

Ferсhu

Desconectado Desconectado

Mensajes: 1.225

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #43 en: 03 Febrero 2008, 18:03 »

Citar
Lo de usar el Sleep me parece al mejor idea...

Segun lo q yo entendi lo q vos keres es, dejar el AV funcionando pero q no haga nada, solo q aparente estar todo bien. si haces eso tenes q saber donde ponerlo para conseguir eso, y ademas tiene varios hilos el programa y x ej yo tengo el avg y tiene 4 archivos ejecutandose asi q seria un poco mas complicado.

Para mi tendrias q suspender los hilos, pero para eso tenes q conocer como funciona y q hace cada uno de ellos, y eso debe ser diferente para cada AV.

Tambien se podria anular las llamadas (calls) en los ejecutables, las nopeas, y dejar solo la interfaz del antivirus pero sin funcionabilidad pero hay 2 problemas, el primero es q tenes q conocer bastante como son x dentro cada uno, y el segundo es q para cada AV tenes q hacer un "trabajo" diferente, osea especifico. Asi q seria algo larguito jeje.
En línea

nhaalclkiemr

Desconectado Desconectado

Mensajes: 1.644


Máximo exponente 9DB9F1AEED2FADBDE 997BBE20FEDA92


Ver Perfil WWW
Re: El programa mas pequeño que no haga nada (en ASM)
« Respuesta #44 en: 04 Febrero 2008, 02:52 »

No...a ver sería muy profesional por ejemplo que pareciera que funcionara y no funcionase...eso es muy dificil...me llega con que al ejecutarlo no haga nada pero que si vas con el taskmgr.exe veas el proceso iniciado...

Por eso digo lo del el Sleep...sería poner en la direccion del EntryPoint un bucle infinito que no consuma CPU (la minima posible :xD)...por eso hablo del Sleep...

Saludos ;)
En línea

StasFodidoCrypter 1.0 - 100%
StasFodidoCrypter 2.0- 85%
Fire AV/FW-Killer - 97%

CUIDADO!!!!

Páginas: 1 2 [3] Ir Arriba Imprimir 
Ir a:  





Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC