elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
24 Mayo 2012, 15:22  


Tema destacado: Suscripción al boletín mensual de elhacker.net

+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Análisis y Diseño de Malware (Moderadores: Karcrack, [Zero])
| | |-+  Problema al sobrescribir
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema al sobrescribir  (Leído 1,672 veces)
MasterPunk


Desconectado Desconectado

Mensajes: 442


(-A-)


Ver Perfil WWW
Problema al sobrescribir
« en: 30 Septiembre 2010, 21:33 »

Hola. Estoy escribiendo un programillo que, aunque no está destinado a ser malware (aunque quien sabe... xD), tiene una estructura con cierta similitud a un virus (o eso me parece a mi). Como creo que el error no es de programación, sino que está causado porque windows no deja realizar una acción, os escribo este tema en este subforo.
Si pensais que no corresponde a esta sección, aceptad mis disculpas y el tema.

Comencemos: lo que trato de hacer es un programa (en c++) que se ejecute cada vez que abro el firefox. Lo estoy intentando de esta manera: (solo pondré la parte del codigo que nos interesa)

Código
#include <cstdlib>
#include <iostream>
#include <windows.h>
#include <stdio.h>
#include <dir.h>
 
int main()
{
    char filefox[]="C:\\Program Files\\Mozilla Firefox\\filefox.exe";
    FILE *fl = fopen(filefox,"r");
 
if( fl ) {    //Compruebo si el archivo filefox existe
fclose(fl);
exit(0); //Si existe se cierra el programa
}
else
{
CopyFile("C:\\Program Files\\Mozilla Firefox\\firefox.exe","C:\\Program Files\\Mozilla Firefox\\filefox.exe",FALSE);
//Si no existe hago una copia de firefox llamandola "filefox"
 
//AQUÍ ES DONDE ESTÁ EL FALLO, ahora intento sobrescribir firefox con este archivo
if(CopyFile("proyecto2.exe","C:\\Program Files\\Mozilla Firefox\\firefox.exe",FALSE)==1)
{printf("bien hecho"); //Se sobrescribe
}
else
{
   printf("mal hecho"); //No se sobrescribe
}
 
}
getchar();
}
 

(finalmente quedaría ejecutar "filefox.exe" para que se abra internet normalmente)

Por desgracia se imprime en pantalla "mal hecho". Lo estoy ejecutando como administrador, y con firefox.exe cerrado.

¿Hay algo que haya olvidado tener en cuenta?
¿Lo que intento hacer es posible?
¿Hay alguna otra forma de hacelo?


PD: por si hace falta, uso win7 =P
Gracias... MasterPunk
En línea

skapunky
Electronik Engineer &
CoAdmin
***
Conectado Conectado

Mensajes: 3.428



Ver Perfil WWW
Re: Problema al sobrescribir
« Respuesta #1 en: 1 Octubre 2010, 00:11 »

Que tal si matas el proceso de firefox.exe?  :xD Si el proceso esta abierto no te deja ni sobrescribir ni eliminar el archivo...

De todas formas, podrias leer sobre BHO para ejecutar cosas con el explorador.
En línea

APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.781


Toys in the attic.


Ver Perfil
Re: Problema al sobrescribir
« Respuesta #2 en: 1 Octubre 2010, 00:53 »

También podrías crear un stub que ejecute ambos firefox y tu programa, para que siga siendo funcional el firefox.
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.
MasterPunk


Desconectado Desconectado

Mensajes: 442


(-A-)


Ver Perfil WWW
Re: Problema al sobrescribir
« Respuesta #3 en: 1 Octubre 2010, 01:07 »

Que tal si matas el proceso de firefox.exe?  :xD Si el proceso esta abierto no te deja ni sobrescribir ni eliminar el archivo...

servirá
Código
system("taskkill firefox.exe");
??
En línea

APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.781


Toys in the attic.


Ver Perfil
Re: Problema al sobrescribir
« Respuesta #4 en: 1 Octubre 2010, 01:10 »

Mmh, mejor system("taskkill /f /im firefox.exe");
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.
MasterPunk


Desconectado Desconectado

Mensajes: 442


(-A-)


