Herramientas de usuario

Herramientas del sitio


sad:ubuntu:p13

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
sad:ubuntu:p13 [2018/01/11 20:47]
José Manuel Guallar creado
sad:ubuntu:p13 [2019/01/04 13:18] (actual)
Línea 1: Línea 1:
-Qué es denyhosts+====== Instalación y prueba de denyhosts y brutessh.py ====== 
 +  
 +**Qué es denyhosts**
  
-     DenyHosts es una herramienta de seguridad de prevención de intrusos basada en registros para servidores SSH escritos en Python. Está destinado a prevenir los ataques de fuerza bruta en los servidores SSH mediante la supervisión de los intentos de inicio de sesión no válidos en el registro de autenticación y el bloqueo de las direcciones IP de origen. +DenyHosts es una herramienta de seguridad de prevención de intrusos basada en registros para servidores SSH escritos en Python. Está destinado a prevenir los ataques de fuerza bruta en los servidores SSH mediante la supervisión de los intentos de inicio de sesión no válidos en el registro de autenticación y el bloqueo de las direcciones IP de origen.
-     ​http://​denyhosts.sourceforge.net/​+
  
 +[[http://​denyhosts.sourceforge.net/​]]
    
-Qué es brutessh.py+**Qué es brutessh.py** 
 + 
 +Brutessh es un programa que usa la biblioteca paramiko ssh, para lanzar ataques de contraseñas de fuerza bruta al servicio sshd. Las herramientas son multihilo y usa un diccionario para las contraseñas. 
 + 
 +**Requisito previo** 
 + 
 +Instalación de Ubuntu Desktop 12.04 LTS \\ 
 +Instalación y seguridad de openssh-server \\ 
 +Instalación de BackTrack 5 R1 
 + 
 +**Notas de la practica** 
 + 
 +En esta práctica ​ veremos cómo hacer lo siguiente:​ 
 + 
 +  *   ​Instalaremos denyhosts en Ubuntu. 
 +  *   ​Instalaremos brutessh.py en BackTrack. 
 +  *   ​Usaremos brutessh en BackTrack para atacar a Ubuntu. 
 + 
 +**Verificamos que tenemos conexión** 
 + 
 +<code bash> 
 +root@ubuntu12:/#​ ifconfig -a 
 +</​code>​ 
 + 
 +si no tenemos conexion 
 + 
 +<code bash> 
 +root@ubuntu12:/#​ dhclient -v 
 +root@ubuntu12:/#​ /​etc/​init.d/​networking restart 
 +</​code>​ 
 + 
 +{{:​sad:​ubuntu:​p13:​01.png?​500|}} 
 + 
 +====== Actualización del indice de paquetes ====== 
 + 
 +<code bash> 
 +root@ubuntu12:/#​ apt-get update 
 +</​code>​ 
 + 
 +buscamos denyhosts 
 + 
 +<code bash> 
 +root@ubuntu12:/#​ apt-cache search denyhosts 
 +</​code>​ 
 + 
 +Instalamos los paquetes necesarios 
 + 
 +<code bash> 
 +root@ubuntu12:/#​ apt-get install denyhosts  
 +</​code>​ 
 +verificamos que se está ejecutando \\ 
 +<code bash> 
 +root@ubuntu12:/#​ ps -eaf | grep -v grep | grep denyhosts 
 +</​code>​ 
 +**ps -eaf**, muestra todos los procesos.\\ 
 +**grep -v grep**, filtra el proceso grep. \\ 
 +**grep denyhosts**,​ muestra solo el proceso denyhosts. \\ 
 + 
 +**ver los ficheros en el host** 
 + 
 +<code bash> 
 +root@ubuntu12:/#​ cd /etc 
 +root@ubuntu12:/​etc#​ ls -l *hosts.* 
 +</​code>​ 
 + 
 +Observamos 3 ficheros 
 +**denyhosts.conf ** que es el fichero de configuración \\ 
 +**hosts.allow** es el fichero donde añadimos los ordenadores que no restringimos el acceso \\ 
 +**hosts.deny** si nosotros añadimos un host en este fichero denegamos el acceso \\ 
 + 
 +{{:​sad:​ubuntu:​p13:​02.png?​500|}} 
 + 
 +**Observamos si el script de denyhosts se encuenta en init.d** 
 + 
 +<code bash> 
 +root@ubuntu12:/​etc#​ ls -l /​etc/​init.d/​denyhosts 
 +root@ubuntu12:/​etc#​ find /​etc/​rc*.d/​* -print | xargs ls -l | grep denyhosts 
 +</​code>​ 
 + 
 +{{:​sad:​ubuntu:​p13:​03.png?​500|}} 
 + 
 +**nivel de ejecución** 
 +Identifica las secuencias de comandos de inicio y finalización para denyhosts \\ 
 +Identifica el nivel de ejecución actual.\\ 
 +0 System Halt 
 +1 usuario individual 
 +2 Modo multiusuario completo (predeterminado) 
 +3-5 Igual que 2 
 +6 Reinicio del sistema 
 + 
 +====== Detenemos el servicio y volvemos a arrancarlo con /​etc/​init.d/​denyhosts ====== 
 + 
 +<code bash> 
 +root@ubuntu12:/​etc#​ cd /​etc/​init.d 
 +root@ubuntu12:/​etc/​init.d#​ ./denyhosts stop 
 +root@ubuntu12:/​etc/​init.d#​ ps -eaf | grep -v grep | grep denyhosts 
 +</​code>​ 
 + 
 +No devuelve nada, el servicio está parado 
 + 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ ./denyhosts start 
 +root@ubuntu12:/​etc/​init.d#​ ps -eaf | grep -v grep | grep denyhost 
 +</​code>​ 
 + 
 +Ahora nos devuelve 1 linea porque el servicio está ejecutandose 
 + 
 +{{:​sad:​ubuntu:​p13:​04.png?​500|}} 
 + 
 +====== Parar e iniciar el servico squid3 con el comando "​service"​ ====== 
 + 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ service denyhosts status 
 +</​code>​ 
 +Nos muestra el numero de proceso o PID, en mis caso es  3386. 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ ps -eaf | grep -v grep | grep 3386 
 +</​code>​ 
 +Tienes que reemplazar el PID por el tuyo 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ service denyhosts stop 
 +</​code>​ 
 +Este comando parara el demonio 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ ps -eaf | grep -v grep | grep denyhosts 
 +</​code>​ 
 +No muestra nada porque el proceso está detenido 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ service denyhosts start 
 +</​code>​ 
 +Iniciamos el servicio 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ ps -eaf | grep -v grep | grep denyhosts 
 +</​code>​ 
 +{{:​sad:​ubuntu:​p13:​05.png?​500|}} 
 + 
 +Abrimos el BackTrack y miramos la conectividad con el Ubuntu por medio de ssh 
 + 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ ssh student@192.168.153.47 "​uptime"​ 
 +</​code>​ 
 + 
 +{{:​sad:​ubuntu:​p13:​06.png?​500|}} 
 + 
 +Chequeamos el archivo auth.log de Ubuntu 
 + 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ grep "​Accepted password"​ /​var/​log/​auth.log | grep "​192.168.153.43"​ 
 +</​code>​ 
 + 
 +{{:​sad:​ubuntu:​p13:​07.png?​500|}} 
 + 
 +Instalamos y ejecutamos BruteSSH.py contra el sistema UBUNTU 
 + 
 +<code bash> 
 +root@bt:/## cd /​pentest/​passwords/​ 
 +</​code>​ 
 + 
 +En BackTrack, los programas de descifrado de contraseñas generalmente se encuentran en este directorio. 
 +<code bash> 
 +root@ubuntu12:/​pentest/​passwords/#​ ls -l 
 +root@ubuntu12:/​pentest/​passwords/#​ ls -l | grep -i brute 
 +</​code>​ 
 +{{:​sad:​ubuntu:​p13:​08.png?​500|}} 
 + 
 + 
 +vamos al navegador y nos descargamos ​  ​[[http://​217.182.207.57/​~jguallar/​brutessh/​brutessh-0.5.tar.bz2|bruessh-0.5.tar.bz2]]y nos lo descargamos en **/​pentest/​password** 
 + 
 +{{:​sad:​ubuntu:​p13:​09.png?​500|}} 
 + 
 +Unzip brutessh-0.5.tar.bz2 
 + 
 +<code bash> 
 +root@bt:/# cd /​pentest/​passwords/​ 
 +root@bt:/​pentest/​passwords/#​ ls -l brutessh-0.5.tar.bz2 
 +root@bt:/​pentest/​passwords/#​ bunzip2 brutessh-0.5.tar.bz2 
 +root@bt:/​pentest/​passwords/#​ ls -l brutessh-0.5.tar 
 +root@bt:/​pentest/​passwords/#​ tar xovf brutessh-0.5.tar 
 +</​code>​ 
 + 
 +{{:​sad:​ubuntu:​p13:​10.png?​500|}} 
 + 
 + 
 +Para preparar el fichero de fuerza bruta vamos a crear un fichero con las 50 primeras password de John the Ripper para generar suficiente trafico, es suficiente para que nos bloquee 
 +<code bash> 
 +root@bt:/​pentest/​passwords#​ rm brutessh-0.5.tar 
 +</​code>​ 
 +Ya no necesitamos el fichero 
 +<code bash> 
 +root@bt:/​pentest/​passwords#​ cd brutessh/ 
 +root@bt:/​pentest/​passwords/​brutessh/#​ls -la 
 +root@bt:/​pentest/​passwords/​brutessh#​ cat /​pentest/​passwords/​john/​password.lst | grep -v "​^#"​ | head -50 > password.txt 
 +</​code>​ 
 + 
 +{{:​sad:​ubuntu:​p13:​11.png?​500|}} 
 + 
 +======Como usar BruteSSH ====== 
 + 
 +<code bash> 
 +root@bt:/​pentest/​passwords/​brutessh#​ python brutessh.py -help 
 +</​code>​ 
 +{{:​sad:​ubuntu:​p13:​12.png?​500|}} 
 + 
 +Vamos a usar BrueSSH contra DenyHosts 
 +<code bash> 
 +root@bt:/​pentest/​passwords/​brutessh#​ python brutessh.py -h 192.168.153.47 -u root -d password.txt 
 +</​code>​ 
 +{{:​sad:​ubuntu:​p13:​13.png?​500|}} 
 + 
 +Ahora vamos a testear si Ubuntu a bloqueado al BackTrack o no :?::?::?: 
 +<code bash> 
 +root@bt:/​pentest/​passwords/​brutessh#​ ssh student@192.168.153.47 
 +</​code>​ 
 +Ahora intentamos telnet por el puerto 22 
 +<code bash> 
 +root@bt:/​pentest/​passwords/​brutessh#​ telnet 192.168.153.47 22 
 +</​code>​ 
 +;-);-) 
 + 
 +{{:​sad:​ubuntu:​p13:​14.png?​500|}} 
 + 
 +Ahora toca analizar el Ubuntu y en particular el archivo de deny.host 
 + 
 +''​**print de pantalla que hay que entregar**''​ 
 +<code bash> 
 +root@ubuntu12:/​etc/​init.d#​ grep sshd /​etc/​hosts.deny 
 +root@ubuntu12:/​etc/​init.d#​ grep -i "​Failed password"​ /​var/​log/​auth.log | grep "​192.168.153.43"​ 
 +root@ubuntu12:/​etc/​init.d#​ date 
 +root@ubuntu12:/​etc/​init.d#​ echo "tu nombre"​ 
 +</​code>​ 
  
-     ​Brutessh es un programa que usa la biblioteca paramiko ssh, para lanzar ataques de contraseñas de fuerza bruta al servicio sshd. Las herramientas son multihilo y usa un diccionario para las contraseñas. 
  
  
-Requisito previo 
  
-     ​Ubuntu:​ Lección 1: Instalación de Ubuntu Desktop 12.04 LTS 
-     ​Ubuntu:​ Lección 8: Instalación y seguridad de openssh-server (a.k.a., sshd) 
-     ​BackTrack:​ Lección 1: Instalación de BackTrack 5 R1 
  
  
-Notas de laboratorio 
  
-     En este laboratorio,​ veremos cómo hacer lo siguiente: 
-         ​Instalaremos denyhosts en Ubuntu. 
-         ​Instalaremos brutessh.py en BackTrack. 
-         ​Usaremos brutessh en BackTrack para atacar a Ubuntu. 
sad/ubuntu/p13.1515703642.txt.gz · Última modificación: 2019/01/04 13:18 (editor externo)