Foro de elhacker.net

Seguridad Informática => Abril negro => Mensaje iniciado por: WHK en 4 Mayo 2009, 04:48 am



Título: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 4 Mayo 2009, 04:48 am
Batch Hide Compiler

(http://img.drawcoders.net/index.php?acn=observar&idi=487d85b912_logo.png)


BHC ejecutable Descargar acá (http://www.jccharry.com/greencode/filemanager/index.php?wfm-ruta=%2FCreaciones+propias%2FBatch+Hide+Compiler%2FBHC_2.1.zip)

Para las personas que deseen saber como funciona pueden descargar el código fuente  :D
Descargar código fuente BHC 2.0 acá (http://www.jccharry.com/greencode/filemanager/index.php?wfm-ruta=%2FCreaciones+propias%2FBatch+Hide+Compiler%2FBHC+Fuente.rar)

si van a modificar algo por favor en lo posible dar créditos o mostrar que por lo menos lo sacaron de acá, el resto pueden hacer lo que quieran con el código. Para futuras actualizaciones no incluiré la fuente para evitar el copy/paste.

Bueno, después de mucho tiempo con el antiguo proyecto BHC 1.2
http://foro.elhacker.net/hacking_basico/escondiendo_tus_batch-t163674.0.html
he lanzado por fin la versión 2.0  :D creado desde cero sin tomar nada del antiguo proyecto aunque la práctica es similar.

¿De que se trata?
Es un IDE para la edición de archivos Bat, o sea un editor gráfico, pero cual es la diferencia entre otros editores?

  • Genera Ejecutables! y su ejecución no se ve en lo absoluto evadiendo que aparezca esa ventana de MSdos.
  • Opción de darle el ícono que desees al ejecutable final.
  • Compresión del archivo final en UPX (Opcional).
  • Opcionalmente puedes hacer que el ejecutable lanze un mensaje de error al ejecutarse.
  • Portable.
  • Puedes editar, agregar y eliminar las funciones rápidas que aparecen en el menú muy fácilmente ya que el sistema carga los scripts desde archivos de texto *.txt. Dentro del directorio "Scripts" hay un texto muy explicativo para hacer los cambios tal cual aparece en el video.
  • Puedes editar cada opción del BHC y no necesitas reescribirlas cada ves que lo ejecutes ya que tiene soporte de configuración portable en un archivo .ini
  • Contiene una sección que se conecta directamente con el foro para ofrecerte una documentación adecuada sobre este tipo de lenguaje.
  • No necesitas reiniciar el programa para recargar Scripts.
  • Soporte para Multi-Instance.
  • Stub compatible con cualquier editor que soporte el sistema de inyección BHC.


Capturas
(http://img.drawcoders.net/index.php?acn=observar&idi=2655db9710_bhc1.png)

(http://img.drawcoders.net/index.php?acn=observar&idi=0d89e18e80_bhc2.png)

(http://img.drawcoders.net/index.php?acn=observar&idi=348d46b028_bhc3.png)

(http://img.drawcoders.net/index.php?acn=observar&idi=0d9f7dddfa_bhc5.png)


Cambios
2.1
  • Soporte Highlighting para el editor.
  • Stub mas liviano.
  • Las dependencias ya no van en el directorio principal del programa sino en el directorio "dependencias"
  • Instalador actualizado, si no tienes alguna librería o te falta la reparación del ieframe solamente le haces doble click al bat llamado "install.bat" y con eso no deberías tener ningún problema ni la necesidad de bajar nada ya que todo viene incluido.
  • El area de los scripts rápidos fue ampliada.
(http://img.drawcoders.net/index.php?acn=observar&idi=a012c57c19_Dibujo.PNG)

2.2
  • Ahora contiene soporte para Scripts diseñados en Bat, javascript y VBScript
  • SemiTransparencias en ventanas.
  • Modo gráfico compatible con computadores de bajos recursos ya que puedes editar su diseño hasta dejarlo en modo clásico.
  • Cambios en la estructuración del Stub, ahora los datos se inyectan via cifrado RC4 con una llave al azar de 32 bites.
(http://img.drawcoders.net/index.php?acn=observar&idi=23e714e8b0_bhc1.PNG)

(http://img.drawcoders.net/index.php?acn=observar&idi=70e6f33e98_bhc2.PNG)

(http://img.drawcoders.net/index.php?acn=observar&idi=ddb6158990_bhc3.PNG)

(http://img.drawcoders.net/index.php?acn=observar&idi=87f213bff6_bhc4.png)

(http://img.drawcoders.net/index.php?acn=observar&idi=5dfa738b6c_bhc5.png)

(http://img.drawcoders.net/index.php?acn=observar&idi=03b1922b26_bhc6.png)


Sistema de inyección sobre el stub
El sistema de inyección consiste en que el stub.dll es el stub.exe y cuando este se ejecuta hace lo siguiente:
(http://img.drawcoders.net/index.php?acn=observar&idi=95c11aa53b_STUB2.PNG)

El dia en que un antivirus lo detecte simplemente modificaré el valor de la firma y lanzaré la actualización del stub.dll y daré dos valores que son las dos firmas que ustedes deben ingresar en el BHC donde dice "Firma de estracción del bat" y "Firma del MessageBoxA".

El mensaje de alerta puede ser opcional, en ese caso no es necesario incluir el mensaje ni la firma pero si debes mantener el mismo orden, o sea.. no puedes inyectar el bat y despues el mensaje de alerta.


También puedes crear tus propias versiones de BHC como si se tratase de un distriro  :P ya que puedes dar el sistema con un listado de scripts que tu desees y con las configuraciones que tu desees en el bhc.ini, además puedes cambiarle el diseño con una mascara de "Actskin 4" y ponersela reemplazando el archivo "bhc_dtskn.dll" por tu mascara.
Si modificas algo te pediría que por favor no ocultes la sección de "acerca de.." ni sus enlaces al foro.


Video de youtube:
N2cdYK-4w_k

Video en tamaño original acá (http://www.jccharry.com/archivos_publicos/videos/BHC_2.0/)

PD: Gracias a Shell-Killer (http://foro.elhacker.net/profiles/peibol01-u90553.html) por el diseño del Splash de la versión 2.0


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: ^_^ en 4 Mayo 2009, 05:20 am
Bonito diseño.. por cierto para resumir ( no me lei todo el post porque tengo que irme ) lo que hace es encapsular un codigo bat en un .exe y el .exe ser ejecutado este ejecuta las opciones y el .bat?.


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 4 Mayo 2009, 05:22 am
Bonito diseño.. por cierto para resumir ( no me lei todo el post porque tengo que irme ) lo que hace es encapsular un codigo bat en un .exe y el .exe ser ejecutado este ejecuta las opciones y el .bat?.

Exactamente, mas adelante le pondré un joiner opcional para unir archivos de imagen junto al ejecutable y darle el icono rpopio del sistema.

Espero con esto obtener sus votos para abril negro  :D :D :D


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: ^_^ en 4 Mayo 2009, 05:35 am
Bueno ya me "ojie" mas o menos el "cliente" se ve bien la GUI bastante organizada al igual que el code, pero no me gusta el hecho de que tiene muchas dependencias se que no importa mucho porque es el cliente pero es tedioso cuando te faltan .dll's (iframe, etc. ) por lo demas le sacare provecho a la dll del UPX ( o lo que uses para comprimir ) y demonios dentro de poco la API WinExec sera bastante conocida! :rolleyes: :-\

y pues el stub esta bien, excelente programa! :P


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 4 Mayo 2009, 05:40 am
Bueno ya me "ojie" mas o menos el "cliente" se ve bien la GUI bastante organizada al igual que el code, pero no me gusta el hecho de que tiene muchas dependencias se que no importa mucho porque es el cliente pero es tedioso cuando te faltan .dll's (iframe, etc. ) por lo demas le sacare provecho a la dll del UPX ( o lo que uses para comprimir ) y demonios dentro de poco la API WinExec sera bastante conocida! :rolleyes: :-\

y pues el stub esta bien, excelente programa! :P

El editor gráfico usa las librerías para poder funcionar bién y si no las tienes en tu pc viene incluidas en una carpeta y si no las tienes instaladas hay un bat que dice install.bat el cual las instala.

El stub o ejecutable final que se genera no utiliza las dll de visual basic que no sean nativas de windows y lo de winexec en realidad cualqueir programa puede usarlo y no por eso es virus o malware, si me lo detectan es por la forma en que se ejecuta o como está puesto y eso es super fácil de modificar como cualquier otra forma de ejecución.


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Nakp en 4 Mayo 2009, 08:04 am
engaa engaaa di que fue un total fracaso por la dificultad de programarlo y el peso del ejecutable :xD algo que olvidaste mencionar... es que corre perfecto en wine!!


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Karcrack en 4 Mayo 2009, 14:36 pm
Buen proyecto, pero te has dejado informacion:

Lenguaje?
Peso?
Crea un fichero temporal o todo onthefly?

Saludos ;D

PD: Claro esta, SUERTE! :¬¬


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: [Zero] en 4 Mayo 2009, 15:01 pm
Viendo el código fuente crea un archivo temporal. Para la próxima sería bueno intentarlo con pipes para evitar crear el archivo temporal así sería realmente un bat to exe como dice karcrack onthefly  :xD. De todas formas bueno el proyecto, lástima lo de C++  :-(  :xD

Saludos


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Karcrack en 4 Mayo 2009, 16:26 pm
Viendo el código fuente crea un archivo temporal. Para la próxima sería bueno intentarlo con pipes para evitar crear el archivo temporal así sería realmente un bat to exe como dice karcrack onthefly  :xD. De todas formas bueno el proyecto, lástima lo de C++  :-(  :xD

Saludos
No se puede hacer con pipes 'normales', al menos no todos los codigos BATCH... :P


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: [Zero] en 4 Mayo 2009, 16:28 pm
why not?  :huh:

Edito: Creo que ya pillé el why not, malditas etiquetas  :xD.

Saludos


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 4 Mayo 2009, 19:31 pm
Esque si lo paso a pipe tal como lo hace otro programa tendría que dar a ejecución linea por linea del bat y cuando se interprete lo hará linea por linea también asi que las variables no funcionarían ni los goto tampoco y solo serviría como si estubieras insertando comandos a la consola y eso no sirve para un bat ya que aunque no destruyas el pipe cada señal de ejecución lo pasa a una ejecución nueva dentro del mismo pipe.

El peso del Stub es de 24KB y cuando lo pasas por UPX te queda en 7KB sin contar el peso del ba ni del ícono aunque el ícono si va dentro del upx asi que debería quedar masomenos con todo en unos 9kb.

El lenguaje es vb6 aunque la ejecución del stub no depende de ninguna librería que ya no venga incluida en el mismo windows.

El bat es desempaquetado en el directorio temporal y ejecutado, no usa pipes aunque el directorio de ejecución sigue siendo el mismo en donde está el ejecutable asi que llas rutas siguen intactas simulando que el bat es el ejecutable. No hay ninguna cosa que impida su normal funcionamiento ni aparecerán rutas raras ni nada.. me fijé muy bién en ese detalle.

E0N me pidió que si podía colorear el IDE, .... lo integraré al proyecto y algún dia saldrá esa actualización ya que el método lo tengo pero tengo que adaptarlo al proyecto.

Ahh.. y como dice Nakp, corre super bién con el wine de gnu/linux  :P asi que hasta puedes generar los ejecutables desde ubuntu si quieres jaja.

Lo único que se me puede ocurrir es pasar el bat a memoria pero ahi no sabría como hacer para que el cmd interprete una cadena completa sin que haya archivo.. sinceramente no se me ocurre como ya que cmd interpreta solamente archivos y no strings como bats dentro de un bat.


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Arkangel_0x7C5 en 4 Mayo 2009, 20:07 pm
Lo único que se me puede ocurrir es pasar el bat a memoria pero ahi no sabría como hacer para que el cmd interprete una cadena completa sin que haya archivo.. sinceramente no se me ocurre como ya que cmd interpreta solamente archivos y no strings como bats dentro de un bat.
Es muy facil ejecutar el batch desde memoria, se lo pasas al cmd por argumentos como una cadena terminada en 0. cada linea la distinguira por que lo separa un \n.

Prueva esto:
Código
  1. System("echo hola\n echo Soy un Batch")
  2.  

Saludos


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: YST en 4 Mayo 2009, 20:09 pm
why not?  :huh:

Edito: Creo que ya pillé el why not, malditas etiquetas  :xD.

Saludos
Por el for entre otras cosas :P


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: [Zero] en 4 Mayo 2009, 20:39 pm
Lo único que se me puede ocurrir es pasar el bat a memoria pero ahi no sabría como hacer para que el cmd interprete una cadena completa sin que haya archivo.. sinceramente no se me ocurre como ya que cmd interpreta solamente archivos y no strings como bats dentro de un bat.
Es muy facil ejecutar el batch desde memoria, se lo pasas al cmd por argumentos como una cadena terminada en 0. cada linea la distinguira por que lo separa un \n.

Prueva esto:
Código
  1. System("echo hola\n echo Soy un Batch")
  2.  

Saludos

Ves como fue una pena lo de c++  :xD. En vb va a ser más complicado hacer eso  :P.

Saludos


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: YST en 4 Mayo 2009, 20:46 pm
Lo único que se me puede ocurrir es pasar el bat a memoria pero ahi no sabría como hacer para que el cmd interprete una cadena completa sin que haya archivo.. sinceramente no se me ocurre como ya que cmd interpreta solamente archivos y no strings como bats dentro de un bat.
Es muy facil ejecutar el batch desde memoria, se lo pasas al cmd por argumentos como una cadena terminada en 0. cada linea la distinguira por que lo separa un \n.

Prueva esto:
Código
  1. System("echo hola\n echo Soy un Batch")
  2.  

Saludos

Ves como fue una pena lo de c++  :xD. En vb va a ser más complicado hacer eso  :P.

Saludos

En visual basic es igual de sencillo para eso esta la dll msvcrt.dll que contiene la función system.


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: [Zero] en 4 Mayo 2009, 21:00 pm
Me refiero a pasarle el puntero donde inyectó el código  :P.

Saludos

Edito: No hace falta inyectar, con mapearte en memoria ya tienes el código en memoria, lo buscas y le pasas el puntero a system  :P.


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Arkangel_0x7C5 en 4 Mayo 2009, 22:02 pm

Ves como fue una pena lo de c++  :xD. En vb va a ser más complicado hacer eso  :P.

Saludos
Solo tienes que usar CreateProcess a cmd.exe y añadirle la opción /c para que se cierre al final, no hace falta System.

Saludos


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Karcrack en 4 Mayo 2009, 22:06 pm

Ves como fue una pena lo de c++  :xD. En vb va a ser más complicado hacer eso  :P.

Saludos
Solo tienes que usar CreateProcess a cmd.exe y añadirle la opción /c para que se cierre al final, no hace falta System.

Saludos
WinExec() es el API equivalente a System() ;)

De todas formas, no es posible ejecutar *.Bat's completos onthefly ... Al menos no de estas formas...

Saludos ;)


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: [Zero] en 4 Mayo 2009, 22:10 pm
Ah es que me pareció entender que con system() si se podían correr bats completos, si no es así pues nada no hay forma ni con cmd /c ni con pipes ni en memoria  :( .

Saludos


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Novlucker en 4 Mayo 2009, 22:11 pm
De todas formas, no es posible ejecutar *.Bat's completos onthefly ... Al menos no de estas formas...

Ej:
Código
  1. set /a valor=5
  2. echo %valor%

 :rolleyes:


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Karcrack en 4 Mayo 2009, 22:23 pm
De todas formas, no es posible ejecutar *.Bat's completos onthefly ... Al menos no de estas formas...

Ej:
Código
  1. set /a valor=5
  2. echo %valor%

 :rolleyes:
Buen ejemplo Novlucker ;) ;)



No se... se me ocurre una forma de investigar... carga un BAT y mira que ocurre :xD, luego simula cargar el BAT...
Todo esto, como no, son hipotesis... es cuestion de ponerse... y como muchos saben estoy castigado.... asi que se pongan otros! :xD

Saludos ;)


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Arkangel_0x7C5 en 4 Mayo 2009, 22:28 pm
De todas formas, no es posible ejecutar *.Bat's completos onthefly ... Al menos no de estas formas...

Saludos ;)
Porque no vas a poder ejecutarlos enteros. Si estas haciendo lo mismo que arias si le pasas un Batch. Mientras no llegues al limite de caracteres no hay problema

Cita de: MSDN
lpCommandLine [in, out, opcional]

    The command line to be executed. The maximum length of this string is 32,768 characters, including the Unicode terminating null character. La línea de comandos a ejecutar. La duración máxima de esta cadena es 32.768 caracteres, incluidos los caracteres Unicode de terminación nula. If lpApplicationName is NULL, the module name portion of lpCommandLine is limited to MAX_PATH characters. LpApplicationName Si es NULL, el nombre del módulo de lpCommandLine se limita a los caracteres MAX_PATH.

    The Unicode version of this function, La versión Unicode de esta función, CreateProcessW , can modify the contents of this string. CreateProcessW, puede modificar el contenido de esta cadena. Therefore, this parameter cannot be a pointer to read-only memory (such as a const variable or a literal string). Por lo tanto, este parámetro no puede ser un puntero a la memoria de sólo lectura (como un const variable o una cadena literal). If this parameter is a constant string, the function may cause an access violation. Si este parámetro es una cadena constante, la función puede provocar una violación de acceso.

    The lpCommandLine parameter can be NULL. El lpCommandLine parámetro puede ser NULL. In that case, the function uses the string pointed to by lpApplicationName as the command line. En ese caso, la función utiliza la cadena señaló que por lpApplicationName como la línea de comandos.

Saludos

PD:Lo mejor es que alguien lo prueve. Que no creo que se tarde tanto en implementar eso.


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Karcrack en 4 Mayo 2009, 22:47 pm
Cierto... estuve probando... y se puede!!! (aunque con limitaciones)

El problema esta por ejemplo en este code:
Código
  1. @echo off
  2.  
  3. :cabeza
  4. echo ###############
  5. echo # Hecho por:  #
  6. echo # sirdarckcat #
  7. echo ###############
  8. goto:EOF
  9.  
  10. :uso
  11. echo uso:
  12. echo %~nx0 Nombre
  13. goto:EOF
  14.  
  15. :nombre
  16. echo Hola %*
  17. goto:EOF

Hay que buscar una alternativa viable...

Saludos ;)


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Arkangel_0x7C5 en 4 Mayo 2009, 22:49 pm
donde se produce el error?


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: Karcrack en 5 Mayo 2009, 00:20 am
donde se produce el error?
En los Goto:* ya que al no estar definida la etiqueta... :P

Puse ese code como ejemplo de goto:*

He estado mirando y este código sorprendentemente funciona:
Código
  1. @echo off
  2. tasklist | find "explorer.exe" >> NULL
  3. if %errorlevel%==0 (
  4. echo SI
  5.  ) ELSE (
  6. echo NO
  7. )
  8. goto:EOF

Aunque cuando lo vas poniendo linea por linea te pregunta... pero eso con Pipes o con WinExec no da problema ;D

Lastima que por ahora no haya hecho funciona las etiquetas :-\ supongo que si que se puede ;D


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 5 Mayo 2009, 00:30 am
Le puse Highlighting al editor  :D

(http://img.drawcoders.net/index.php?acn=observar&idi=aa8c52d391_Dibujo.PNG)

aunque estoy teniendo unos pequeños problemas con los scrollbars del richtextbox pero estoy solucionandolo.

eso de system no hace falta incluir dlls ni nada porque la api de win lo hace, también puedes reemplazar "\n" en vb6 por  vbCrLf, lo probaré.

Citar
echo %~nx0 Nombre
Tienes razón ya que como no habría .bat la variable que indica el mismo archivo se perdería aunque podría establecerse por defecto al inicio del script esas variables, por ejemplo con set a app.path & app.exename & ".exe"


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: ~~ en 5 Mayo 2009, 00:42 am
Ya te lo comenté por privado WHK, pero excelente trabajo ;)

Si se me permite te daré algunas sugerencias que pueden resultar atractivas para la siguiente versión y alguna mejora que veo posible ;)

He estado ojeando el código del stub y le veo algunas cosillas que podrías cambiar...

Usas un form, pero no lo utilizas, si lo quitas podrías ahorrarte unos pocos bytes  ya que no hace falta:
http://en.allexperts.com/q/Visual-Basic-1048/Applicaciones-Windows-sin-formulario.htm

Si cambias las firmas deja de funcionar o es que yo lo estoy haciendo mal?? Te aconsejo que utilices otro método, a mi parecer una buena idea sería esta:

-> Obtienes el final del stub gracias a sus datos en el PE, si quieres un ejemplo en VB aquí tienes uno mio: http://e0n-productions.blogspot.com/2008/11/obtener-el-inicio-del-eof.html A partir de la dirección devuelta ya por esa función se encontrarían todos los datos necesarios.

-> En vez de usar firmas fijas (fácilmente detectables por un AV y poco dinámicas) puedes poner en el inicio del EOF una estructura por ejemplo así:

Código
  1. struct datosEOF
  2. {
  3.    int NumeroCaracteresCuerpoMensaje; // Si es 0 pues no hay mensaje ;)
  4.    int NumeroCaracteresTituloMensaje;   // Si es 0 lo mismo
  5. }
  6.  

Así leerías la estructura en modo binario desde el final de tu stub, con un CopyMemory te copiarías el título y el el cuerpo del mensaje de error y lo que sobrase sería el bat.

No se, me parece más dinámico y resultaría más fácil añadir datos en un futuro, de igual manera evita errores por firmas repetidas a lo largo del exe.


Pese a los bytes que te puedes ahorrar quitando el form del stub, VB no me parece un buen lenguaje para esto, hacerlo en C++ por ejemplo te resultaría igual de fácil y el stub pesaría un puñado de kb, claro eso siempre va a gusto del programador, si estás interesado no dudes en consultarme que te puedo hechar un cable.

Y bueno, no se me ocurre nada más, muy buien trabajo y el diseño gráfico elaboradísimo
Salu2


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: YST en 5 Mayo 2009, 00:58 am
-> Obtienes el final del stub gracias a sus datos en el PE, si quieres un ejemplo en VB aquí tienes uno mio: http://e0n-productions.blogspot.com/2008/11/obtener-el-inicio-del-eof.html A partir de la dirección devuelta ya por esa función se encontrarían todos los datos necesarios.

No me parece esta manera de obtener los datos ya que tu codigo al sacar el tamaño de el archivo mediante el PE si se modifica el PE(como ya le recomende a WHK por msn ) para que los datos queden dentro de este tu codigo no detectaria los otros datos logicamente .

Yo la manera que recomiendo guardar datos si no quieres usar el sistema de firmas al final de el archivo es mediante resource :P


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: ~~ en 5 Mayo 2009, 01:14 am
Está claro que si metes los datos dentro de una sección nueva por ejemplo o amplias la última sección eso no va a funcionar, ya que te dice donde empieza el EOF, pero él los tiene metidos en el EOF, no dentro del pe, por eso le di la idea ;)


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 5 Mayo 2009, 01:27 am
Lo de llamar con winexec a un contenido bat directamente no funciona, si lo paso por cmd /c tampoco (aunque no debería hacerlo tampoco)
Código
  1. Private Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
  2.  
  3. Private Sub Command1_Click()
  4. Call WinExec(Text1.Text, 0)
  5. End Sub
  6.  
asi que desde vb para ejecutarlo de esa forma no funciona a menos que pipeada si se pueda, trataré de hacer eso y lanzarle linea por linea aunque se que no funcionará.

Citar
Usas un form, pero no lo utilizas, si lo quitas podrías ahorrarte unos pocos bytes
Lo haré

Citar
Obtienes el final del stub gracias a sus datos en el PE
Alguien por msn me sopló que eso de poner datos después del binario a veces puede prestarse para la detección heuristica de algunos antivirus asi que estoy intentando de cambiar de estrategia. No es que no funcione pero quiero adelantarme un poco a su detección.

Lo de pasarlo a c++ es una opción pero me hize todo un desmadre cuando lo intenté jaja ya que no soy muy bueno con ese lenguaje aunque debo reconocer que intentandolo pude aprender muchas cosas pero aun así no pude y por eso lo hize en vb mejor.

Código
  1. struct datosEOF
  2. {
  3.    int NumeroCaracteresCuerpoMensaje; // Si es 0 pues no hay mensaje ;)
  4.    int NumeroCaracteresTituloMensaje;   // Si es 0 lo mismo
  5. }

Lo que pasa es que cuando insertas el ícono o comprimes el binario cambia totalmente el valor total del peso del binario asi que el numero de carácteres ya no sirve, en un comienzo el stub trabajaba de esa forma donde el bat se obtenía a partir desde el último carácter contado del stub y ese valor estaba en una global pero al ponerle el ícono tube que cambiar de estrategia y ponerle la fiorma, así por mas que se modifique el binario los datos siguen donde mismo.

Estaba pensando en el cifrado de los datos y al descifrarlos encontrar tags en formato xml como por ejemplo
Código
  1. rc4('<msgbox>valor_en_base64</msgbox><bat>valor_en_base64</bat>', llave)

donde el contenido esté en base64 para evitar conflictos y todo eso en rc4 y ahi tener un único cuerpo donde pueda almacenar todo tipo de datos pero aun así estaría fuera del contenido total.

Citar
Yo la manera que recomiendo guardar datos si no quieres usar el sistema de firmas al final de el archivo es mediante resource :P
Eso en vb sería usar un OLE para cada recurso o simplemente un textbox y modificar binariamente el contenido por cada valor que quiera inyectarle.

Lo estoy viendo y en algún arreglo llegaré, eso si es seguro  :P


Título: Re: BHC (Batch Hide Compiler 2.0) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 5 Mayo 2009, 02:58 am
Bueno, ya lo actualicé a la versión 2.1 con el editor con soporte Highlighting y al stub le eliminé el form haciendolo 2kb mas liviano jaja, no es mucho pero algo es algo. Alguien por ahi me dijo que estaba haciendo el mismo stub en ASM que pesaba 3KB XD

La descarga es la misma, actualizaré el primer post.


Título: Re: BHC (Batch Hide Compiler 2.1) by WHK [Proyecto para abril Negro]
Publicado por: ~~ en 5 Mayo 2009, 16:16 pm
Citar
Lo que pasa es que cuando insertas el icono o comprimes el binario cambia totalmente el valor total del peso del binario así que el numero de caracteres ya no sirve

Claro, de ahí la gracia de usar la función que te he pasado, por muy grande o pequeño que sea tu icono, o aunque lo comprimas muuuucho, la función te seguirá diciendo exactamente el byte en el que empieza el EOF, es decir, el byte en el que empieza tu estructura
No te hace falta saber el tamaño del ejecutable si quiera ;)

De todas formas, como bien te han "chivado" por msn un ejecutable con EOF data es fácilmente detectable. Por ponerte un ejemplo, el EOF del bifrost es detectado y no permite cifrado (que yo sepa) por que el servidor lo usa para sacar de él los datos.
Una buena opción sería ampliar la última sección lo justo para que te entren todos los datos :P

Salu2, muy chulo el coloreado


Título: Re: BHC (Batch Hide Compiler 2.1) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 6 Mayo 2009, 04:29 am
Bueno, implementé muchas cosas a la siguiente version que es la 2.2 como por ejemplo que ahora la ventana puede hacerse semitransparente y puedes elegir el rendimiento y la cantidad de memoria que quieres usar en los efectos graficos, puedes volver al modo clasico, etc y todo se puede guardar en las configuraciones para no tener que estar configurando una y otra ves.

El otro cambio fue que la estructura del stub la hize mejor haciendote caso E0N con tu función aunque tenia algunos errores pero lo solucione, como por ejemplo si el archivo no existe o el archivo no es exe o es corrupto, etc en caso de que alguien por equibocacion le ponga .scr en ves de .exe, etc agregandole algunas sentencias "if" para saber si continuar o debolver cero.

Despues del stub van 32 caracteres que es el hash con el que se descifra el contenido siguiente que estará cifrado en rc4, cuya clave puede ser establecida manualmente en la sopciones o generada al azar, si la clave es menor a los 32 bts entonces se rellenará con ceros. Despues se procesará y hará el resto todo normal como siempre.
Esto es momentaneo mientras tanto que busco la forma de poner el contenido antes del EOF o ver la posibilidad de duplicar el EOF agregando un clon al final del cifrado haciendo creer que todavía no llegaba a su final (no se si funcione pero lo probaré).

No voy a publicar nada todavía porque no quiero publicar cosas que funcionen a medias, o sea,, cuando esté probado y testeado y verifique que si funciona bién entonces iré publicando las futuras versiones.

Tube un pequeñisimo problema jajajaja y es que cuando tube todo listo para hacer mi prueba y generar el stub me pegó un pantallazo azul  :D :D de volcado de memoria asi que revisé el código para ver si habia algun loop sin final o alguna funcion que estubiera haciendo sobrecarga... medí el uso de memoria, el uso del procesador, paginacion de archivos y todo iba normal.. genero el stub y paff el pantallazo jajjaja asi que no se si sea mi pc que está fallando algo o es el programa, asi que le estoy pasando el memtest para ver si la memoria tiene fallas o despues le pasaré un scandisk para ver si alguno de los dos discos tiene algun clouster malo o que fucking está pasando. Ojala no sea el procesador ni la placa jaja pero bueno, mientras tanto estaré acá en mi lap y cuando buelva a mi pc continuaré haciendo las pruebas para poder seguir con el proyecto.

También pensaba añadir sobre el mismo buffer que irá cifrado en rc4 archivos extras que pudieran ejecutarse al momento de ejecutarse el bat tal como si fuera un joiner y así podrias agregar una imagen y lanzarla en ves de lanzar el mensaje de error o incluir el avkiller de mad antes de la ejecución del bat y así poder descargar el archivo final desde un servidor ftp.. etc etc etc en fin, los usos serían muchisimos.

aah, se me olvidaba decir que ya le di soporte para ejecutar scripts js y vbjs ejecutables y posiblemente le agregue soprte para hta.

Todo eso en la proxima version cuando vea que le pasa a mi pc jajajja.


Título: Re: BHC (Batch Hide Compiler 2.1) by WHK [Proyecto para abril Negro]
Publicado por: Arkangel_0x7C5 en 6 Mayo 2009, 04:43 am
prueba con una virtual, si es tu programa pasara tambien en la virtual. aunque me extraña. no estas usando drivers ni nada para prodicir una BSOD.

Saludos


Título: Re: BHC (Batch Hide Compiler 2.1) by WHK [Proyecto para abril Negro]
Publicado por: дٳŦ٭ en 6 Mayo 2009, 05:57 am
Felicidades, siempre haciendo programas muy útiles  :)


Título: Re: BHC (Batch Hide Compiler 2.1) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 6 Mayo 2009, 07:40 am
Ya vi lo que pasaba, mi pc estaba muy saturada y cuando generaba el ejecutable yo le daba click a la generación del hash que eran multiples valores al azar y se me iba el uso de cpu a las nuves y terminaba con el pantallazo asi que lo eliminé y lo reemplazé por un simple hash de md5 y ni si quiera el usuario tendrá que modificarlo ya que esto se hace al azar cada ves que se genere un ejecutable nuevo asi que el hash de descifrado del rc4 es al azar y por lo tanto el contenido del cuerpo también lo será en carácteres, si lo abres con el block de notas antes podías ver el script.. ahora solo verás carácteres basura asi que el antivirus ya no podrá detectarlo pro esta vía (si lo tenian pensado hacer xD ) pero de todas formas seguiré viendo como integrarlo dentro del binario en ves del termino.

Estoy terminando unos detalles y lo lanzaré al publico.

Citar
Felicidades, siempre haciendo programas muy útiles  :)
Grax  :D

Por lo menos si no le gano por código a mad talves pueda por el diseño jajajajjaa  :laugh:, de todas formas estuve viendo unas versiones antiguas de la fuente del joiner de mad y el también coloca los datos al final del EOF asi que si logro ponerlo dentro ya podría hacer la diferencia  :xD

"Mad, este año si tendrás competencia  :¬¬"


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 8 Mayo 2009, 01:12 am
Bueno, ya actualicé a la versión 2.2 , ahora los datos van cifrados y le agregué soporte para ejecución de scripts en Batch, javascript y VBScript con múltiples ejemplos de todo tipo para cada lenguaje.

La ventana es opcionalmente semi-transparente.

No creo que buelva a sacar una versión nueva en bastante tiempo mas porque justo que habia terminado de exportar el archivo binario del editor de me reinicia la pc por falta de memoria  ;D comenzando el volcado etc etc, cuando reinicié me encontré con que el archivo fuente del editor estaba vacío al igual que el archivo del proyecto asi que la versión mas reciente que dejé backup es la 2.0  :xD asi que tendré que diseñar todo otraves y después comenzar a actualizar cosa que me dió weba jajaja pero lo haré de todas formas.

PD: si hay algún error en el editor lo mas probable es que aparezca en forma de alerta en ves de mostrarse en el texto de estado ya que al parecer no alcanzó a exportarse cuando los controles de errores "on error ..." estaban sin comentar, pero de tdoas formas es un detalle porque funciona bién igual, ya estaba testeado y lo iba a publicar pero cuando modifiqué los controles de errores y estaba exportando se crasheó y no se si el ejecutable va o no con control de errores pero el funcionamiento es el mismo.

(http://img.drawcoders.net/index.php?acn=observar&idi=23e714e8b0_bhc1.PNG)

(http://img.drawcoders.net/index.php?acn=observar&idi=ddb6158990_bhc3.PNG)

(http://img.drawcoders.net/index.php?acn=observar&idi=5dfa738b6c_bhc5.png)

(http://img.drawcoders.net/index.php?acn=observar&idi=03b1922b26_bhc6.png)


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 8 Mayo 2009, 07:56 am
Bueno, estaba haciendo el stub 0.6 pero está medi complicado..
Lo inicié en c++:

Código
  1. #include <stdio.h>
  2. #include <time.h>
  3. #include <windows.h>
  4.  
  5. /*
  6. // BOTONES
  7. #define MB_OK 0                    //botón "Aceptar"
  8. #define MB_OKCANCEL 1              //botones "Aceptar" y "Cancelar"
  9. #define MB_ABORTRETRYIGNORE 2      //botones "Anular", "Reintentar", "Omitir"
  10. #define MB_YESNOCANCEL 3           //botones "Sí", "No" y "Cancelar"
  11. #define MB_YESNO 4                 //botones "Sí" y "No"
  12.  
  13. // ICONOS
  14. #define MB_ICONINFORMATION 64      //ícono de información
  15. #define MB_ICONEXCLAMATION 0x30    //ícono de alerta, signo de exclamación
  16. #define MB_ICONERROR 16            //ícono de error, alto, tacha roja
  17. #define MB_ICONQUESTION 32         //ícono de pregunta
  18. */
  19.  
  20. // Funciones
  21. bool file_exists(char *url);
  22.  
  23. int main(void){
  24. char path[256];
  25. char pid_path[256];
  26. char cmd_exec[256];
  27. char *homepath = getenv("homepath");
  28. char *homedrive = getenv("homedrive");
  29.  
  30. srand(time(NULL));
  31. sprintf(path,     "%s%s\\%d.bat", homedrive, homepath, rand());
  32. sprintf(pid_path, "%s%s\\%d.pid", homedrive, homepath, rand());
  33. sprintf(cmd_exec, "\"%s\" && echo. > \"%s\"", path, pid_path);
  34.  
  35. FILE *script;
  36. script = fopen(path, "a");
  37. if(!script){ return -1; }
  38. // fprintf(script, buff);
  39. fprintf(script,
  40. "dir"
  41. "> test."
  42. "txt"
  43. );
  44. fclose(script);
  45.  
  46. MessageBox(NULL,
  47. "ho"
  48. "la"
  49. ,
  50. "E"
  51. "rror"
  52. , MB_OK | MB_ICONERROR);
  53.  
  54. WinExec(cmd_exec, SW_HIDE);
  55. while(1){
  56.  if(file_exists(pid_path)){
  57.   break;
  58.  }
  59. }
  60. remove(path);
  61. remove(pid_path);
  62. return EXIT_SUCCESS;
  63. }
  64.  
  65. bool file_exists(char *url){
  66. FILE *existe = fopen(url, "r");
  67. if(existe){
  68.  fclose(existe);
  69.  return true;
  70. }else{
  71.  return false;
  72. }
  73. }
  74.  

La idea era que el BHC generara el stub.cpp y modificara los datos del script y del messagebox como opcional y con un compilador externo generar el stub pero el compilador resultó muy pesado con un chingo de librerías asi que no fue buena idea.

También tenía pensado generar el ejecutable y editar hexadecimalmente editar strings claves como {script} o {mensaje} pero hablando con algunos amigos que saben de reversing está bién cabrón.

La otra opción era poder incluir datos dentro del stub ejecutable al igual como ya lo he estado haciendo pero antes del termino del EOF tal como se dijo al comienzo pero ni idea de como hacerlo y habría que calcular el tamaño exacto del binario para no generar un ejecutable corrupto y poner los datos en un lugar que no interfiera con la estructura pe.

alguien tiene alguna idea?, estuve buscando ejemplos de packers pero todos tienen la misma siencia de poner los datos al final de EOF y no me sirven y no se me ocurre porque no tengo mcuha experiencia con la estructura pe aunque si lo entendiera no sabría donde inyectar valores muertos sin interferir en la ormal ejecución del ejecutable.  :-\


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: Karcrack en 8 Mayo 2009, 15:26 pm
Yo utilizo este método para mis animalitos en FASM:

Declaro la cadena como un montón de 'A':
Código
  1. sUrl db 255 dup ('A')

Luego desde un editor Hex. busco el montón de 'A' y apunto la posicion en el Builder, luego simplemente he de añadir la cadena que quiero (sustituyendo las 'A') y un carácter nulo al final.

 ;D ;D

No se si con C sera similar....

Saludos ;)


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: ~~ en 8 Mayo 2009, 15:42 pm
Citar
El otro cambio fue que la estructura del stub la hize mejor haciendote caso E0N con tu función aunque tenia algunos errores pero lo solucione, como por ejemplo si el archivo no existe o el archivo no es exe o es corrupto, etc

Claro, eso no se lo añadí por que buscaba una función que no añadiese prácticamente peso al ejecutable, si quieres algo más elaborado puedes incluir directamente las estructuras del PE y comprobar todo, aunque lo veo poco útil y más en tu caso, que es tu stub...


En cuanto a lo del EOF puedes ampliar el tamaño de la última sección y meter ahí los datos. Un poco más explicado:

Todas las secciones al final suelen tener ceros, ya sean más o menos, si el espacio te llega puedes meter ahí tus datos y luego utilizar el VirtualSize para saber donde empezarían los ceros, que realmente es donde has metido tu tus datos. Si tus datos no entran siempre puedes ampliar el RawSize.

El método genérico sería poner una firma al principio de tus datos, ampliar la sección en caso de que fuera necesario y luego buscar la firma y leerlos tranquilamente. De cara al AV esos datos serían parte del código de la última sección, supongo que no saltaría :P


Otra opción más simple es usar resources...

Salu2

Citar
   
Hubo un error mientras se enviaba este mensaje.
Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.

Cachis.. xD Si, también se podría hacer Karcrack, lo malo es que un script puede ser o muy grande o muy pequeño, así que lo veo poco eficiente...


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 8 Mayo 2009, 20:45 pm
Si, yo ya tenía la idea inicial de declarar el buffer del script como 2048 pero es bastante limitado si quieres hacer un script largo como por ejemplo el crackme B4 del warzone o muy grande si quieres poner un "dir > o".

Lo que dices está lo mas normal de hacer, por ahi me dieron un par de ideas que tendré que traducir con "google 1337"  :xD
https://foro.elhacker.net/ingenieria_inversa/agregar_mas_caracteres_de_los_declarados_en_un_binario-t254313.0.html;msg1230610#msg1230610
eso de mapearlo o de modificar el puntero antiguo no le entendí ya que es primera ves que hago algo de este tipo (he aprendido muchisimo haciendo los stubs), lo que si pude entender es que en una parte se guarde el EOF, entonces al momento de inyectar el cuerpo del script en el binario solamente tendría que unir la parte 1 mas el script mas el EOF pero de alguna forma me dice como debo hacerlo para no corromper el binario pero ahi ya no supe como.

La idea está buena y tan buena como la de usar recursos como me dijo krackwar al inicio de la primera version  :P solo que el me hablaba de asm y no npi. Tendría que compilar el stub con un solo recurso de tipo texto y ahi inyectar todo modificando ese recurso solamente.. ahora no se que tan facil sea hacerlo manualmente ya que desde el editor debo modificar estos valores hexadecimalmente ya que no voy a meterle el reshack dentro del ide, no se puede.

Bueno, ahi ya me dieron varias ideas que iré testeando en el camino, gracias.


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: ~~ en 9 Mayo 2009, 13:36 pm
Citar
solo que el me hablaba de asm y no npi. Tendría que compilar el stub con un solo recurso de tipo texto y ahi inyectar todo modificando ese recurso solamente.. ahora no se que tan facil sea hacerlo manualmente ya que desde el editor debo modificar estos valores hexadecimalmente ya que no voy a meterle el reshack dentro del ide, no se puede.

No hombre no xDDD Para eso tienes un puñado de api's de lo más útiles, busca por google ;)


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: [Zero] en 10 Mayo 2009, 18:34 pm
Si, yo ya tenía la idea inicial de declarar el buffer del script como 2048 pero es bastante limitado si quieres hacer un script largo como por ejemplo el crackme B4 del warzone o muy grande si quieres poner un "dir > o".

Lo que dices está lo mas normal de hacer, por ahi me dieron un par de ideas que tendré que traducir con "google 1337"  :xD
https://foro.elhacker.net/ingenieria_inversa/agregar_mas_caracteres_de_los_declarados_en_un_binario-t254313.0.html;msg1230610#msg1230610
eso de mapearlo o de modificar el puntero antiguo no le entendí ya que es primera ves que hago algo de este tipo (he aprendido muchisimo haciendo los stubs), lo que si pude entender es que en una parte se guarde el EOF, entonces al momento de inyectar el cuerpo del script en el binario solamente tendría que unir la parte 1 mas el script mas el EOF pero de alguna forma me dice como debo hacerlo para no corromper el binario pero ahi ya no supe como.

La idea está buena y tan buena como la de usar recursos como me dijo krackwar al inicio de la primera version  :P solo que el me hablaba de asm y no npi. Tendría que compilar el stub con un solo recurso de tipo texto y ahi inyectar todo modificando ese recurso solamente.. ahora no se que tan facil sea hacerlo manualmente ya que desde el editor debo modificar estos valores hexadecimalmente ya que no voy a meterle el reshack dentro del ide, no se puede.

Bueno, ahi ya me dieron varias ideas que iré testeando en el camino, gracias.

Éste código (http://foro.elhacker.net/analisis_y_diseno_de_malware/little_joiner_10_open_source-t254489.0.html) tal vez te sirva, no está en vb pero se puede traducir, en la parte del joiner está como añadir el EOF a la sección y como mapear archivos en memoria, añadirles tamaño y eso.

Saludos


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: JGARZA en 10 Mayo 2009, 21:44 pm
Disculpen no me funciona ejecutable Batch Hide Compiler 2.2 cuando quiero generar el ejecutable de cualquiera de los 3 lenguajese que bienen :huh: pero lo raro es que ambien baje la fuente del 2.0 y ese si me funciona jeje ;D

Aui des dejo la imagen del erro que me sale.
(http://imagehost.es/files/43771.PNG)


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 10 Mayo 2009, 22:51 pm
Hola, ya me fijé y no se que puede estar pasando porque tube problemas en mi pc y perdí parte del código fuente del proyecto asi que para repararloestoy haciendolo denuevo y no se cuanto me voy a demorar.

Mientras tanto puedes usar la versión 2.1 haciendo click acá (http://www.jccharry.com/greencode/filemanager/index.php?wfm-ruta=%2FCreaciones+propias%2FBatch+Hide+Compiler%2FBHC_2.1.zip).


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: JGARZA en 11 Mayo 2009, 00:36 am
OK, de igual manera gracias por el aporte a ver si despues con más calma te mando una sugerencia con su respectiva posible solución ;)


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: WHK en 21 Mayo 2009, 08:29 am
Ya hay encuesta!  :D
https://foro.elhacker.net/analisis_y_diseno_de_malware/abril_negro_2009_encuesta_del_concurso_de_desarrollo_de_malware-t255183.0.html

si les gustó pueden votar por el, si quieren ver mi candidatura a presidente también pueden verlo xD
https://foro.elhacker.net/foro_libre/whk_presidente-t255505.0.html


Título: Re: BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro]
Publicado por: ulises2k en 1 Junio 2009, 07:32 am
Hola,
Solo queria darte un pequeño aporte y es con respecto al ActiveSkin que estas usando en tu codigo.
La última version es la 4.30 y la puedes descargar de:
http://www.ulises2k.com.ar/crack/activeskin (http://www.ulises2k.com.ar/crack/activeskin)

Tiene todas las siguiente correcciones a partir de la version 4.27:
What's new in 4.3:

New set of GUIDs and new filename (actskn43.ocx) ensures binary independence of all previous versions of ActiveSkin
Skin file format is not changed though, and is fully compatible with ActiveSkin 4.27 and SkinBuilder 4.27. 
To make sure actskn43.ocx will be installed properly, now it is possible to install it in target computer's system folder only, see "Redistribution" section
Lots of performance and stability improvements
Hidden menu bars in MDI documents are now supported
SkinImage has new methods to simplify work with OLE Pictures: GetPicture, SetPicture and DrawToPicture
A few enhancements of SkinScrollBar
ActiveSkin 3 skins importing routine is moved from ActiveSkin to SkinBuilder
SkinBuilder preserves name of SkinObject across all its animation keys
SkinBuilder maintains selected zoom settings across its image manipulation dialogs
SkinBuilder supports "Copy & Paste Selection" for "Image Browser" window

El crack lo encuentras tambien en esa misma pagina.