domingo, 27 de marzo de 2016

Comparadores de código

Esta entrada está dedicada a los programadores que en algún momento tienen el código que están desarrollando en diferentes archivos y quisieran saber de un vistazo las diferencias entre ellos.

Imagen 1. Comparadores de código

Hablaré de tres programas con los que saber rápidamente las diferencias entre un archivo y otro. Así como de la opción que proporciona para tal efecto Microsoft Word.

Respecto a los programas, hablaré de uno por cada sistema operativo que utilizo normalmente: Microsoft Windows, OS X y Ubuntu. Por supuesto, todos gratuitos.

Windows. Notepad++


Imagen 2. Notepad++


Notepad++ ofrece muchas opciones a la hora de trabajar, como su facilidad para cambiar de codificación o sus plugins, y al final acaba sustituyendo al bloc de notas.

Lamentablemente únicamente esa disponible para Windows.

Tras instalar Notepad++, se le debe instalar el plugin comparador correspondiente. La manera de hacerlo es muy sencilla y está explicada en este link.

Ya con todo instalado, para comparar dos archivos primero los abriremos con Notepad++, y por último en el menú superior seleccionamos Plugins > Compare > Compare.

Imagen 3. Notepad ++ comparación

Con colores se muestra aquellas partes eliminadas, añadidas o modificadas y su lugar respecto un archivo y otro.

MAC OS X. FileMerge


Imagen 4. FileMerge

Los usuarios del sistema operativo OS X estamos de suerte ya que incorpora una aplicación para el objetivo que nos atañe.

Esta aplicación viene incluida gracias a Xcode por lo que es necesario tenerlo instalado para utilizarla.

La aplicación se llama FileMerge y para abrirla simplemente escribimos su nombre en Spotlight.

Imagen 5. FileMerge, búsqueda en Spotlight

Tras esto, o bien escribir la ruta a los archivos o arrastrar estos a la interfaz de la aplicación.

Imagen 6. FileMerge interfaz

Imagen 7. FileMerge comparación

Fue un alivio descubrirla ya que hasta entonces utilizaba el comando diff del terminal...

Ubuntu. Visor de diferencias Meld


Imagen 8. Meld

Por último, como corresponde al sistema operativo Ubuntu, se trata de una solución de instalación muy sencilla desde línea de comandos.

Simplemente escribir en el terminal:

apt-get install meld

(en caso de no funcionar: sudo apt-get install meld).

La interfaz es muy intuitiva y además de comparar archivos permite comparar el contenido de carpetas completas, incluso control de versión (esta última opción no la he probado).

Imagen 9. Meld interfaz

Imagen 10. Meld comparación

Muy útil y sobre todo rápido gracias a la posibilidad de comparar carpetas.


Con estos programas queda resuelto el poder comparar códigos sea cual sea el sistema operativo que utilicemos, y de manera gratuita. Cada uno posee unas características que harán que se convierta en nuestro favorito.

Microsoft Word


Terminar indicando que a pesar de hablar de comparadores de código en esta entrada, Microsoft Word tiene una opción que permite comparar documentos.

Su funcionamiento es idéntico a las aplicaciones anteriores.

Imagen 11. Microsoft Word, opción comparar

Imagen 12. Microsoft Word interfaz comparación

Imagen 13. Microsoft Word comparación

A la izquierda se muestran señaladas las diferencias y a la derecha los documentos que se han comparado.


Ojalá esta entrada os ahorre un tiempo en la búsqueda de aplicaciones para vuestro sistema operativo.


Un saludo,

Carlos A. Molina

Webs


Notepad ++.

Notepad ++, instalación plugin comparador.

Meld.

Imágenes de uso libre; para la imagen de esta entrada.

jueves, 24 de marzo de 2016

Aplicaciones útiles

Tras la entrada en la que recojo páginas web de utilidad, en esta guardaré aplicaciones y ayuda sobre ellas que considero importantes.

Imagen 1. Aplicaciones útiles




Al igual que en la entrada sobre páginas web, la iré actualizando.


########################################
########################################
Edición
########################################
########################################

###########
Texto
###########

Tex
Editor
Texmaker http://www.xm1math.net/texmaker/
Pasos instalación en Ubuntu.
http://www.linuxhispano.net/2010/11/16/instalar-latex-ubuntu/
Convertir .rtf a .tex
https://sourceforge.net/projects/rtf2latex2e/
manual usuario: http://rtf2latex2e.sourceforge.net/usage.html 
ejemplo uso: rtf2latex2e -t 2 nombreArchivo.rtf
ver comandos: rtf2latex2e --help o http://rtf2latex2e.sourceforge.net/manpage.html


###########
Bases de datos
###########

DB Browser for SQLite

 

###########
Audio
###########

Audacity
http://sourceforge.net/projects/audacity/
Es gratuito.



###########
Formato
###########

Dar formato a tarjetas SD
https://www.sdcard.org/downloads/formatter_4/
Windows y Mac.


Reducir peso pdf

http://www.emezeta.com/articulos/reducir-pdf
(Extracción en Ubuntu: tar zxvf Comp....tar.gz)


########################################
########################################
Android
########################################
########################################

Network Connections
Ver IP a la que se conectan tus aplicaciones.
Network Connections
https://play.google.com/store/apps/details?id=com.antispycell.connmonitor&hl=es 


########################################
########################################
Control remoto
########################################
########################################

VNC
https://www.realvnc.com/download/viewer/
Por ejemplo, puedes acceder a otro ordenador y trabajar con él desde el tuyo ya sea mediante línea de comandos o viendo la pantalla del otro ordenador.


########################################
########################################
Plugins
########################################
########################################

Lightbeam
Ver conexiones que se realizan al navegar
Descarga
https://www.mozilla.org/en-US/lightbeam/
Explicacion 
http://www.elladodelmal.com/2015/08/lightbeam-controlar-las-conexiones.html




########################################
########################################
Pentesting
########################################
########################################

Metasploit
https://github.com/rapid7/metasploit-framework/wiki/Nightly-Installers 
Web de instalación


########################################
########################################
Phishing
########################################
########################################

Weeman
Descarga
https://github.com/Hypsurus/weeman
Explicacion 
http://www.elladodelmal.com/2016/05/weeman-un-nuevo-framework-para-ataques.html


########################################
########################################
Addons
########################################
########################################

Elegir User Agent
Descarga Firefox
https://addons.mozilla.org/es/firefox/addon/uaswitcher/?src=search

########################################
########################################
Recopilaciones
########################################
########################################


Herramientas ciberseguridad
http://www.flu-project.com/2016/04/listado-de-herramientas-de-seguridad.html 

Cifrado, privacidad y anonimatohttps://daboblog.com/2016/02/23/sobre-mi-participacion-en-morteruelocon-2016-recursos-y-enlaces-de-interes/

Webs utilizadas


Páginas webs de utilidad.
http://cmoli.blogspot.com.es/2016/01/webs-de-utilidad.html

Imágenes de uso libre; para la imagen de esta entrada.
https://pixabay.com
Network Connections
Network Connections

lunes, 21 de marzo de 2016

TFG III. Nmap-scan. Escaneo de puertos

Hola a tod@s.

Ya con los hosts escaneados, el siguiente paso es saber qué puertos tienen abiertos y sus características. ¡Vamos a ello!

 Imagen 1. TFG II. Nmap-scan. Escaneo de puertos

Introducción

En esta demo-explicación, escanearé la Raspbery Pi 2 que me ayudó en mi presentación de las Morteruelo CON2016

Primero se estudian los hosts en red para saber la dirección IP de la Raspbery.

Imagen 2. Resultados estudio de hosts para saber dirección IP de la Raspberry Pi 2

Su IP es la 192.168.1.39, estudiemos sus puertos.

Versions (opción 5)


Con esta opción se obtienen los puertos abiertos de los hosts indicados y de cada puerto información como el nombre de la aplicación que corre en él, versión, protocolo del servicio e información extra.

Respecto a la actualización de las tablas 'hosts' y 'puertos', se explica en un apartado más adelante de esta entrada.

Imagen 3. Terminal, opción Versions

Imagen 4. Resultados opción Versions

Con la información obtenida, entre otros datos, se sabe que en la Raspberry Pi está montado un servidor Web en el puerto 80 y un servidor SSH en el 22.

Con la siguiente opción se obtendrán más detalles.

Script (opción 6)


En esta opción se lanzan una serie de scripts por defecto (opción -sC de Nmap), que tal como se indica en la página de Nmap se preocupan de ser rápidos, no causar mucho "ruido", etc.

Imagen 5. Terminal, opción Script

Imagen 6. Resultados opción Script


Se ha conseguido información más detallada de los servicios en los puertos.

Se observa que se ha copiado de nuevo la información de los puertos ya obtenida; como se dijo en la anterior opción, más adelante en esta entrada se explica la actualización de las tablas 'hosts' y 'puertos'.

Vamos a analizar la información obtenida explicando brevemente la teoría detrás de ella.

http-title


Se trata del título de la página mostrada en primer lugar en el servidor web.

En este caso no se ha dado ningún título a la página.

ssh-hostkey

 
Secure Shell host keys. Se utilizan para verificar la identidad de un servidor ssh (autenticación). Es decir, que el host al que estemos conectados por ssh sea realmente el deseado, nadie suplante su identidad.

En este caso, el servidor es la Raspberry Pi 2.

De este modo se evitan ataques Man-in-the-middle. En estos ataques alguien se sitúa entre nosotros y el servidor al que queramos conectarnos, de modo que puede leer toda la información transmitida.

Los hosts keys están formados por:
  • Clave pública: enviada al cliente que se conecta al servidor. Sirve para que todos podamos desencriptar información encriptada por el servidor con su clave privada. Utilizada para leer el mensaje de autenticación enviado por el servidor.
  • Clave privada: conocida solo por el servidor y su administrador ya que al utilizarse cifrado de clave pública, quien conozca la clave privada puede cifrar los mensajes de manera que se haga pasar por el servidor.
Indicar también que para verificar que los host keys pertenecen realmente a un servidor se utilizan diferentes técnicas. Una de ellas emplea un hash de fingerprinting único de dicho servidor ssh para cada host key creado.

Las claves son creadas al instalarse y configurarse el servidor, aunque el administrador puede cambiarlas posteriormente.

En los resultados obtenidos en esta demostración, el servidor utiliza los algoritmos de encriptación DSA, RSA y ECDSA de longitud 1024, 2048 y 256 bits respectivamente.

Ports (opción 8) 


Hasta ahora las opciones de escaneo de puertos estudiaban todos los que se encontraran abiertos para las direcciones IP indicadas.

Con la siguiente opción se estudia el estado de los puertos indicados para las direcciones IP deseadas.

La actualización de las tablas 'hosts' y 'puertos' se explica en el siguiente apartado.

Imagen 7. Terminal, opción Ports

Imagen 8. Resultados opción Ports


Se ha mandado estudiar 7 puertos, de los cuales solo 2 están abiertos; el resto cerrados. En esta opción se añade a la base de datos todos los puertos estudiados sea cual sea su estado.

Aunque para este ejemplo se ha analizado una sola dirección IP; un caso muy útil es saber en cuántos ordenadores hay abiertos unos puertos determinados, para lo que se analizaría todo el rango de red.

Imagen 9. Terminal, opción Ports. Qué hosts poseen ciertos puertos abiertos

Imagen 10. Resultados, opción Ports. Qué hosts poseen ciertos puertos abiertos

En este ejemplo se observa que ningún host posee el puerto 20 abierto y que dos hosts tienen el puerto 80 abierto.

Actualización tabla hosts y puertos


Tabla hosts


Siempre que se lleva acabo una de las opciones anteriores para el escaneo de puertos, en la tabla 'hosts' se añaden a 'up' los hosts conectados en la red.

Pero no se actualizan como 'down' ya que si todos los puertos están cerrados, Nmap no devuelve información del host, pero esto no significa que no esté en red; para verificar esto hay que usar las opciones de escaneo de hosts.

Imagen 11. Hosts up se añaden a la base de datos al escanear los puertos

Tabla puertos


Respecto a los puertos, se actualiza su estado a 'open', 'closed', 'filtered', etc. según Nmap detecte que admite conexiones, no lo haga o según responda a las peticiones realizadas para saber su estado.

Una definición de cada estado puede consultarse en el enlace del final de esta entrada.

Como se ha podido ver en los ejemplos mostrados; en cada escaneo de puertos, en la tabla 'puertos' de la base de datos la información del escaneo anterior  para cada hosts vuelve a copiarse. 

Esto se debe a que cada host escaneado con estado 'up' se añade con un nuevo id a la tabla 'hosts' por lo que para recordar la información de los puertos asociados a dicho host, esta se copia pero ahora asociada al nuevo id, al que por supuesto también se añade la nueva información que se escanee.

Generate file ports (opción 9)


Tras realizar el escaneado de la red, de la información almacenada en la base de datos seguramente se quiera conocer aquellas direcciones IP con ciertos puertos abiertos para realizar otras pruebas.

Esta opción generará un archivo .txt por cada puerto que se le indique de modo que en cada archivo se guardarán las direcciones IP con el puerto abierto. Recordar que en todas las opciones anteriores que estudian los puertos, el estado de estos es actualizado, así como añadidos los hosts up.

Los archivos se generan en carpeta 'ports' que se encuentra en la siguiente ruta:
/pentesting-core-master/modules/nmap-scan/model/ports.

El nombre del archivo generado está formado por:
nombreAuditoría_nombreRevisión_númeroDePuerto.txt

Imagen 12. Terminal, opción Generate file ports
  
Imagen 13. Archivos creados

Podemos ver cómo de estar el puerto cerrado en la base de datos, se nos avisa que el archivo creado estará vacío. Y de ya existir el archivo, se nos pregunta si queremos generar uno nuevo o sobreescribir el ya existente.

Otras opciones


Con esta entrada y la anterior podemos escanear hosts y sus puertos con las opciones del módulo nmap-scan.

Aun así, el modulo ofrece otras, como 'Custom Parameters' en la que el usuario indica las órdenes a Nmap a ejecutar, o la opción 'Get all information for a host' donde se exportará o mostrará por pantalla la información del host deseado.

Estas opciones están en desarrollo por lo que cuando estén disponibles se realizará una entrada sobre ellas.

Conclusión


Como se acaba de comentar, aún no se han explicado todas las opciones que ofrece el módulo nmap-scan; y no olvidar que será ampliado junto con otro módulo para poder buscar exploits de manera cómoda a partir de la información obtenida con el módulo que ha ocupado estas entradas.

Por ahora, ha quedado claro el objetivo y funcionamiento de este módulo y lo que permite llevar acabo.


Por tanto, simplemente terminar agradeciéndoos vuestro interés y ojalá os ayude en vuestros descubrimientos de la red.

¡Un saludo!

Carlos A. Molina

Recursos



Grupo SecuryPi
https://github.com/securipy/


Python y Nmap. Utilización

MorterueloCON 2016
http://cmoli.blogspot.com.es/2016/02/morteruelocon-2016.html

Nmap
- Version
- Script
- http-title

Ssh hosts-keys

Clave pública
(2014), Seguridad perimetral, monitorización y ataques en redes, Ra-Ma

Estado de cada puerto

Letras título

domingo, 13 de marzo de 2016

TFG II. Nmap-scan. Escaneo de hosts

Con la anterior entrada ya tenemos todo preparado para comenzar a escanear la red.

Ahora veremos las opciones disponibles para conocer los dispositivos conectados a la misma red que nosotros.

Imagen I. TFG II. Nmap-scan. Escaneo de hosts


Tras abrir la aplicación y acceder al módulo nmap-scan (punto 3 de la anterior entrada), recordemos que nos encontramos en el siguiente menú:

Imagen 2. Menú nmap-scan

Para seleccionar una opción, introducimos su número y pulsamos enter.

Primero, se debe trabajar con las opciones 1 y 2. Estas permiten crear una auditoría o revisión respectivamente, o escoger entre las ya existentes.

Auditoría y revisión


Auditoría (opción 1. Select audit)


Como se explicó en la anterior entrada, identifica al cliente a quien realizamos el estudio de su red. Por tanto, se le debe dar un nombre claro. Por ejemplo Ayuntamiento o Biblioteca, según a quién realicemos la auditoría.

La herramienta distingue la información guardada de cada escaneo según la auditoría a la que pertenezca, de modo que cada auditoría es independiente del resto.

Revisión (opción 2. Select revision)


Identifica el estudio realizado al cliente.

Para cada cliente analizaremos varias veces su red; es decir, puede que en enero hagamos el primer estudio, y luego volvamos en febrero para ver cuál es el estado actual, si ha corregido las vulnerabilidades encontradas en la anterior revisión, han surgido nuevas, etc.

Por tanto, un nombre usual para cada revisión es el mes en el que se ha realizado.

Un dato importante es que en cada revisión se copiará la información de la anterior, perteneciente a la misma auditoría, con el objetivo de disponer de toda la que hemos conseguido para este cliente.

Imagen 3. Creación auditoría y revisión

En la anterior imagen se observa cómo tras crear la auditoría se pasa directamente a la revisión.

Mencionar que tras elegir una auditoría, estaremos dentro de ella hasta que se no escoja otra; y de igual modo para la revisión.

Ya en una revisión de una auditoría, podemos analizar la red. De intentar escanear la red sin haber escogido una auditoría y revisión, la herramienta nos guiará para hacerlo antes de proceder con el escaneo.

Discovery (opción 3)

Esta opción permite conocer la dirección IP de los dispositivos conectados a la red. Es el primer paso que se realiza en una auditoría con el fin de hacernos una idea inicial.

Para ello se indica el rango de direcciones IPv4 a escanear.

Subrayar que la herramienta puede trabajar con todos los rangos de IPv4: clase A, B y C.

Características de esta opción son:

  • Hosts down: la base de datos se actualiza de modo que guarda los hosts conectados pero para los que ya no lo estén y su IP se haya mandado escanear, se pondrá su estado a down. Decir que se trabaja con la dirección mac asociada a la IP, no solo con la dirección IP ya que puede variar.
  • Hosts up: son los dispositivos conectados a la red; su estado es up y en cada escaneo se añade una nueva fila a la base de datos ya que de este modo se conoce la fecha y hora del último escaneo.
De querer mostrar el menú, escribimos 'menu'.

Imagen 4. Mostrar menú

Tras escoger la opción 3, debemos indicar el rango a escanear y pulsar enter.

Imagen 5. Ifconfig en nueva pestaña del terminal; saber nuestra dirección IP y máscara de red

Gracias al comando ifconfig (sistemas operativos Unix) o ipconfig (sistemas operativos Windows), sabemos que nuestra dirección IP asignada es 192.168.1.35 y pertenece a la red de máscara /24, por tanto para analizar toda la red el rango a indicar es 192.167.1.0/24.

Imagen 6. Analizar toda la red a la que estamos conectados

Se muestran todas las direcciones IP conectadas a la red. La nuestra aparece indicada aparte ya que no realizaremos el escaneo de nuestro propio host.

Discover OS (opción 4)

Como su nombre indica, estudia el sistema operativo de cada dispositivo conectado a la red

Sobre esta opción decir que actualiza la base de datos con los hosts up y down del mismo modo que la opción Discovery.

Al haberse realizado la opción Discovery previamente, la herramienta permite que en lugar de indicar el rango a escanear, realizar el escaneo sobre las direcciones IP almacenadas en la base de datos para la revisión actual. Recordar que en cada revisión se incorporan las direcciones de la anterior.

Esto supone una comodidad pero hay que tener en cuenta que nuevos hosts que se conecten a la red no serán detectados; para ello habría que indicar el rango manualmente (2. Specify IP).

Para este ejemplo se utiliza la opción '1. IP discovered'.

Imagen 7. Discover Operating System

Se muestra la dirección IP de los hosts conectados; para ver su sistema operativo abrimos la base de datos.

Información obtenida

Toda la información se guarda en la base de datos llamada 'brain.db'. Esta se encuentra en la ruta 'pentesting-core-master\modules\nmap-scan\model'.

Imagen 8. Base de datos. Auditorias guardadas

Imagen 9. Base de datos. Revisiones guardadas

Imagen 10. Base de datos. Información de los hosts

Como puede observarse, cada tabla posee columnas que relacionan revisiones y auditorias y la información obtenida con la revisión a la que pertenece. Cada auditoría, revisión, host, etc. poseen un identificador (id) único.

Siempre queda guardada la fecha y hora a la que se incluyó cada información.

What is my base IP (opción 10)

Terminar la entrada hablando de esta ayuda que permite obtener información de la red a la que estemos conectados.

Devuelve la dirección base, broadcast y la IP del primer y último host de la red; es decir, se trata de una calculadora IP.

Resulta muy útil cuando nos encontramos en una red cuya máscara no es tan sencilla como para saber la dirección base de manera inmediata. Recordar que la dirección base es importante para indicar el rango a estudiar.

Por ejemplo, si tenemos asignada la IP 172.16.220.5 con una máscara de subred /21:

Imagen 11. What is my base IP

Gracias a esta opción sabemos que para analizar toda la red se debe escribir 172.16.216.0/21.


Con esta entrada hemos conocido los dispositivos conectados a la red y su sistema operativo. En las próximas se estudiarán sus puertos.

¡Saludos!

Carlos A. Molina


domingo, 6 de marzo de 2016

TFG I. Nmap-scan. Instalación

Esta entrada es la primera de una serie en la que explicaré la herramienta que estoy desarrollando como Trabajo Fin de Grado (TFG) y que pude presentar en las pasadas jornadas MorterueloCON 2016.

Imagen I. TFG I. Nmap-scan. Instalación

Al ser la primera entrada; se explicará en qué consiste y lo necesario para poder comenzar a utilizarla.

1. Introducción


Primero indicar que la idea original es del grupo Securipy; se me ha dado la oportunidad de desarrollarla como TFG.

¿En qué consiste? Es un analizador de la red a la que estemos conectados. Permite conocer los dispositivos (ordenadores, teléfonos móviles, impresoras...) de la red, así como sus características. De modo que llegaremos a estudiar sus vulnerabilidades.

Pero no solamente es un analizador, sino que guarda la información, la organiza, actualiza, y permite trabajar con ella. Así como descargar recursos, exploits por ejemplo, que permitan hacer uso de la información recopilada.

Es decir, es una herramienta enfocada a la realización de auditorias, por lo que también clasifica la información según el cliente al que se realizó la auditoría y en base a la fecha.

1.1. Auditoría


Una auditoría en un servicio que una empresa, por ejemplo, contrata para que se haga un estudio de su red y detectar fallos de seguridad y mejoras.

2. Requisitos


A continuación se detalla lo necesario para comenzar a utilizarla.

2.1. Sistema operativo


La herramienta corre en un ordenador; en sistemas operativos como Ubuntu u OS X.

2.2. Software



2.2.1. Python

El lenguaje de programación utilizado ha sido Python.

Puede descargarse del siguiente enlace:


La versión que yo utilizo es la 2.7.

Una vez instalado, de no haberlo hecho automáticamente el sistema operativo, se debe realizar la configuración necesaria para poder utilizar Python desde el terminal.


2.2.2. Nmap

Analizador de redes muy extendido; será el responsable de realizar el escaneo de la red y de sus componentes.

Para instalarlo, click en este link y escoger el sistema operativo utilizado:


También, es necesario descargar e instalar sus librerías para Python. En el siguiente artículo se explica este proceso (no lleva nada de tiempo):

http://hacking-etico.com/2015/03/06/descubriendo-la-red-con-python-y-nmap-parte-1/

A modo de resumen del artículo anterior, se deben ejecutar desde el terminal estos dos comandos:

sudo apt-get install python-pip nmap

sudo pip install python-nmap


2.2.3. Lector SQLite

La información es almacenada en una base de datos SQLite.

Para poder visualizar la base de datos, debemos descargarnos un programa que lea archivos de extensión .db. Por ejemplo, desde el siguiente link:


2.3. Código de la aplicación


Esta herramienta es de código abierto por lo que todos podéis analizarlo y mejorarlo. Cualquier idea que me podáis proponer será muy bien recibida.

Para descargar los módulos necesarios debemos ir a GitHub; gran comunidad donde la gente comparte el código de sus aplicaciones.


2.3.1. Módulo pentesting-core

Tal como se indica en su página de GitHub, es el núcleo de los módulos desarrollados por Securipy.

La descarga se realiza desde:


Tras ello, simplemente descomprimirlo.

Aunque para este módulo no es necesario renombrar la carpeta descomprimida, veremos que para el siguiente sí.


2.3.2. Módulo nmap-scan

Este módulo se encarga de realizar los escaneos y trabajar con la información obtenida.

Su descarga:


Tras descomprimirlo, renombrar la carpeta de 'nmap-scan-master' a 'nmap-scan'. Esto es muy importante.

Finalmente, esta carpeta la llevamos dentro de la carpeta 'modules' que se encuentra dentro de pentesting-core.


2.3.3. Módulo exploit-finder

Encargado de descargar exploits.

No se explicará en esta entrada, dejándose para otras posteriores.


¡Ya estamos listos para utilizarla!

3. Lanzar la herramienta


Simplemente seguir estos pasos.

1. Abrir la terminal y cambiar el directorio de trabajo actual a la ruta en la que se encuentre el archivo '__init__.py', dentro de pentesting-core.

Imagen 2. Cambiar directorio de trabajo

2. Lanzar el siguiente comando:

sudo python __init__.py

Pedirá la contraseña, escribirla y pulsar tecla enter.

Importante. Si tras introducir la contraseña aparece este error:

--------------------------------------------------
  File "__init__.py", line 51, in <module>
    readline.read_history_file(history)

IOError: [Errno 22] Invalid argument
--------------------------------------------------

Debe modificarse la línea 51 del archivo '__init__.py', para ello simplemente abrirlo y comentar dicha línea; en Python se comenta añadiendo almohadilla # antes de lo que se desee comentar. Por tanto, en lugar de 'readline.read_history_file(history)', la línea 51 debe quedar  como '#readline.read_history_file(history)'.

Un programa muy bueno para modificar código es 'Sublime Text'. Puede descargarse desde su página; indicada al final de esta entrada.

3. Tras introducir la contraseña, tenemos acceso a los módulos que hayamos incluido en la carpeta 'modules' de pentesting-core.

Imagen 3. Menú para seleccionar módulo

En este caso la única opción es nmap-scan ya que el módulo exploit-finder no se ha incluido al no ser objeto de esta entrada.

La seleccionamos escribiendo 1 y pulsando la tecla enter.

Imagen 4. Menú módulo nmap-scan

Hemos accedido al menú del módulo map-scan. El nombre de cada opción describe perfectamente qué lleva acabo.

4. Para salir, escribir 'exit'. Como siempre, una manera "brusca" de terminar con lo que se esté realizando o salir de una opción es control + c.


Espero que os animéis a probarla. En las siguientes entradas se hará un recorrido por sus distintas opciones. ¡Ya me contareis!

Saludos,

Carlos A. Molina

4. Webs

Grupo SecuryPi

Python y Nmap. Instalación y utilización

Python

Nmap
Lector SQLite

Sublime Text (editor de código)
https://www.sublimetext.com
Letras imagen título
http://es.cooltext.com/