“Liberty reserve”, la moneda virtual, clausurada por EEUU.

Luego de varios días de suspenso y dudas, se confirman las sospechas de que el sistema de pagos llamado Liberty Reserve, una compañía de Costa Rica, fue clausurado y sus dueños arrestados por “Lavado de dinero”, bajo la autoridad de la corte “U.S. District Court for the Southern District of New York”, en EEUU.

Liberty Reserve es una compañía, no muy distinta a Paypal, que permite transacciones entre usuarios, y que cuya principal diferencia con el previamente mencionado es que las transferencias de Liberty Reserve son irreversibles[1], dando cierta tranquilidad a los vendedores y permitiendo transacciones en mercados mas diversos. Además, LR provee un cierto nivel de anonimato, lo que fue aprovechado en el pasado para comerciar con tarjetas de crédito robadas [2], entre otras cosas.

Los fundadores, ex ciudadanos de EEUU, ahora ciudadanos de Costa Rica exclusivamente, son acusados de lavado de dinero, pero aún no han sido extraditados ya que EEUU no tiene un convenio con Costa Rica para facilitar el proceso. Uno de los fundadores, es también acusado de haberse casado para obtener la ciudadanía, pagando a su esposa $ 800.000 para que se casase con él.

Mucha gente compara LR con Bitcoin, la moneda P2P, pero es importante reconocer la diferencia: LR es comparable con un sitio web que nos permite descargar archivos, mientras que Bitcoin sería comparable con BitTorrent, un protocolo descentralizado[3].

Google abandona los estándares abiertos, actuando en contra de los intereses de sus usuarios.

Luego de que Google abandonara, luego de años de estar online, su servicio de RSS, anuncia ahora que mas cambios han de venir: un análisis hecho por la EFF, de título “Google abandona el apoyo de los estándares abiertos para la mensajería instantánea“, declara que los cambios no van a favor de los usuarios:

En medio de la conferencia anual I/O de Google, se hizo un desafortunado anuncio: En distintos lugares de su infraestructura, la compañía está reemplazando la plataforma “Talk” por la plataforma “Hangouts”, lo que disminuye significativamente el soporte de el protocolo de mensajería abierto conocido como XMPP (también mencionado informalmente como Jabber)

Se menciona que los cambios debieron hacerse para adaptar su nueva plataforma (Google+), pero presenta puntos a considerar, como por ejemplo el hecho de que el abandonar el estándar causa que los usuarios estén atados a utilizar Google+, y por lo tanto su única posibilidad de conectarse con los usuarios de Google+ a través del chat sería a través de el protocolo privativo de Google:

El apoyo de Google por el protocolo XMPP significó en su momento que los usuarios podrían chatear con gente en otros servicios de mensajería, o incluso con aquellos que tuvieran sus propios servidores [...]

Esto es importante por muchas razones. Una de las principales es que ninguno de los clientes de Google soporta Off-the-Record (OTR) encryption, que se está convirtiendo en un componente crítico de la comunicación segura online. Si ambos participantes de una conversación usan OTR, tienen una comunicación segura de principio a fin, lo que significa que nadie excepto ellos dos — ni siquiera su proveedor de Internet — puede leer sus mensajes.

En el pasado, Google hizo otro cambio que imposibilita configurar el nivel de logging que queda guardado en los servidores. De su página de soporte:

Hemos hecho cambios a la configuracíon de historia de Google Talk y Google Chat. Todavía podes hacer que chats individuales queden “off the record”, pero no vas a tener la opción de hacerlo globalmente.

Estos cambios están llevando a cuestionar los intereses por los que se mueve Google, [1] [2] un giro interesante de eventos, porque Google tiene una larga historia apoyando la cultura Open Source y de promover los protocolos abiertos, tal como promovió XMPP en el 2005:

