Cazando Malware (Parte IV)

Ya tenemos funcionando todo el laboratorio, pero claro todo sin contraseña ni nada que evite miradas de curiosos. A ésto hay que ponerle remedio y ¿cómo lo vamos a hacer?. Instalando un plugin llamado X-pack en todos los elementos del laboratorio (Logstash,  Elasticsearch y Kibana). Ello nos proveerá de un servicio de autenticación de usuarios y además toda la información que se desee consultar/enviar a el Elasticsearch tendrá que ser previa validación, así evitaremos miradas inesperadas de usuarios no autorizados.

Parte IV A: Añadiendo seguridad con x-pack


Instalarlo en Kibana:

Ejecutamos lo siguiente para instalar el plugin:
$ ./bin/kibana-plugin install x-pack
Nos saldrá un mensaje en el cual aceptamos todo.

Editamos config/kibana.yml y añadimos el usuario y la contraseña que hayamos establecido

El user y password por defecto es elastic:changeme

*Nota: La primera vez que accedáis tendrá que ser con el usuario por defecto y os vais al apartado management -> users -> y editáis el user elastic y entonces a partir de ese momento si tendréis que cambiar lo siguiente.
elasticsearch.username: "elastic"
elasticsearch.password: "password”

Una vez instalado e iniciado dentro del propio frontal web en la parte de management se podrán administrar los users, cambiar contraseñas etc…



Instalarlo en ElasticSearch:
Paramos el servicio de Elasticsearch e instalamos el x-pack y seguidamente reiniciamos el servicio de Elasticsearch:
$ service elasticsearch stop
$ /usr/share/elasticsearch/bin/elasticsearch-plugin install x-pack
$ service elasticsearch restart

Instalarlo en Logstash:
Ejecutamos el siguiente comando para instalar el plugin:
/usr/share/logstash/bin/logstash-plugin install x-pack
Editamos el fichero /etc/logstash/conf.d/logstash-cowrie.conf, y ponemos user/pass:
output {
    if [type] == "cowrie" {
        elasticsearch {
            hosts => ["http://elastic:password@localhost:9200/"]
        }

        file {
            path => "/home/cowrie/tmp/cowrie-logstash.log"
            codec => json
        }

        stdout {
            codec => rubydebug
        }
Editamos /etc/logstash/logstash.yml y añadimos al final:
xpack.monitoring.enabled: false
xpack.monitoring.elasticsearch.url: http://localhost:9200/ # o la ip donde lo tengais.

Reiniciamos el Logstash para que se valide.

Parte IV B: Añadiendo mapa y geolocalización

En esta parte también vamos a instalar el "plugin del mapa" para ello deberemos de descargar la base de datos con las coordenadas gps correspondientes asociadas a las direcciones IP.




Instalando geolocalización de IP
$ /usr/share/logstash/bin/logstash-plugin install logstash-filter-geoip
Creamos la ruta /opt/logstash/vendor/geoip/ con:
$ mkdir –p /opt/logstash/vendor/geoip/
*Nota: En este caso lo metemos en /opt/ , si deseáis meterlo en otro lado podéis ponerlo donde queráis pero recordar que tendréis que editar la ruta de el apartado de abajo sustituyendo la ruta por la vuestra.

Descargamos la bbdd que contendrá los países asociados a las ip:
$ cd /opt/logstash/vendor/geoip/
$ curl -O http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.tar.gz
$ tar xvfz GeoLite2-City.tar.gz
Dejamos solo en ese directorio el fichero descomprimido “GeoLite2-City.mmdb”

Editamos fichero /etc/logstash/conf.d/logstash-cowrie.conf y en el apartado de filter{} añadimos:
geoip {
       source => "src_ip"
       target => "geoip"
       database => "/opt/logstash/vendor/geoip/GeoLite2-City.mmdb"
      }
*Nota: El "plugin del mapa" lo que hará será enviar diversos datos a Elasticsearch que tendremos que normalizar en el logstash estos datos se enviarán encapsulados dentro de la variable geoip.<>.

Reiniciamos el logstash para que se lleven a cabo los cambios.

Dentro del kibana vamos a management -> index patterns -> y le damos a actualizar para que el elastic indexe los datos nuevos.



y creamos el mapa en visualice:


Y esto sería todo para esta parte. No he querido hacer demasiado hincapié en el uso de Kibana ya que el la siguiente y última parte de este laboratorio realizaré un vídeo más didáctico para un uso básico de Kibana.

Espero que ya tengáis montado todo y os este funcionando correctamente , esta parte no es obligatoria para que el laboratorio funcione pero es recomendable para darle un extra de seguridad a todos los elementos del mismo.

¡Un saludo y nos vemos la ultima parte!

Aquí tenéis todas las partes del laboratorio:

Comentarios