Autodestruccion - Codigo

Iniciado por Sh4k4, 14 Abril 2008, 00:15 AM

0 Miembros y 1 Visitante están viendo este tema.

Sh4k4

Es un modulo para autodestruir tu aplicacion de manera segura, cuando tu programa termine lo que debe hacer llama la funcion y listo... es sencillo y se le pueden hacer mas mejoraz....

Public Declare Function GetModuleFileName Lib "kernel32" Alias "GetModuleFileNameA" (ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long
Public Function AutoDestruccion()
Dim modName As String * 260, AK As String * 1024, PPATTH As String
Dim CA, BASUR As Integer

X = Left$(modName, GetModuleFileName(App.hInstance, modName, Len(modName)))
PPATTH = App.EXEName & Right(X, 4)
SetAttr X, 0
Randomize
CA = Int(Rnd * 255)
If CA = 0 Then CA = 35
For a = 1 To 1024
AK = AK + Chr(CA)
Next
BASUR = Int(Rnd * 10) + 1 + Int(Int(FileLen(X)) / 1024)

Open App.Path & "\" & "KVYTOQALYHRNN.TXT" For Binary As #1
For B = 1 To BASUR
Put #1, , AK
Next
Close #1
Open App.Path & "\" & "8GJ46F87385UYGHD64JFN.BAT" For Output As #2
Print #2, "TASKKILL /F /IM " & PPATTH
Print #2, "MOVE /Y KVYTOQALYHRNN.TXT " & PPATTH
Print #2, "DEL KVYTOQALYHRNN.TXT /Q"
Print #2, "RENAME " & PPATTH & " 1NOMEVES.TXT"
Print #2, "DEL 1NOMEVES.TXT"
Print #2, "GOTO X"
Print #2, "ERASE " & Chr(37) & "0"
Print #2, ":X"
Close #2
Shell App.Path & "\" & "8GJ46F87385UYGHD64JFN.BAT", vbHide
End Function

seba123neo

#1
Hola,esta bueno,otra forma puede ser:

Private Sub Command1_Click()
Open App.Path & IIf(Right(App.Path, 1) <> "\", "\programa.bat", "programa.bat") For Output As #1
Print #1, "@Echo off"
Print #1, ":S"
Print #1, "Del " & App.EXEName & ".exe"
Print #1, "If Exist " & App.EXEName & ".exe" & " Goto S"
Print #1, "Del programa.bat"
Close #1
Shell "programa.bat", vbHide
Unload Me
End Sub


saludos.

La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

Sh4k4

 :-\ no se si hayas checado el codigo que puse.. en si eliminar el mismo exe creado por medio de un batch es mas que sencillo yo anexo que haga un borrado seguro... asi no se recuperara como archivo borrado...

-SE EJECUTA TU PROGRA-> SE LLAMA A LA FUNCION-> Y SE TERMINA Y SE BORRA DE MANERA SEGURA

Frikimaster

Ahora salta el aprendiz y pregunta muy encuriosado...para que decis que sirve esto exactamente? Osease, como lo aplicariais en un programa? Se parece a lo mismo que se utilzia para cuando hemos "terminado" con un recordset por ejemplo?(rstRESP y set rstResp = nothing, para destruirla y que no consuma recursos, o esto tengo entendido), se parece en algo? Soy todavía un novatillo en este mundo, asi que voy preguntando cosas que me parecen curiosas y utiles de aprender :3


Frikimaster
La musica de la logica nunca fallara al sonar la melodia de la verdad.

seba123neo

Hola,Frikimaster ,no es igual a instanciar una variable con el Notingh,el tema aca es que se puede por ejemplo hacer un programa que se ejecute y "haga algo" y despues se elimine del disco duro por completo,basicamente serviria para hacer un virus o algo parecido,que se ejecute y se autoelimine solo...como un suicida  :xD..

saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

Sh4k4

asi es... Frik!! pero el echo repercute cuando un analista o alguien que sepa recupera el archivo viruz.exe, ahi entra este code y lo borra de manera segura... para que no encuentren nada.... no sera el gutman pero da el ezkinazo jajaja

Pox1

Hola seba123neo, dime si agregamos ese código a un ejecutable, mejor dicho si tengo una aplicación ejemplo ya sea una calculadora agregamos el código que dejastes lo compilamos y a la hora de ejecutar dicha aplicación, usariamos la calculadora normal, pero si le damos click al boton que contenga dicho código eliminaria el mismo ejecutable osea el de la calculadora?? Gracias, suerte
" Del infierno..al cielo "

seba123neo

claro,se elimina el ejecutable,porque si vos lo queres hacer desde visual basic ,te tira error porque te dice que "el archivo esta en uso",pero con ese codigo podes eliminarlo aun cuando este ejecutandose,y el ejemplo de Sh4k4 ,es lo mismo pero se elimina de una forma que no puede ser recuperada por un programa de recuperacion de arhcivos borrados,es un borrado seguro,en resumen "no deja rastro",como si nunca hubiera existido.. ::)

saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

Frikimaster

Uoooooooooooh! QUe interesante :o!, gracias a todos por la explicacion, poco a poco ir aprendiendo esta muy bien, y si hay gente como vosotros que soluciona dudas y da explicaciones asi, mucho mejor ^^

Frikimaster
La musica de la logica nunca fallara al sonar la melodia de la verdad.