Snort: Consultas a la base de datos

Abrimos conexión con la base de datos

mysql -u root -p

En la base de datos de snort,

use snort;

Para ver el diagrama entidad relación de la base de datos:

Buscamos el identificador del evento que necesitamos:

select sig_id,sig_name from signature;

En mi caso, es

223 | COMMUNITY WEB-MISC mod_jrun overflow attempt

Seleccionamos los eventos de mi  signature:

select * from event where signature = 223;

En la tabla de eventos, tenemos las alertas con origen y destino

SELECT timestamp, inet_ntoa(ip_dest), inet_ntoa(ip_src) FROM iphdr WHERE  inet_ntoa(ip_src)="192.168.5.125";

 

Finalmente, hacemos el join entre ambas tablas, y ya podemos sacar el resultado a un fichero de texto:

select inet_ntoa(ip_src), inet_ntoa(ip_dst) from event,iphdr  where iphdr.cid=event.cid and event.sid=iphdr.sid and event.signature = 223  and inet_ntoa(ip_dst)="195.23.2.123" GROUP BY ip_src ORDER BY ip_src  INTO OUTFILE '/tmp/res.txt';

Sobre el acceso a snort a través de la base de datos, tienen un post estupendo en everything about nothing.

Mysql. Olvidé la contraseña de root

Olvidé contraseña de root

Este tutorial está hecho sobre una máquina centos 6.4. Es posible que en otras distribuciones, las rutas absolutas no sean las mismas.

He olvidado la contraseña del usuario root en mysql.

Paramos el servicio de mysql, y arrancamos de nuevo con el flag “skip-grant-tables”:
service mysqld stop
/usr/bin/mysqld_safe --skip-grant-tables --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql

 

En la consola de mysql, abrimos sin contraseña, y actualizamos el valor de la contraseña de la tabla users:
mysql -u root mysql

Problema socket mysql

Tras un reinicio, al aplicar actualizaciones, no se puede encender la base de datos:

[root@server~]# service mysqld start
Another MySQL daemon already running with the same unix socket.
Iniciando mysqld: [FALLÃ]

Para buscar el nombre del socket

cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

Siguiendo este tutorial, salvaguardamos el socket de mysql, y hacemos un apagado ordenado con shutdown -r.


[root@server~]# ls -la /var/lib/mysql/mysql.sock
srwxrwxrwx. 1 mysql mysql 0 ene 15 13:16 /var/lib/mysql/mysql.sock
[root@server~]# mv /var/lib/mysql/mysql.sock /var/lib/mysql/mysql.sock.old
[root@server~]# shutdown -r now

También hay que verificar que se pueda crear el archivo .pid

[root@server~]# tail /var/log/mysqld.log | grep -i error
140115 13:18:49 [ERROR] /usr/libexec/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 2)
140115 13:18:49 [ERROR] Can't start server: can't create PID file: No such file or directory
[root@server~]# mkdir /var/run/mysqld/
[root@server~]# chown mysql:mysql /var/run/mysqld
[root@server~]# service mysqld restart