Skip to content

nicoriva/HIPS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 

Repository files navigation

HIPS

HIPS o Host Intrusion Prevention System es un paquete de software instalado que monitorea un solo host en busca de actividad sospechosa mediante el análisis de eventos que ocurren dentro de ese host. En otras palabras, un Sistema de prevención de intrusiones en el host (HIPS) tiene como objetivo detener el malware al monitorear el comportamiento del código. Esto hace posible ayudar a mantener su sistema seguro sin depender de que se agregue una amenaza específica a una actualización de detección.

Instalación:
El software fue diseñado para correr en distribuciones de Linux. Este HIPS fue desarrollado en CentOS 7.
Para la utilización del software, Centos debe tener ciertas aplicaciones instaladas, las siguientes instalaciones deben hacerse desde nuestro usuario propio y ejecutarse como Root solo de ser necesario, ya que algunas instalaciones pueden dañar el sistema operativo si se hacen con un usuario Root.
Primeramente, debemos asegurarnos de que tenemos GCC instalado:

sudo yum install gcc

Luego, se requiere Python 3. Para instalar Python 3 ejecutamos:

sudo yum install python3

sudo yum install python3-devel

PIP3 es necesario para instalar librerías de Python.

sudo yum install epel-release

sudo yum install python3-pip

Psutil es la librería que se encarga de que Python pueda ejecutar procesos.

pip3 install psutil

Para almacenar ciertos datos, se requiere una Base de Datos hecha en PostgreSQL.

sudo yum install postgresql-client

sudo yum install postgres1l-devel

sudo systemctl start postgresql

Luego de culminar con las instalaciones procedemos a crear la base de datos, el usuario y las tablas.

sudo su – postgres

Una vez en el Bash escribimos

psql

Cuando nos encontremos en el Postgres:

create database hips_so2;

create user nombreusuario with password ‘contrasenha’;

GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO nombreusuario;

\q

Y con la última instrucción nos encontramos nuevamente en el Bash.
Para seguir debemos configurar nuestro pg_hba.conf. Esto lo hacemos de la siguiente forma:

cd /var/lib/pgsql/data/

vi pg_hba.conf

Una vez abierto el archivo, lo debemos dejar como muestra la siguiente imagen:

pg_hba


En la imagen el ADDRESS que aparece como 192.168.0.24/32 debe ser reemplazado por el IP de la maquina que la utilizará.
Guardamos el archivo y reiniciamos el servicio.

exit

sudo systemctl restart postgresql

sudo su - postgres

Ahora entramos a nuestro usuario y base de datos con el siguiente comando:

psql -U nombreusuario -h 127.0.0.1 -d hips_so2

Una vez adentro, creamos las tablas para la base de datos:

create table alarmas (time TIMESTAMP, alarma varchar);

create table consumos (nombre varchar(25), cpu real, ram real, maxtime bigint);

create table general (mi_ip varchar(15), cola_mail int, email varchar, email_clave varchar, m_ssh int, m_fuzz int, m_mail_envios int, m_cpu_defecto float, m_ram_defecto float);

create table md5sum (ruta varchar, hash varchar);

create table prevencion (time TIMESTAMP, accion varchar);

create table sniffers (nombre varchar(25));

Luego procedemos a llenar las tablas con los datos mínimos para poder poner en funcionamiento el sistema. Claramente se pueden llenar todos los campos para un funcionamiento más completo del HIPS.

El siguiente insert es con nuestro IP.

insert into general (mi_ip) values (‘192.168.0.24’);
insert into sniffers (nombres) values ('prtg'),(solarwinds'),('tcpdump'),('omnipeek'),('manageengine'),('windump'),('wireshark'),('fiddler'),('netresec'),('ethereal'),('capsa');

insert into md5sum (ruta) values ('/etc/passwd'),('/etc/shadow');

El siguiente insert es con nuestro IP.

insert into general (mi_ip, m_mail_envios) values (‘192.168.0.24’, 5);

Una vez terminado el proceso de llenar las tablas salimos de SQL:

\q

Y salimos del bash:

exit

Ahora creamos algunos directorios y archivos importantes para el funcionamiento del HIPS:

sudo cd /etc/postfix

sudo touch check_sender_access

Luego ejecutamos postman:

sudo postman hash:sender_access

Luego configuramos el main.cf

sudo vi main.cf

Simplemente le agregamos al archivo la siguiente línea:

smtpd_recipient_restrictions = check_sender_access hash:/etc/postfix/sender_access

Guardamos los cambios y reiniciamos el servicio postfix:

service postfix restart

Luego ejecutamos lo siguiente:

sudo mkdir /var/log/hips

sudo touch /var/log/hips/alarmas.log

sudo touch /var/log/hips/prevencion.log

sudo mkdir /etc/cuarentena

sudo chmod 664 /etc/cuarentena

sudo mkdir /etc/hashes_backup

sudo chmod 664 /etc/backup_hashes_files

Para realizar los bloqueos con IPTables se debe instalar con:

sudo yum install iptables-service

Y luego levantamos todos los servicios:

sudo service iptables start

service postgresql start

service sshd start

service iptables start


En este momento hacemos un git clone de este repositorio y ya estamos listos para ejecutar el HIPS.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages