Joomla Scan v1.2

Acabo de subir a la web un nuevo programa que he terminado (tengo varios a medias siempre :)). Se trata de JoomlaScan, y lo que hace básicamente es analizar remotamente una web (Joomla, claro!) y detectar la versión que está corriendo. Salvo un par o tres de versiones que no saca exactas, el resto te da con exactitud la versión y revisión que usa, incluidas las betas de la 1.6. Además de esto también saca un listado con los componentes que usa.

Para la detección de versión de Joomla me he basaco en un genial script en perl de OWASP, cuyo proyecto se abandonó en diciembre del 2008 y, por lo cual sólo era capaz de detectar hasta la versión 1.5.12.

El método usado consiste en comprobar una serie de ficheros que varían de una versión a otra, así como otros que contienen el ID de la última revisión. En resumen, ralizando muchas verificaciones en varios ficheros se llega a acortar el margen entre versiones hasta dar con la exacta.

Además de eso, me he pegado la gran currada de introducir todos los avisos que hay en securityfocus y que hacen referencia a Joomla, de manera que tras detectar la versión, muestra un listado con los posibles bugs que afectan a esa versión o a cualquiera de los componentes instalados.

El programa al arrancarse comprueba si hay nuevas versiones o actualizaciones de la base de datos, de manera que cada vez que suba un nuevo bug se actualizará sólo.

Podeis descargarlo aquí: JoomlaScan

Aviso: Este programa no es para hackear nada sino para hacer un autoanálisis de nuestras webs en Joomla y no me hago responsable si alguien le da un mal uso …

22 comentarios

  1. mira si en la carpeta del programa tienes un act.exe … en ese caso ejecútalo (con el JoomlaScan cerrado)

    sino, prueba a desinstalar y a volver a instalar …. suerte!

  2. Cuando lo intento correr me marca una excepción
    System.IO.FileNotFoundException: No se pudo encontrar el archivo ‘P:\archivos de programa\JoomlaScan\db\bugs.txt’.
    Nombre de archivo: ‘P:\archivos de programa\JoomlaScan\db\bugs.txt’
    en System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
    en System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
    en System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
    en System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize)
    en System.IO.StreamReader..ctor(String path)
    en JoomlaScan.FormJoomlaScan.FormJoomlaScan_Load(Object sender, EventArgs e)
    en System.Windows.Forms.Form.OnLoad(EventArgs e)
    en System.Windows.Forms.Form.OnCreateControl()
    en System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
    en System.Windows.Forms.Control.CreateControl()
    en System.Windows.Forms.Control.WmShowWindow(Message& m)
    en System.Windows.Forms.Control.WndProc(Message& m)
    en System.Windows.Forms.ScrollableControl.WndProc(Message& m)
    en System.Windows.Forms.ContainerControl.WndProc(Message& m)
    en System.Windows.Forms.Form.WmShowWindow(Message& m)
    en System.Windows.Forms.Form.WndProc(Message& m)
    en System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
    en System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
    en System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

    Si creo el archivo ya no la manda, pero este no se actualiza en automático, que podrá ser ?

    Tengo un equipo x86 con Win XP Profesional SP3

    Intenté con la solución que le das a pepev, pero en la carpeta del programa no aparece el act.exe, esta uno que es JoomlaScanUpdate.exe, lo renombre y desaparece el act.exe y modifica el ejecutable joomlascan

    Saludos

  3. Ya lo logré hacer funcionar generando yo el archivo bugs.txt y tomé los que existen en el proyecto original de OWASP, pero sigue sin actualizarme las vulnerabilidades. De donde puedo tomar el archivo actualizado.

    Muchas Gracias !

  4. @Sergio: debe haber un fichero versiondb.txt … edítalo y le bajas el numero de versión para que te lo actualice. El script de OWASP es otro diferente y el formato no es el mismo. Comprueba también que no tengas un firewall bloqueándo JoomlaScan ya que se conecta para bajar las nuevas versiones y actualizaciones. Saludos

  5. Estube testeando el sitio con JoomlaScan y me sorprendio que me avisa de un componente de Firewall (com_rsfirewall) que no se encuentra en el sitio. Estara de alguna amnera. Busque en la BD y no hay referencia a el. En los directorios de componentes tampoco.
    Alguna idea??

    Gracias

  6. Hey pepe que posibilidad hay de que habilites el uso sobre sitios https ? o publiques el SC para hacerlo funcionar

  7. tienes una versión en perl con el código fuente. La versión windows está con c# por lo que con el reflector puedes sacar el fuente 😉

Deja un comentario