Hacking Cámaras IP – Montándome mi propio Gran Hermano

granhermano

Para los que no os hayáis enterado, la edición 17 de Gran Hermano está a punto de comenzar.

¿ Y si me monto mi propio Gran Hermano?

Pues si, esa fue la pregunta que mi hice, y si tu también quieres montarte el tuyo, te invito a que leas este tutorial sobre Hacking de cámaras IP.

En esta entrada, os mostraré como podemos buscar Camarás IP accesibles desde Internet y cómo acceder a ellas.

Lo primero, buscar las cámaras.

Buscar cámaras IP accesibles desde Internet resulta una tarea bastante sencilla si contamos con el llamado “buscador de los hacker”, Shodan es un motor de búsqueda parecido a Google, con la diferencia que, en vez de indexar el contenido, almacena los dispositivos conectados a Internet (routers, servidores, cámaras, etc).

Por ejemplo, voy a buscar cámaras IP, de la marca Honeywell y que se encuentren en Madrid, para ellos accedemos a Shodan y buscamos con el siguiente filtro:

Honeywell city:Madrid

hackpuntes-0019

Para utilizar filtros, es necesario estar registrado en Shodan, así que, si todavía no estás registrado, creo que merece la pena que lo hagas.

Bien, he encontrado cuatro IPs que tiene cámaras de la marca Honeywell en Madrid, puede parecer que hemos encontrado pocas cámaras, pero debemos de tener en cuenta que Shodan es un buscador, y es posible que no haya registrado el 100% de las cámaras accesibles, por lo tanto, voy a usar Nmap para rastrear dentro del rango de IPs (es muy probable que haya más).

Nmap es un escáner de puertos, y permite rastrear IPs que dispongan de servicios a la escucha filtrando por puerto (fijémonos en la captura anterior que las cámaras Honeywell usan los puertos 3310, 2181 y 2000), por lo tanto, supongamos que hemos obtenido la IP 172.26.100.50 (no intentéis probar con esta) de Shodan, la cuál tiene la cámara. Lo siguiente es buscar si dentro de su rango hay más cámaras, buscaremos en el rango 172.26.0.0 al 172.26.255.255, y filtraremos por los puertos 3310, 2181 y 2000, esto lo podemos hacer con el siguiente comando:

nmap 172.26.0.0/16 -p 3310, 2181, 2000

hackpuntes-0020

Bueno, ya tenemos unas cuantas IPs que posiblemente podamos acceder a ellas, a las cámaras IPs se pueden acceder de 2 maneras:

1) Accediendo con las credenciales por defecto.

Aunque parezca increíble que aún haya gente que no cambie las credenciales por defecto de los dispositivos, existe muchísimas cámaras IPs que las tienen, y no solo cámaras IPs, sino cualquier tipo de dispositivo, podemos ver un listado de las contraseñas por defecto de las cámaras IPs aqui:

hackpuntes-0021

2) Usando un exploit.

Un exploit es un código o parte de un programa que intenta beneficiarse de la vulnerabilidad de un sistema para acceder a él, podemos ver un exploit que ha sido publicado a fecha 22 de Agosto de 2016 para las cámaras Honeywell aquí.

hackpuntes-0022

Ya sabemos las 2 maneras de entrar, voy a intentar entrar a una IP con las contraseñas por defecto, abro Mozilla Firefox, pongo la IP y relleno el formulario.

hackpuntes-0027

Ya estoy dentro, que fácil fue acceder a las cámaras de una oficina.

hackpuntes-0013

Ahora para ver las cámaras, debemos de hacer “click” en un cuadrado del centro, y después al icono pequeño de la cámara del panel izquierdo.

hackpuntes-0014

Voy a ir añadiendo cámaras, también podemos moverlas (cuando no haya gente como en mi caso, ya que es domingo por la mañana y parece ser unas oficinas) desde el panel derecho.

hackpuntes-0015

Preservando el acceso.

En este momento, tenemos acceso a las cámaras, pero es posible que el administrador cambie las contraseñas por defecto y ya no tengamos acceso a ellas. Una vez dentro, podemos crear un segundo (o tercero y cuarto) usuario con permisos de administrador, yo he usado el user root para crearlo, pero para pasar mas desapercibido, podríamos poner como nombre de usuario gerente, responsable, etc.

hackpuntes-0017

Un Saludo!!!

Y ya sabéis, si no queréis formar parte de un Gran Hermano, cambiad las credenciales por defecto y actualizar el firmware de vuestras cámaras.

Happy Hacking!!!

Preparando Sublime Text 3 para programar en Python

python Uno de los lenguajes de programación que más interés ha despertado en el mundo de la Seguridad Informática y Hacking, es sin duda Python.

Python es un lenguaje de programación interpretado y orientado a objetos, muy fácil de aprender y potente, desde mi punto de vista, recomendado para cualquier persona que desee aprender a programar, y mucho más, si desea orientar sus conocimiento a la seguridad de la información, muchas de las herramientas de hacking que se usan hoy en día, están escritas en este lenguaje.

Sublime_Text_LogoEn este tutorial, os mostraré como preparar Sublime Text 3 para empezar a desarrollar en Python.

Sublime Text es un potente y ligero editor de texto, su sistema de resaltado de sintaxis, su interfaz de color oscuro y el amplio abanico de plugins desarrollados por sus usuario, lo convierten sin lugar a dudas, en la mejor opción para desarrollar en Python.

1) Descargando Python

Antes de empezar a preparar Sublime Text, vamos a descargar Python, podemos hacerlo desde el sitio oficial en https://www.python.org/downloads/

python1

Si nos fijamos, Python dispone de dos versiones actualmente, la 3.5.1 y 2.7.11, recomiendo que descarguemos las dos, aunque la mayoría de las herramientas se programan en la 2.7.11.

python3La instalación de Python es bastante simple, descargamos las versiones y ejecutamos el paquete descargado, durante la instalación es bastante importante que dejemos marcado la siguiente opción Add Python.exe to Path:
python2 Está opción nos permitirá llamar a Python desde cualquier ruta en la que nos encontremos, únicamente escribiendo python en la consola, seguido de la ruta de nuestro archivo, ejemplo:

python C:\mis_programas_python\hola_mundo.py

Bueno, ya tenemos Python instalado en nuestro sistema, vamos a descargar ahora Sublime Text, lo podemos descargar desde aquí https://www.sublimetext.com/3

python4

Como vemos, es multiplataforma, lo podemos usar tanto en Windows, como en MAC o Linux, en mi caso lo descargaré para Windows.

2) Preparando Sublime Text 3

Después de la instalación de Sublime Text, lo primero que debemos de hacer es instalar el gestor de paquetes. El gestor de paquetes nos permite añadir y eliminar complementos de terceros que mejorarán el entorno de desarrollo.

Para instalar el gestor de paquetes, debemos de abrir la consola, esto podemos hacerlo con la combinación de tecla CTRL + ` o  accediendo al menú View – Show Console.

Una vez abierto la consola, copiamos y pegamos el siguiente código de https://packagecontrol.io/installation

import urllib.request,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)

y pulsamos Enter. El gestor de paquetes tardará unos segundos en instalarse, una vez instalado, ya podremos instalar plugins de terceros en nuestro Sublime Text.

3) Instalación de plugins

A continuación muestro una lista de plugins que no deben de faltarnos, para instalarlos, debemos de abrir la Paleta de Comandos, podemos abrirla con la combinación de tecla CTRL + SHIFT + P o en el menú Tools – Command Palette.

Una vez abierta la Paleta de Comandos, nos tiene que aparecer lo siguiente:

python5

Elegiremos la opción Install Package e instalaremos los siguientes puglins:(algunos plugins es posible que no aparezcan, adjuntaré links para descargarlos manualmente):

3.1) Anaconda

Anaconda es un paquete de Python extremadamente potente para Sublime que convierte nuestro editor de texto en un completo IDE, algunas de sus características son:

  • Autocompletado de código Python.
  • Muestra errores de sintaxis y PEP8.
  • Ofrece documentación de Python.
  • Refactor (cambiar el nombre) del objeto.
  • Autoimport.
  • Muchas más opciones.

3.2) SidebarEnhancements

Muy importante, ofrece una barra lateral desde la cual podemos crear, borrar, editar, etc los archivos.

python6

Podemos descargarlo de aquí: https://github.com/titoBouzout/SideBarEnhancements

3.3) Alignment

Un simple plugin que permite alinear el código, si te gusta programar de forma muy organizada y entender el código en un simple vistazo, este plugin no puede faltar.

python7

python8

Para utilizar : Seleccionar las líneas que desee alinear y pulsar CTRL + ALT + A

3.3) Colorpicker

Nos muestra una paleta de colores sobre la marcha.

python9

Para utilizar : CTRL + SHIFT + C

3.4) GitGutter

Este es un plugin que nos dirá qué lineas han cambiado desde la última modificación. Un indicador aparecerá al lado de los números de línea.

3.5) FTPSync

Si trabajamos con archivos alojados en un servidor FTP remoto, este plugin nos será de gran ayuda, hay que tener en cuenta que no soporta SFTP, para configurarlo iremos a Preferences > Package Settings > FTPSync > Setup FTPSync.

python10

Si necesitamos un plugin SFTP podemos utilizar el siguiente, es gratuito para un único usuario https://wbond.net/sublime_packages/sftp.

4) Personalización

4.1) Instalar diccionario de Español.

Si programamos y escribimos en castellano, es posible que veamos constantemente las palabras subrayadas, y esto puede ser molesto, ya que Sublieme Text entiende que están mal escritas, para decirle a Sublime Text que diccionario usar, primero tendremos que descargarlo.

Podemos descargar el diccionario desde aquí: https://github.com/titoBouzout/Dictionaries

Nos harán falta los siguientes:

  • Spanish.aff
  • Spanish.dic
  • Spanish.txt

Una vez descargados los archivos, accedemos a la carpeta Packages dentro de la carpeta de configuración de nuestro editor Sublime text, esta carpeta de encuentra en:

C:\Users\nombre_usuario\AppData\Roaming\Sublime Text 3\Packages

Dentro de este directorio, deberemos de crear una carpeta llamada Language - Spanish y copiamos los archivos descargados dentro de él.

Después, para activarlo, bastará con ir a View > dictionary > Language – Spanish > Spanish y activarlo, y una vez activado le indicaremos a Sublime Text que a partir de ahora nuestro corrector ortográfico sea el Español en View > Spell check o pulsando la tecla F6.

4.2) Desactivar PEP8 en Anaconda

PEP8 describe la Guía de Estilo de Código Python, es decir, cómo debemos escribir código Python de manera consistente y elegante.

python11Por defecto viene activado con Anaconda y puede ser molesto los constantes avisos si hemos descargado código de la red, si no queremos cumplir a raja tabla con este estilo lo podemos desactivar modificando el archivo Anaconda.sublime-settings en Preferences – Package Settings – Anaconda – Settings Default, modificando la siguiente linea a false.
python12

4.3) Combinación de teclas más usadas

Es muy aconsejable pasar un tiempo aprendiendo los atajos de teclado más usados, ya que nos ahorraran mucho tiempo cuando estemos programando. Los accesos directos que más utilizo son los siguientes:

  • CTRL + K : Borra la línea actual.
  • CTRL + X : Corta la línea actual.
  • CTRL + SHIFT + ARRIBA : Mueve el texto resaltado arriba.
  • Ctrl + Shift + ABAJO : Mueve el texto resaltado abajo.
  • CTRL + W : Cierra la pestaña actual.
  • CTRL + KK : Borra todo desde el cursor hasta el final de la línea.
  • CTRL + F : Buscar.
  • CTRL + H : Buscar y reemplazar.
  • CTRL + KU : Convertir el texto seleccionado a mayúsculas.
  • CTRL + KL : Convertir el texto seleccionado a minúsculas.
  • CTRL + KB : Alternar la barra lateral.
  • CTRL + [ : Indentar la línea actual.
  • CTRL + ] : Sangrar la línea actual.
  • CTRL + / : Comentar / Descomentar la línea o la selección actual.
  • ALT + SHIFT + [NÚMERO] : Divide la pantalla en X columnas (máximo 4)
  • CTRL + 0 : Centra la barra lateral.
  • CTRL + 1-4 : Centra la columna 1-4.
  • CTRL + SHIFT + 1-4 : Mueve el archivo a la columna 1-4.

Lista completa de atajos para Sublime Text:

http://docs.sublimetext.info/en/latest/reference/keyboard_shortcuts_win.html

5. Compilar y mostrar en la consola

Una vez hemos terminado nuestro programa, es hora de probarlo, Sublime Text cuenta con un atajo de teclado CTRL + B para compilar y ejecutar nuestro código, el problema, es que puede que no lo ejecute correctamente si no lo hemos configurado bien.

Vamos a configurar Sublime para que cuando pulsemos el atajo de teclado, nos abra una ventana de consola de comandos y ejecute el código automáticamente, nos vamos a Tools -> Build System -> New Build System y pegamos el siguiente código:

{
    "cmd": ["start", "cmd", "/k", "c:/python27/python.exe", "$file"],
    "selector": "source.python",
    "shell": true,
    "working_dir": "$file_dir"
}

python13

Guardamos el archivo y seleccionamos nuestro ejecutable de Python en Tools -> Build System

python14

El código anterior es válido para ejecutar Python 2.7, si os fijáis, tengo uno para Python 2.7 y otro para Python 3, para crear el de Python 3, únicamente cambiamos la ruta del ejecutable a la hora de crear el archivo.

Ahora al pulsar CTRL + B veremos como se ejecuta nuestro código en la consola de comandos.

python15

Esto es todo, espero os sirva de ayuda.

Saludos!!

Navega por la Deep Web con Tails y un USB

Todo el mundo ha oído alguna vez hablar sobre la Deep Web, en la entrada de hoy, os mostraré como podemos crear un USB para acceder a la Deep Web de manera segura, gratuita y anónima con una distribución llamada Tails.

¿Que es la Deep Web?

La Deep Web, o también conocida como Internet profunda o invisible, es la parte de Internet que no ha podido ser indexada por los motores de búsqueda, ya sea por páginas privadas o material que ha sido ocultado, quedando así en mayor parte de manera inaccesible.

Se estima que la Deep Web es 500 veces mayor que el Internet que conocemos, siendo el 95 % de esta información públicamente inaccesible.

deepweb

¿Que tiene la Deep Web en especial?

Normalmente cuando se habla sobre la Deep Web se le atribuye todo tipo de acciones delictivas, pero no sólo es usada para estos fines, debemos de recordar que en algunas partes del mundo el acceso a Internet está restringido por los gobiernos, y la Deep Web puede ser la única manera de saltarse las restricciones y tener acceso a Internet.

En la Deep Web nos podemos encontrar lo siguiente:

  • Contenido almacenado por los gobiernos u organizaciones, como por ejemplo la NASA (información sobre investigaciones científicas, datos meteorológicos, información de personas).
  • Venta de drogas.
  • Venta de objetos robados o falsificados.
  • Pornografía clasificada como ilegal.
  • Mercado negro de sicarios.
  • Documentos clasificados como los de wikileaks.
  • Foros de crackers en busca de víctimas.
  • Páginas para comprar o fabricar armas.
  • Piratería de libros, películas, música, software, etc.
  • Tráfico ilegal de órganos.

Preparando nuestro USB con Tails

  1. Preparar un USB (Con 2GB es suficiente)
  2. Descargar la ISO de Tails desde su web oficial – AQUI
  3. Descargar un programa para crear un Live USB con Tails, podemos utilizar YUMI Multiboot o Linux Live USB Creator.

Explicaré como hacerlo con YUMI Multiboot, aunque es igual de sencillo hacerlo con Linux Live USB Creator.

hacktails1Una vez descargado YUMI ejecutamos el .exe, nos aparecerá una ventana como la siguiente, a continuación comento como debemos de dejarlo configurado.

hacktails2

  1. Elegimos nuestro USB.
  2. Indicamos que queremos formatear la unidad antes de crear el Live USB
  3. Seleccionamos Tails (Anonymous Browsing)
  4. Buscamos la ISO que previamente nos hemos descargado desde la web oficial.
  5. Iniciamos la creación del USB con Tails.

Nos saldrá una ventana de advertencia, que nos indica que todo lo que tuviésemos en el USB se perderá al crear el Live.

hacktails3

hacktails4

Una vez terminado el proceso, YUMI nos preguntará si queremos añadir mas ISOs al USB, indicamos que no.

hacktails5
Una vez terminado, es hora de reiniciar nuestro ordenador, y presionar la tecla de Boot Options durante el arranque, normalmente suele ser con la tecla ESC, F9 o F12.

Cuando nos aparezca las opción de arranque, indicaremos que queremos arrancar desde el USB.

hacktails7

hacktails6

Una vez arrancado Tails, buscamos el navegador TOR, dentro de Applications.

hacktails8

Y comprobamos si estamos dentro de la red TOR y nuestra verdadera IP oculta, lo podemos hacer accediendo a la web whatismyipaddress.com.

Sin usar Tails veríamos esto:

hacktails10

Es decir, navegamos sin proteger nuestra IP, y somos fácilmente rastreables, en cambio con Tails veríamos esto:

hacktails9

Aparentemente estamos navegando desde EEUU, en concreto desde la Universidad de Michigan.

A partir de aquí, ya cada uno usará Tails para sus propios fines, os dejo aquí algunas cosas que me he encontrado, billetes falsos, drogas, venta de armas, etc.

tails1 tails2 tails3

Saludos y Happy Hacking!!!

Cómo instalar Parrot OS en VMware

parrotos

Hoy vengo a hablaros sobre una de las distribuciones “top” orientadas a la seguridad informática y pentesting, Parrot OS, que junto a Kali Linux y Bugtraq son a día de hoy las más utilizadas.

Parrot OS es una distribución de Linux basada en Debian con el kernel de Linux 4.3 (en su versión 2.2.1), ha sido desarrollada por un equipo de hackers italianos llamados FrozenBox, utiliza MATE 1.8.1 como escritorio y debido a la gran cantidad de herramientas y la importancia de actualizarlas, tiene un modelo de actualización continua (Rolling release).

vmware_logoVeamos cómo instalar esta excelente distribución de Linux sobre una máquina virtual en VMware.

Para descargarla, visitamos su web oficial en https://www.parrotsec.org/download.fx

Hackpuntes-0044

En VMware “click” en “Create a New Virtual Machine” o en el menú “File” -> “New Virtual Machine”.

Hackpuntes-0004

Hackpuntes-0005Hackpuntes-0006 Hackpuntes-0007 Hackpuntes-0008 Hackpuntes-0009 Si tenemos buena máquina, y podemos permitírnoslo, seleccionaremos 1 procesador con 2 núcleos, y 2048 de RAM, en caso contrario, pondremos 1 procesador con 1 núcleo y 1024 o 512 de RAM.

Hackpuntes-0022Hackpuntes-0012 Hackpuntes-0013 Hackpuntes-0014 Hackpuntes-0015 Hackpuntes-0016 Hackpuntes-0017 Hackpuntes-0018 Hackpuntes-0019

Una vez preparada la máquina virtual, tendremos que seleccionar la ISO de Parrot OS que previamente nos hemos descargado en la unidad CD/DVD virtual, para ello vamos a “Edit virtual machine settings”.

Hackpuntes-0023

Hackpuntes-0024

Arrancamos nuestra máquina y comenzamos a instalar.

Hackpuntes-0025

Hackpuntes-0026 Hackpuntes-0027

Al iniciar configuramos nuestro idioma, zona horaria y teclado.

Hackpuntes-0028 Hackpuntes-0029 Hackpuntes-0030 Hackpuntes-0031

Uno de los pasos más importantes, es definir la contraseña del usuario root, el usuario root (superusuario) es el nombre de la cuenta que posee todos los privilegios sobre el sistema y sus usuarios.

Hackpuntes-0033

Después tendremos que configurar otra cuenta de usuario con su contraseña, está será la que usemos, siempre y cuando no sea necesario iniciar con la cuenta de root.

Hackpuntes-0034 Hackpuntes-0035 Hackpuntes-0036

Configuramos la zona horaria, como dato a tener en cuenta, os diré que si queremos mantener el mayor anonimato en nuestras labores de pentesting, deberemos de iniciar la instalación con el idioma inglés, y configurar una zona horaria distinta a la cual nos encontramos.

Hackpuntes-0037

Pasamos al particionado de discos, como es una máquina virtual y solo usaré Parrot OS utilizaré el método “Guiado – utilizar todo el disco” con todos los ficheros en una partición y sin cifrar.

Hackpuntes-0038 Hackpuntes-0039 Hackpuntes-0040 Hackpuntes-0041 Hackpuntes-0042 Hackpuntes-0043

Después de esperar la instalación, nos preguntará si queremos instalar el cargador de arranque, le indicaremos que sí, y dejaremos la que nos marqué por defecto /dev/sda.

Hackpuntes-0045 Hackpuntes-0046 Hackpuntes-0048

Aquí hemos terminado la instalación, nos queda quitar la imagen ISO de Parrot OS que montamos sobre la unidad CD/DVD al principio de la instalación y dejar por defecto el HDD (autodetected).

Volvemos a “Edit virtual machine settings” y lo dejamos de la siguiente manera.

Hackpuntes-0023

Hackpuntes-0049

Arrancamos para ver si todo ha sido instalado correctamente, iniciamos sesión como root y a disfrutar del hacking!!!!!

Hackpuntes-0050 Hackpuntes-0051

Saludos y espero os sea de ayuda.

Dendroid – Crea tu propio Troyano para Android – Parte III

Esta será la última parte de configuración de nuestro troyano para Android, en la cual bindearemos (fusionaremos o uniremos) la APK maliciosa generada en el anterior tutorial por nosotros con otra APK legítima de Google Play para camuflarla.

Lo primero, deberemos de descargarnos una APK desde Google Play, yo voy a elegir la APK de Angry Birds.

den20-1024x397

Existen muchas maneras de conseguir la APK desde Google Play, yo os explicaré dos posibilidades, la primera accediendo directamente en nuestro terminal a la ruta /data/app (lugar donde se almacenan las APK cuando se descargan de Google Play antes de su instalación) y copiando la APK a nuestro PC (esta opción es la más recomendada, pero posiblemente necesitemos ser root en nuestro terminal).

den23

y otra haciendo uso de una web de terceros para descargarla directamente en nuestro PC (menos recomendada y mas fácil).

Si os decidís por la segunda opción, podéis hacer uso de esta aplicación web llamada APK Downloader pero debo de comentaros que la APK que nos descargemos puede estar “modificada” respecto a la original y tener algún que otro regalito, esta conclusión la he sacado yo, desde las comprobaciones que he hecho, dado que realmente lo que hace la aplicación es pedir una URL, obtiene el nombre de la aplicación y accede a un directorio interno del servidor donde se almacenan APKs modificadas, por lo tanto esta aplicación web no obtiene la APK de Google Play, si no de su propio servidor.

den22-1024x491

Independientemente de como hayamos obtenido la APK, vamos a proceder a unirlas, para ello nos hará falta la última carpeta del proyecto Dendroid que utilizaremos, llamada APKBinder.

dendroid2

Veremos los siguientes archivos

den24

Debemos de abrir desde Visual Studio el archivo APKBinder, podemos descargar la versión gratuita de Visual Studio 2015 desde AQUI.

Nos vamos a Archivo –> Abrir –> Proyecto o solución.

den25

Buscamos nuestra carpeta APKBinder y abrimos el archivo para Visual Studio llamado también APKBinder.

den26

Botón derecho sobre el proyecto y Click en Generar.

den27

Iniciamos.

den28

Y como último paso, hacemos Click en el TextBox de Source APK y buscamos nuestro DendroidAPK, en Target APK buscamos la APK de Angry Birds, y ya tendremos la apk bindeada.

den29

Podemos utilizar otros binders más recomendados, pero en este caso he utilizado todo lo que vienen en el proyecto Dendroid.

También se puede hacer uso del archivo ejecutable jar ubicado en \APKBinder\bin\Debug.

Y hasta aquí la serie de entradas sobre como crear un troyano para Android, espero que os haya gustado y sobre todo que hayáis aprendido.

Un Saludo y sed buenos.