Ver Perfil WWW
Re: Problema al sobrescribir
« Respuesta #5 en: 1 Octubre 2010, 01:21 »

Mmh, mejor system("taskkill /f /im firefox.exe");

/f??

hara falta forzar para cerrar el firefox?? bueno, lo añado al programa y ya os cuento si funciona (pero ya para mañana)
En línea

APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.781


Toys in the attic.


Ver Perfil
Re: Problema al sobrescribir
« Respuesta #6 en: 1 Octubre 2010, 01:25 »

Porque si no lo forzas, puede llegar a no cerrarse.
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.
MasterPunk


Desconectado Desconectado

Mensajes: 442


(-A-)


Ver Perfil WWW
Re: Problema al sobrescribir
« Respuesta #7 en: 1 Octubre 2010, 01:35 »

Nada, no se cierra xD
algo he hecho mal.

De todas formas he cerrado el proceso "a mano" y tampoco sustituye el archivo.
En línea

APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.781


Toys in the attic.


Ver Perfil
Re: Problema al sobrescribir
« Respuesta #8 en: 1 Octubre 2010, 01:39 »

Debería cerrarse, probá el comando a mano.
Por que no usas GetLastError para ver cual es el error que te arroja?
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.
Jaixon Jax


Desconectado Desconectado

Mensajes: 855



Ver Perfil
Re: Problema al sobrescribir
« Respuesta #9 en: 1 Octubre 2010, 05:41 »

  TerminateProcess, GetExitCode, ProcessNext32 lee las msdn de esas apis con apis no hay falla a no ser que el proceso este protegido en ring 0 ;D eso de estar llamando cmd a cada rato es asqueroso  :P

  La cuestion es enumerar los procesos con ProcessNext32 comparas el nombre con firefox.exe si coincide obtienes el pid del proceso con OpenProcess y luego obtienes el exitcode con GetExitCode pasandole el pid como parametro y al final lo terminas con TerminateProcess pasandole el exitcode y el handle como parametro  :) ....
En línea

Tricalogo del buen forista:
  1.- No postear en hilos de Politica, ni religion, ni feminismo ni Machismo .....
  2.- Nunca solicitar ayuda por MP a alguien del staf .... ellos nunca responden ....
  3.- Aplaudir todos los "aportes" del staf aunque no los entiendas, o creas que no tienen importancia eso es buena onda ....
APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.781


Toys in the attic.


Ver Perfil
Re: Problema al sobrescribir
« Respuesta #10 en: 1 Octubre 2010, 14:42 »

Lo que vos decis igual, pero para lo que está siendo aplicado, no se va a poner a hacer todo eso, es asqueroso, opino lo mismo, pero es práctico.
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.
ApOkAlizE

Conectado Conectado

Mensajes: 131


¿sabes lo que vales? ¡consigue lo que te mereces!


Ver Perfil
Re: Problema al sobrescribir
« Respuesta #11 en: 3 Octubre 2010, 11:38 »

Que tal si matas el proceso de firefox.exe?  :xD Si el proceso esta abierto no te deja ni sobrescribir ni eliminar el archivo...

servirá
Código
system("taskkill firefox.exe");
??

no se con esto rpobablemente no s elelgue a terminar el proceso, intentalo con esto:
system("taskkill /f /im firefox.exe")
lo de /f es apra forzar la accion
En línea

Los virus informaticos son como las personas, hacen lo posible para destruir y hacen lo impossible para no ser destruidos... - ApOkAlizE

No nos atrevemos a muchas cosas porque son difíciles, pero son difíciles porque no nos atrevemos a hacerlas. -Seneca
APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.781


Toys in the attic.


Ver Perfil
Re: Problema al sobrescribir
« Respuesta #12 en: 3 Octubre 2010, 19:12 »

Sisi, es lo que dije yo
Mmh, mejor system("taskkill /f /im firefox.exe");
Con un nick parecido al mío tmb...
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] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
No puedo sobrescribir EIP (Linux) « 1 2 3 4 »
Bugs y Exploits
zhynar_X 46 8,700 Último mensaje 7 Enero 2011, 12:50
por Garfield07
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines