Autor
|
Tema: Virtual File (API redirection) [Source] (Leído 3,647 veces)
|
cobein
|
Holi Holas =) Bueno, aca les dejo un modulito para emular la existencia de archivos, no esta 100% listo pero el ejemplo es totalmente funcional. Lo que hace basicamente es redireccionar las APIs utilizadas para leer archivos engañando a nuestro programa para que lea desde la memoria. El ejemplo muestra como usar LoadPicture para cara cargar un archivo BMP encryptado, desencryptandolo on the fly en memoria. Descarga: http://www.uploadsourcecode.com.ar/d/cYtS2QjvGRr0Kr8AxtuzEYFScMgV8xYV
|
|
|
En línea
|
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Muy bueno, tiene bastante utilidad Saludos
|
|
|
En línea
|
|
|
|
el_c0c0
Desconectado
Mensajes: 307
|
.
|
|
« Última modificación: 14 Septiembre 2008, 19:53 pm por el_c0c0 »
|
En línea
|
'- coco "Te voy a romper el orto"- Las hemorroides
|
|
|
LeandroA
|
Che esta muy bueno, pero la verdad no cacho una como lo hace, esto esta haciendo un hook a las dll?, de esta forma se puede engañar a un shell?
Saludos
|
|
|
En línea
|
|
|
|
~~
|
Pues leyéndolo por encima lo que hace es un hooking clásico poniendo un jmp en el comienzo de la función deseada para que salte a tu propia función, me lo he leido muy por encima, pero vamos, tiene toda la pinta de ser eso. El mecanismo es simple, si quieres lo explico un poco por encima, por que al principio cuesta pillarlo, pero vamos que en cualquier texto de rootkits lo encuentras. de esta forma se puede engañar a un shell? A que te refieres con eso? Si te refieres a ocultar archivos, procesos o lo que sea del ms-dos o windows en general si, se puede hacer de una forma similar a esa, la esencia es la misma, luego cambia mucho. Salu2
|
|
|
En línea
|
|
|
|
cobein
|
Exactamente pone un jmp en las API deseadas (en este caso CreateFile, CloseHandle, etc) asi las apunta a nuestro codigo y el codigo lo que hace es manejar un byte array como si fueran los datos en el disco, de esa manera logra que cualquier funcion que llame a estas apis sea redireccionada a nuetro archivo en memoria
|
|
|
En línea
|
|
|
|
el_c0c0
Desconectado
Mensajes: 307
|
.
|
|
« Última modificación: 14 Septiembre 2008, 19:43 pm por el_c0c0 »
|
En línea
|
'- coco "Te voy a romper el orto"- Las hemorroides
|
|
|
cobein
|
Por lo que vi usa CreateFile, CloeHandle, ReadFile y SetFilePointer para acceder al archivo. El tamaño del archivo aparentemete lo determina moviendo el puntero al final del archivo asi que no usa GetFileSize o GetFileSizeEx.
|
|
|
En línea
|
|
|
|
|
|