La misión de Google es hacer la información del mundo universalmente accesible y útil. Google talk, que le permite a los usuarios instantáneamente comunicarse con amigos, familia y colegas usando su llamadas de voz y mensajería instantánea, refleja nuestra creencia de que las comunicaciones debería de ser accesibles y también útiles.

Sin llegar a juzgar a Google por sus acciones, es evidente que su modelo de negocios (los anuncios [3], y el forzar a sus usuarios a una plataforma de la que no pueden salir, también conocido como “walled garden”) esta yendo en contra de la privacidad de los usuarios.

En sus explicaciones publicas, Google dijo que fue una decisión dificil, tomada por requerimientos técnicos. Pero incluso si este protocolo responde a necesidades técnicas, eso no debería evitar que la compañía lo haga público e interoperable. Publicar las especificaciónes de Google Hangouts sería un buen primer paso. Publicar código gratuito/libre debería suceder después de eso. Es claro que algunas funcionalidades se han implementado de manera muy específica a Google, pero eso no debería ser una razón para llevarnos a un mundo donde las únicas posibilidades prácticas son protocolos de chat privativos.

Linux privilege escalation

Hola a todos!

Para festejar el exploit para privilege exploitation para kernels 2.6.37-3.8.8 inclusive (and 2.6.32 on CentOS) 0-day, un conjunto de links interesantes para escalar privilegios en un servidor linux:

Un abrazo,
Pedro

Pedro en Bitcoinlandia

¡Hola a todos!

¿Cómo están?  Hoy les voy a contar una historia de como compré unos bitcoin con una plata que saqué de un despido.

Para los que no saben lo que son los bitcoins, lo podemos comparar con dólares americanos o con pesos argentinos, en el sentido de que son como una unidad de valor. La única diferencia con el dolar y el peso argentino, es que su valor no esta dado por el “respaldo” en oro sino que vendría a ser mas similar al oro, con valor intrínseco.

Es muy distinto al oro en muchas maneras, por ejemplo en que en lugar de tratarse de unas barras físicas de oro, su integridad se basa y se verifica a través de una red P2P de computadoras, que verifican que las transacciones sean válidas y que un usuario solo pueda gastar su dinero una vez.

A los ojos del usuario, su uso es muy similar al del online banking:

Lo que si tiene en común con el oro, es que para su distribución inicial, requiere ser “minado”,  solo que con computadoras increíblemente poderosas. Los bitcoin se generan en “bloques” de 50 bitcoin al ser resuelta una operación matemáticamente muy compleja — cuya complejidad se va adaptando a el poder computacional de la red.

Aunque todo esto suena muy ficticio, y “irreal”, hoy la moneda ya esta mas establecida y tiene un buen mercado. Hoy por hoy:

La computadora que me compre con bitcoin

Volviendo a lo mío, en el año 2011 la compañia Silicom Argentina S.A. decidió que lo mejor que podría hacer con su dinero y su empresa sería despedir a todos sus empleados y volverlos a contratar bajo el nombre de Quados S.A., lo que significó para todos nosotros un pago por despido sin causa y demás.

En ese momento yo estaba muy entusiasmado con bitcoin y todo su potencial, así que me compré 120 bitcoins a alrededor de $1650 dólares americanos.

buy

La imagen que ven arriba muestra el punto donde compré los bitcoin. La verdad que es difícil garantizar cualquier tipo de inversión, especialmente una inversión en una moneda que no existe físicamente y cuyo valor no es todavía aceptado.

Dicho esto, mucho mas difícil es haber hecho esto hace casi dos años, cuando la moneda  no tenía dos años de trayectoria y un pequeño historial de éxitos. Aquellos que presten atención a la gráfica notarán que mi inversión tuvo un momento bajo, cuando la confianza del público en los bitcoin tuvo un golpe muy fuerte, por noviembre del 2011.

sell

La gráfica, arriba, muestra a que punto vendí todos los bitcoin. La ganancia neta, para mi, en dólares en el banco que puedo gastar en cualquier cosa, fue de aproximadamente 800 dólares.

Nada mal para una moneda basada en criptografía. Si me pudiera atrever a decir algo que muy probablemente no sea correcto, me gustaría decir que pienso que el bitcoin (o algo similar) es el futuro de la transacciones económicas de la humanidad.

Un abrazo grande,
Pedro

L33tsp34k: Criptolalia contra el computador.

¡Hola a todos!

Escribo esto por una cuestión que divagó de un estudio respecto a los análisis que puede llevar a cabo un atacante para identificar el autor de un número de textos, o para identificar, entre un número X de textos cuales corresponden a cual autor.

Todo esto surgió a raíz de un artículo que habla de esto, que es creado por los compañeros de la CCC, y que lo pueden encontrar acá: Linguistics identifies annonymous users. Básicamente sostiene que:

Hasta el 80% de los usuarios de ciertos foros “anónimos” pueden ser identificados usando esta tecnología, dicen los investigadores. [...]

Si nuestro dataset contiene 100 usuarios, podemos identificar al menos unos 80.

Lo cual es muy malo, porque si bien no pueden identificarte a vos individualmente, por tu estilo de escritura pueden saber que “usuarioanonimo1″, es tambien “adadada” y “wdwdwd”, aunque no sepan quien esté atrás de esos seudónimos.

Si bien es un tema interesantísimo y super importante, algo me llamó la atención:

Aunque exitoso, el trabajo enfrenta una serie de desafíos [...]

Leetspeak, un dialecto popular en algunos foros, no puede ser traducido.

Leetspeak es un lenguaje utilizado por un montón de imbéciles, que consiste básicamente en cambiar letras por números: zarpado pasaría a ser z4rp4|}0, por ejemplo.

Y ahí me cayó la ficha. Hoy por hoy, cuando alguien 3mpez4|3a a hablar asi, con letras, era un imbécil  Yo estaba 100% seguro de que era un imbécil. Pero ahora, me llama la atención esto: ¿Será que hablando como un imbécil, uno evita que una PC pueda automáticamente analizar su texto? ¿Qué tan complejo puede ser parsear l33tsp34k?

Estuve leyendo respecto a esto, y resulta que bastante complejo, y parece que es un tema serio: hay un artículo de wikipedia bastante completo y bastante interesante respecto al tema: Leet.

Por ejemplo, parseate esta (omg dude, dustin is the uber leet roxor):

0MFG D00D /\Ü571N 15 T3H l_l83Я 1337 Я0XX0ЯZ

En uno de los enlaces del pié de la página, me llevó a una acepción en inglés de la palabra Argot (cuya traducción no corresponde a la palabra en castellano Argot, sinó que es mas similar a Criptolalia):

An argot (pron.:/ˈɑrɡ/FrenchSpanish, and Catalan for “slang“) is a secret language used by various groups—including, but not limited to, thieves and other criminals—to prevent outsiders from understanding their conversations.

criptolalia f. ling. Alteración de la lengua hablada para que los mensajes emitidos de este modo no puedan ser entendidos más que por aquellos que poseen el código

L33tsp34k, criptolalia donde el adversario último es una computadora, o un programador adversario.

De mas esta decir que usar leetspeak no nos va a hacer mas anónimos en absoluto, por que va a ser evidente que el boludo que está usando leetspeak creó todos los posts. Este puede ser un buen punto para empezar a investigar respecto a eso.

Un abrazo,
Pedro

Compilado de enlaces

Hola a todos!

Compilado de enlaces!

Gracias!

Un abrazo grande,
Pedro

Hackear paginas web II (Fingerprinting and Information gathering)

En el articulo anterior (como hackear paginas web, en serio) de esta serie, se vio lo básico de las vulnerabilidades web mas comunes, que si bien no son todas ni son muchas las que se cubrieron, y no están cubiertas a un nivel muy profundo, nos dan un overview básico de por que un sitio web puede ser comprometido y nos dan un par de enlaces interesantes para ampliar nuestros conocimientos.

Nota: Quiero agradecer a COSO por permitirme utilizar su servidor para hacer las pruebas. No autorizo que nadie mas lo haga, aunque tal vez me autorice a mi para investigar quien esta intentando hacer fingerprinting de su servidor en un futuro. (seria interesante para un capitulo 3)

Quiero aclarar que este articulo lo escribo para mi mismo con fines de aprender y comprender mas del tema, y tener una referencia mas clara para utilizar en algún momento en el qué me pueda ser útil. En mi opinión, el tener una habilidad no nos da el derecho ni la obligación de usarla como queramos, y es responsabilidad de cada una de las personas que lea este articulo el uso que haga de él.

El propósito de este articulo es descubrir con quien tratamos: El servidor al que estamos investigando, de ahora en mas nombrado como COSO, ¿Qué versión de apache corre? ¿Corre un CMS en nadakedecir.net? y si es asi, ¿Qué versión es?, y ¿Qué plugins tiene instalados? Otras preguntas interesantes son ¿Existe algún medio de contacto que podría usar para comunicarme con COSO? ¿Puedo llegar a encontrar un dump de la base de datos en su public_html? Procedemos a responderlas todas.

Nota: La intención de este articulo no es ilustrar como se instalan las herramientas, ni como se usan las herramientas, sino lo que se puede llegar a hacer con ellas.

Conociendo a COSO (¿Qué servidor usa COSO? ¿En que OS lo corre?)

Este es un post con muchas preguntas ya, y queremos empezar a querer tener alguna respuesta. El mundo del fingerprinting es muy gracioso, porque podemos interesarnos mucho en una computadora en la que no deberíamos interesarnos tanto. ¿Qué tanto nos podemos interesar? Veamos ahora…

Todo con mucho cuidado, porque COSO también se puede interesar mucho por sus clientes :). Ademas este tipo de herramientas dejan MUCHÍSIMAS evidencias en el servidor que estamos investigando.

Respecto a la pregunta, lo podemos saber usando nmap. Esto nos va a decir que puertos tiene abiertos:

root@droope-VirtualBox:~ nmap -sV -O -A -T4 nadakedecir.net
PORT STATE SERVICE VERSION
21/tcp open ftp ProFTPD 1.3.3c
22/tcp open ssh OpenSSH 4.3 (protocol 2.0)
[...snip...]
25/tcp open smtp qmail smtpd
[...snip...]
80/tcp open http Apache httpd
| robots.txt: has 2 disallowed entries
|_/wp-admin/ /wp-includes/
|_html-title: nadakedecir*
106/tcp open pop3pw poppassd
110/tcp open pop3 Courier pop3d
[...snip...]
143/tcp open imap Courier Imapd (released 2004)
[...snip...]
443/tcp open ssl/http Apache httpd
[...snip...]
465/tcp open ssl/smtp qmail smtpd
[...snip...]
587/tcp open smtp qmail smtpd
[...snip...]
993/tcp open ssl/imap Courier Imapd (released 2004)
[...snip...]
995/tcp open ssl/pop3 Courier pop3d
[...snip...]
3306/tcp open mysql MySQL 5.1.54
[...snip...]
8443/tcp open ssl/https-alt?

Y tambien nos va a decir que sistema operativo potencialmente esta corriendo:

Running (JUST GUESSING) : Linux 2.6.X|2.4.X (94%), Google embedded (90%), Cisco Linux 2.6.X (89%), Riverbed embedded (89%), Buffalo embedded (87%), D-Link embedded (86%), Linksys embedded (86%), HP embedded (86%)
Aggressive OS guesses: Linux 2.6.30 (94%), Linux 2.6.9 (91%), Google Mini search appliance (90%), Linux 2.6.18 (CentOS 5.1, x86) (90%), Linux 2.6.18 (90%), Linux 2.6.9 - 2.6.27 (90%), Linux 2.6.9 (CentOS 4.4) (89%), Linux 2.6.11 (89%), Riverbed Steelhead 200 proxy server (89%), Linux 2.6.28 (88%)
No exact OS matches for host (test conditions non-ideal).

Esto también nos dijo que CMS esta usando, pero para hacerme el misterioso no voy a decir por que. Si abandonáramos el tutorial exactamente en este momento, ya sabríamos que COSO esta corriendo un worpdress. De todas maneras lo vamos a determinar mas adelante.

¿Quién es COSO? y ¿Cómo me contacto con él?

Lo mas importante al encontrar una vulnerabilidad es encontrar la forma de contactarnos con el dueño del sitio web para que él pueda arreglarla antes de que alguien con malas intenciones la encuentre. En este tutorial no nos vamos a interesar en encontrar vulnerabilidades, pero quizás queramos contactarnos con el usuario por otros motivos.

Usando theHarvester vamos a obtener información sobre los humanos que trabajan con este dominio y otras cosas sobre el PC:

root@pc:~# python theHarvester.py -d nadakedecir.net -l 500 -b all
*************************************
*TheHarvester Ver. 2.1 (reborn)     *
*Coded by Christian Martorella      *
*Edge-Security Research             *
*cmartorella@edge-security.com      *
*************************************

Full harvest..
[-] Searching in Google..
	Searching 0 results...
	Searching 100 results...
	Searching 200 results...
	Searching 300 results...
	Searching 400 results...
	Searching 500 results...
[-] Searching in PGP Key server..
[-] Searching in Bing..
	Searching 100 results...
	Searching 200 results...
	Searching 300 results...
	Searching 400 results...
	Searching 500 results...
[-] Searching in Exalead..
	Searching 100 results...
	Searching 200 results...
	Searching 300 results...
	Searching 400 results...
	Searching 500 results...
	Searching 600 results...

[+] Emails found:
------------------
No emails found

[+] Hosts found in search engines:
------------------------------------
72.10.32.61:www.nadakedecir.net
72.10.32.61:mail.nadakedecir.net

[+] Proposed SET
---------------
[]
[+] Virtual hosts:
==================
72.10.32.61:www.twitter.korochi.com
72.10.32.61:notengoenie.com
72.10.32.61:naotenhocedilha.com
72.10.32.61:evapedroza.com
72.10.32.61:barquitosdepapel.com
72.10.32.61:www.eckell.com
72.10.32.61:www.avioncitosdepapel.com
72.10.32.61:juguetesdoblo.com
72.10.32.61:korochi.com
72.10.32.61:www.conaini.com.ar
72.10.32.61:www.quierohablarconelgerente.com
72.10.32.61:lucasworcel.com
72.10.32.61:nadakedecir.net
72.10.32.61:www.iguanaovera.com.ar
72.10.32.61:ipa.notengoenie.com
72.10.32.61:fabulosospremios.com.ar
72.10.32.61:korochi.net
72.10.32.61:ceciliasluga.com
72.10.32.61:coqueterias.net
72.10.32.61:www.ahhhproject.com.ar
72.10.32.61:www.worcel.com
72.10.32.61:twitter.korochi.com
72.10.32.61:iguanaovera.com.ar

Bueno! No nos vamos a poder comunicar con COSO. Ahi tenemos un par de otros hosts que se corren en la misma computadora, que tambien pueden ser puntos de entrada en este caso.

COSO, ¿Corre un CMS en nadakedecir.net?

Ahora vamos al jugo, investiguemos si COSO tiene un CMS instalado en su servidor. Para eso, vamos a hacer WAFP, o Web application finger printing. Es un nombre muy cheto, pero basicamente nos sirve para saber que es lo que e que tiene hostiao ai. Importante mencionar que deberian sin falta clickear ese link que les dejo ahi, porque probablemente sea un mucho mejor articulo que este.

La app que me afane de ese web para probar, es whatweb. A ver que hace:

root@pc:~# ./whatweb nadakedecir.net
http://nadakedecir.net [200] Apache, Country[UNITED STATES][US], Email[nadakedecirnet@gmail.com], HTTPServer[Apache], IP[72.10.32.61], MetaGenerator[WordPress 3.4.2], Plesk[Lin], Script[text/javascript], Title[ nadakedecir*], WordPress[3.4.2], X-Powered-By[PleskLin], x-pingback[http://nadakedecir.net/xmlrpc.php]

Bueno! Quien te dice! Encontro un mail, no me la esperaba: nadakedecirnet@gmail.com. Genial, considerando que esta en la primera página, debería haberlo encontrado el harvester. En definitiva yo ya sabía que esto era un wordpress, porque el escaneo del nmap me tiró un link al archivo robots.txt, que decía:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/

Tambien sabía que era un 3.4 porque hay un archivo de README que los wodpress dejan muy amablemente. Recomiendo el lugar donde aprendí esto, FLU project, que tiene una guia para fingerprinting de wordpress.

Tambien vamos a hacer uso de su aplicacion que nos permite determinar los plugins que tiene instalados un wordpress. Necesitamos descargar Flunym0us y tambien una lista de los plugins mas usados de wordpress, por ejemplo esta.

Sin mas, la corremos (tarda un buen rato, tiene que hacer miles de peticiones al servidor. Recomiendo cancelarlo luego de un tiempo.)

root@pc:~# python flunym0us.py -wp http://nadakedecir.net wp-plugins.lst

 Flunym0us is a scanner that allows you retrieve a list of all installed plugins
 in WordPress and Moodle

 Plugins:

 wp-db-backup

Asi que ahi tenemos un plugin, que podria tener una vulnerabilidad conocida, aunque no creo que sea el caso. Tambien podemos sospechar que, si el servidor esta mal configurado, el WP_BACKUP_DIR podria ser publico, creo que no es el caso.

Vamos a investigar eso con dirb. Esta complicado, hay que compilarlo, pero eventualmente hay que compilar algo. Yo lo compile, viene con wordlists en la carpeta worlists del source. Hay una alternativa en java llamada dirbuster, pero yo la verdad no soy un gran fanatico de las interfaces graficas. Lo voy a correr con dos diccionarios.

root@ip-10-29-235-201:/home/ubuntu/dirb# dirb http://nadakedecir.net/ wordlists/big.txt,wordlists/vulns/apache.txt

-----------------
DIRB v2.03
By The Dark Raver
-----------------

START_TIME: Fri Sep 21 00:56:00 2012
URL_BASE: http://nadakedecir.net/
WORDLIST_FILES: wordlists/big.txt,wordlists/vulns/apache.txt

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

GENERATED WORDS: 4234

---- Scanning URL: http://nadakedecir.net/ ----
+ http://nadakedecir.net//
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/0/
    ==> DIRECTORY
+ http://nadakedecir.net/1
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/2
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/20
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/3
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/30
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/A
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/D
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/E
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/G
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/J
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/L
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/M
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/S
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/V
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/a
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/admin
    (FOUND: 302 [Moved Temporarily] - Size: 0)
+ http://nadakedecir.net/ar
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/archivo
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/archivos
    (FOUND: 200 [Ok] - Size: 17792)
+ http://nadakedecir.net/atom
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/cgi-bin/
    (FOUND: 403 [Forbidden] - Size: 275)
+ http://nadakedecir.net/css/
    ==> DIRECTORY
+ http://nadakedecir.net/d
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/demo/
    ==> DIRECTORY
+ http://nadakedecir.net/do
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/e
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/en
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/feed
    (FOUND: 200 [Ok] - Size: 10973)
+ http://nadakedecir.net/g
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/gr
    (FOUND: 301 [Moved Permanently] - Size: 0)
+ http://nadakedecir.net/img/
    ==> DIRECTORY
+ http://nadakedecir.net/j
    (FOUND: 301 [Moved Permanently] - Size: 0)

Esta es una busqueda de fuerza bruta, y si bien puede aportar algunos resultados, la verdad es que no sirve mucho. Vamos a hacer que la busqueda sea un poco mas efectiva. El comando que vamos a usar es

dirb http://nadakedecir.net/ wordlists/common.txt,wordlists/vulns/apache.txt -x mutations_common.txt

que significa: usame los diccionarios common y vulnerabilidades y agregale las extensiones de respaldo mas comunes. Basicamente estoy buscando un archivo, por ejemplo index.php~ que seria un respaldo de index.php. Lo corri por bastante tiempo, pero la verdad es que todavia no encontro nada. Habria que tunear las wordlists para que tengan info mas relevante.

Asique eso seria todo, el resumen ejecutivo seria este:

  • ¿Qué versión de apache corre? Lo averiguo usando NMAP.
  • ¿Corre un CMS en nadakedecir.net? ¿Qué version es? ¿Qué plugins tiene instalados? Lo averiguo usando whatweb && flunym0us
  • ¿Existe algún medio de contacto que podría usar para comunicarme con COSO? Lo averiguo usando theHarvester
  • ¿Puedo llegar a encontrar un dump de la base de datos en su public_html? Lo averiguo usando dirb

Ahora la pregunta que se me ocurre es, ¿Qué otras cosas sería interesante averiguar?

¡Espero su input en los comentarios!

Un abrazo enorme,
Pedro

GIT con HTTP Proxy

¡Hola a todos!

¿Como estan? Si leen este artículo, seguramente esten bastante enojados con un proxy HTTP, pero mas alla de eso espero que esten bien.

Los proxys HTTP son una brillante idea que le permite a los administradores de la red hacer un monton de cosas copadas, y ademas en teoría permite filtrar el tráfico que circula por una red. Toda esta teoría tienta tanto a las companías que estas instalan el proxy, sin darse cuenta que en realidad no sirven para una mierda y encima te tenes que clavar configurando todos los programas de mierda para que el trafico pase por ese agujero. ajem.

En windows configurar estas cuestiones es bastante sencillo, aunque no automático, y la mayoría de las aplicaciones reconocen la configuración del sistema operativo. Pensé que funcionaba perfecto, pero no, muchas aplicaciones ignoran el hecho a full. En linux es una locura. Podés configurar el proxy en como 3 lugares, y en ninguno las aplicaciones te dan pelota. Tenés que configurar — applicacion por aplicacion — el APT, el svn, el git, el hg, el browser, todo.

Pero como todo en la vida es una experiencia que nos enseña que estar atrás de un proxy es fácil en las películas, pero en la vida real es un quilombo de la puta madre y si quisieramos anonimizar nuestro tráfico sería complicadísimo garantizar que ningún tipo de tráfico se esta escapando y viajando sin tocar el proxy ( efectivamente rompiendo nuestro anonimato)

Y hoy nos vamos a concentrar en el GIT, con un gist sacado de “I shouldn’t have to do this shit…“.

Basicamente los pasos a seguir son:

1. Instalar corkscrew:

Corkscrew es una utilidad para pasar SSH sobre proxies HTTP. Vamos a usar GIT por SSH.

apt-get install corkscrew

2. Configurar el usuario y contraseña

echo usuario_de_proxy:contrasenia > ~/.corkscrew_auth

3. Configurar en ~/.ssh/config

Host gitproxy
    User git
    Hostname ssh.github.com
    Port 443
    ProxyCommand /usr/local/bin/corkscrew dnzwgpx2 80 %h %p ~/.corkscrew_auth
    IdentityFile ~/.ssh/id_rsa

4. Agregar a ~/.git/config tu repositorio

[remote "originpx"]
    url = ssh://gitproxy/your_username/your_repo.git
    fetch = +refs/heads/*:refs/remotes/origin/*

Ahora deberias de poder hacer esto:

git clone git@gitproxy:your_username/your_repo.git

Compilado de enlaces

Hola a todos!

Un legendario, super espectacular, increible, todo-glorioso compilado de enlaces.

Nah, mentira. Son enlaces sueltos, nada del todo interesante.

Espero que les haya gustado!

Un abrazo,
Pedro

Configurar windows en redes linux (active directory)

Hola a todos!

Disclaimer: Esto tuv0 la intencion de hacer funcionar mi entorno linux en una red windows. No estan sencillo como parece y ni siquiera windows puede funcionar bien algunas veces. En lo personal, abandone este esfuerzo y setie el proxy aplicacion por aplicacion. Si alguien encuentra una solucion mas elegante y me contacta, se ganara el amor de mi vida.

Debo ser honesto, saqué esta guía de un sitio en ingles. Ademas le hago unas mejoras que simplifican mucho la vida. Deberian revisarse ese articulo, igual, porque tiene para configurar todas las cosas que sirven para una red Windows: el mail, el communicator. Yo voy a ir avanzando con esto y les voy a ir contando.

Primero debemos averiguar el kdc — el active directory server — que controla toda la bola. Desde su powershell de windows o el clasico cmd de una PC conectada a esta misma red, tipeen

PS C:\Users\PedroW> nslookup
Default Server:  dnzdc3.datacom.co.nz
Address:  172.30.0.99
>

Con esa informacion, podemos seguir paso a paso con la guia.

Ahora vuelvan a su amado linux. Corran este comando. Si somos root omitimos el sudo:

sudo apt-get install krb5-config krb5-user

Ahora nos va a pedir el “Default Kerberos version 5 realm”. No tengo la mas palida idea que es, pero creo que es un nombre que le vamos a poner al coso. Por lo pronto, en mi red datacom funciona.

Luego nos va a pedir “Kerberos server for your realm.”. Para satisfacer ese campo, usamos el contenido de lo que nos devolvio el nslookup, en mi caso dnzdc3.datacom.co.nz. Despues el otro campo nos va a pedir un administrative server. Como no tenemos ni idea que es eso, le ponemos dnzdc3.datacom.co.nz tambien.

Por lo pronto la instalacion va a terminar, y estariamos listos para conectarnos a la red. Si no llenamos los datos correctamente, podemos corregir nuestros errores editando el archivo /etc/krb5.conf

Luego, ejecutamos el comando

root@pc~:# kinit <usuario>

en mi caso, mi usuario en windows es DATACOM\PedroW. En el kinit, se espera exactamente ‘PedroW@DATACOM.CO.NZ’. Notesen las mayusculas y tambien notese que tuve que agregar el dominio completo y no solo DATACOM

Entonces, usando comillas simples, y respetando las mayusculas:

root@pc~:# kinit 'PedroW@DATACOM.CO.NZ'

Y listo, tenemos internet!

Hay tres errores que obtuve, y cada uno tiene su obscuro significado:

  • kinit: Client not found in Kerberos database while getting initial credentials – este significa que el usuario esta mal.
  • kinit: KDC reply did not match expectations while getting initial credentials – este significa que el usuario esta bien, y el dominio esta bien, pero el servidor esta respondiendo algo distinto a lo que el cliente espera y este esta fallando. Mi solucion fue hacer que el dominio sea DATACOM.CO.NZ en lugar de DATACOM. Las mayusulas son escenciales.
  • kinit: Preauthentication failed while getting initial credentials – la contrase;a esta mal

Les deseo suerte. Si quieren su communicator, su mail, y demas cosas funcionando en Windows, los remito a este articulo.

Un abrazo,
Pedro