sábado, 24 de enero de 2009

¿Quieres herramientas indetectables? Compílalas!

Por necesidades de la vida me vi en la necesidad de usar cryptcat. Como buen paranoico que desconfía de todo exe descargado de la interné lo subí a VirusTotal, 21 detecciones, nada raro ya que mas o menos todos los detectan como network/hack tool.

Pero ya puestos que mejor que bajarse el código y compilarlo uno mismo, por supuesto leyendo todo el código para verificar que no haga nada malo... (vale, no lo hice).

Ya sabía que usar distintos compiladores confundía mucho a los antivirus, al fin y al cabo todas las firmas que tengan en sus bases de firmas o ya no existen o han sido desplazadas. Pero no me esperaba que ninguno lo detectase. Ya de paso también compilé el netcat...por si algún día "quiero usarlo en un equipo de mi propiedad que tenga antivirus y no tenga la capacidad de añadir exclusiones". Con el mismo resultado 0 AVs lo detectan.

Resultados de VirusTotal: Netcat original 25/39 Netcat compilado con Visual Studio 2008 0/39

Cryptcat original 21/39 Cryptcat compilado con Visual Studio 2008 0/39

Así de fácil. ¿Para que tener norton o panda instalados? ¿Para que me consuma la mitad de la memoría RAM y parte de la CPU intentando encontrar viejos virus? Vale si, está bien como una capa mas de seguridad. Pero ante un ataque dirigido los antivirus no tienen nada que hacer.

5 comentarios:

  1. Hola... buena pagina.

    ¿Y que hay de la "famosa" heuristica?

    ResponderEliminar
  2. Según mis experiencias, la heurística en parte se basa en el análisis de las funciones que son usadas por el exe, por ejemplo mirando la tabla de funciones importadas. Ofuscando esto como buenamente se pueda, por ejemplo cargando las funciones dinámicamente, se logra confundir a la mayoría de los antivirus. Algún día haré por aquí unas pruebas de esto.

    Por otro lado hay que tener en cuenta que este caso no debería ser tomado muy en serio ya que es normal que los antivirus no pongan énfasis en detectar el netcat/cryptcat y se centren mas en otras amenazas.

    Un saludo!

    ResponderEliminar
  3. Hice una importacion del proyecto o create un proyecto nuevo con el vs2008 ? ya que si no cambiaste a /MT requiere el uso el .NET FrameWork 3.5 , supongo que estara en /MT

    El truco de los compiladores es algo usado, para malware prefiero el vs6 ya que, hace todo mas pequeño ;)

    Saludos
    BastardCoder

    ResponderEliminar
  4. Compilé directamente con cl y link.
    Usando los parámetros que venian en el makefile. O prueba a ejecutar nmake directamente.

    ResponderEliminar
  5. puedo compilar un proyecto de vb6 en vs6? como se podria?

    ResponderEliminar