Quantcast
Channel: Homputer Security
Viewing all 97 articles
Browse latest View live

Comment créer un keylogger avec sAINT ?

$
0
0

Les keyloggers sont des logiciels espions (spywares) permettant d’enregistrer les touches utilisées par un utilisateur sur son clavier et tous les évènements déclenchés.
sAINT est un Keylogger écrit en Java destiné aux plateformes Windows.
Ci-dessous l’ensemble des fonctionnalités de sAINT:
_ Keylogger,
_ Capture d’écran,
_ Capture du webcam,
_ Persistence.
Pour que le keylogger fonctionne, il faut que Java soit également installé chez la victime.
Dans ce billet, nous verrons comment installer, puis utiliser sAINT.

Installation

Clonez le repo GitHub de l’outil:

# git clone https://github.com/tiagorlampert/sAINT.git

Puis, installez les dépendances:

_ Java:

# apt install maven default-jdk default-jre openjdk-8-jdk openjdk-8-jre -y

_ Launch4j:
Pour info, ce programme permettra la conversion des fichiers exécutables Java (Jar) en fichiers exécutables pour Windows (exe).

# apt install zlib1g-dev libncurses5-dev lib32z1 lib32ncurses5 -y

Procédez à l’installation des bibliothèques Maven:

# chmod +x configure.sh
# ./configure.sh

Enfin, lancez sAINT:

# java -jar sAINT.jar

Exemple d’utilisation

La création d’un spyware avec sAINT nécessite une adresse mail et un mot de passe.
Certaines options sont également proposées. Les voici:
_ l’activation de la webcam,
_ la capture d’écran,
_ l’activation d’une persistence,
_ la conservation ou non des données sur l’ordinateur de la victime,
_ le nombre caractères à atteindre avant l’envoi d’un mail,
_ la création d’un fichier executable (exe).

Les fichiers générés sont tous stockés dans le dossier sAINT/target.

Sur ce lien, autorisez l’accès des applications moins sécurisées à votre compte Gmail.

Dès que la cible aura exécuté le fichier malicieux, vous recevrez des mails contenant toutes les frappes de votre victime.

Je vous déconseille fortement l’usage de votre adresse mail personnelle avec les keyloggers.

Happy Hacking !

mdestroy

The post Comment créer un keylogger avec sAINT ? appeared first on Homputer Security.


Guide d’installation de Nextcloud sur Docker

$
0
0


Installer Nextcloud sur Docker peut être très avantageux. En effet, en plus de l’économie de ressources, le déploiement d’un serveur Nextcloud via Docker peut se faire en quelques minutes.
Il existe un repo GitHub qui contient tout ce qu’il faut pour déployer très rapidement votre serveur Nextcloud.
Ce repo vous permettra d’installer un serveur Nextcloud avec une base de donnée MariaDB derrière un reverse proxy nginx avec un certificat Let’s Encrypts.
Dans cet article, j’utilise une machine Ubuntu dotée d’une architecture x86_64.

Installation de Docker

Commencez par installer Docker:

# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add –
# add-apt-repository “deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable”
# apt-get update
# apt-cache policy docker-ce
# apt-get install -y docker-ce

Puis, assurez-vous que le service Docker est bien en marche:

# systemctl status docker

Installation de docker-compose

Pour installer Nextcloud, nous aurons recours à docker-compose.
Ce programme se chargera d’exécuter et de mettre en relation les différentes images dont notre application Nextcloud aura besoin.
Installons docker-compose via pip:

# pip install docker-compose

Installation de Nextcloud

Clonez le repo GitHub qui nous permettra d’installer Nextcloud:

# git clone https://github.com/ichiTechs/Dockerized-SSL-NextCloud-with-MariaDB.git

Accédez au fichier docker-compose.yml contenu dans le dossier téléchargé, puis apportez vos propres modifications.

Changez les mots de passe des utilisateurs nextcloud et root (MYSQL_PASSWORD et MYSQL_ROOT_PASSWORD) de la base de données.
Pour la création d’un certificat Let’s Encrypt, ajoutez votre nom de domaine aux variables VIRTUAL_HOST, LETSENCRYPT_HOST, et votre email à la variable LETSENCRYPT_EMAIL.

Ensuite, créez le réseau virtuel nginx-proxy:

# docker network create nginx-proxy

Initialisez à présent la base de donnée pour nextcloud:

# docker-compose up -d db

Puis l’application Nextcloud:

# docker-compose up -d

Créez un fichier myconf.conf dans le dossier proxy/conf.d avec le contenu suivant:

client_max_body_size 10G;

Ce fichier nous permettra de définir la limite d’upload pour tout utilisateur.

Accédez à l’adresse de votre machine via votre navigateur Web.
Créez un compte administrateur pour finaliser l’installation du serveur Nextcloud.

J’espère que ce tutoriel vous sera utile,

🙂

mdestroy

The post Guide d’installation de Nextcloud sur Docker appeared first on Homputer Security.

SocialFish – l’outil de phishing intégrant ngrok

$
0
0

SocialFish est un outil hacking qui permet de créer des pages de phishing des réseaux sociaux populaires ( Facebook, Twitter, LinkedIn, etc. ) depuis votre machine.
Pour rendre accessible vos pages sur l’Internet, l’outil utilise ngrok, un reverse proxy multiplateforme.
Si vous souhaitez apprendre plus sur ngrok, je vous invite à jeter un coup d’oeil à cet article.


Dans ce billet, nous verrons comment utiliser SocialFish.

Installation

Clonez le repo de SocialFish:

# git clone https://github.com/UndeadSec/SocialFish.git

Puis, installez les dépendances:

# cd SocialFish
# pip install -r requirements.txt

 

Exemple d’utilisation

Pour démarrez l’outil hacking, lancez le script SocialFish.py

# python SocialFish.py

Au démarrage de l’outil, acceptez la condition d’utilisation,

Pour notre démo, nous tenterons de créer une page de phishing Facebook.
Choisissons l’option 1 du menu d’accueil de SocialFish.

Puis la page de phishing standard pour le mode opératoire.

Un serveur web est alors démarré à l’adresse 127.0.0.1:80.
Ce serveur est aussi accessible depuis l’Internet à partir de ngrok grâce à l’adresse:
https://89a65040.ngrok.io

Si vous accédez à ce lien, vous verrez une page authentique de Facebook. Seule l’URL est différente.


Aussitôt que la victime aura inséré ses identifiants, vous les verrez apparaître dans votre terminal.

Happy Hacking !

mdestroy

The post SocialFish – l’outil de phishing intégrant ngrok appeared first on Homputer Security.

Guide d’installation d’un serveur mail sur Docker

$
0
0

Dans cet article, nous verrons comment mettre en place un serveur mail incluant un client webmail en quelques minutes grâce à Docker.
Il existe sur la toile de nombreuses images Docker avec des configurations mail complètes.
Pour l’objectif de cet article, j’utiliserai tomav/docker-mailserver qui est un projet mail Docker très populaire.
Avant d’aller plus loin, assurez-vous que des enregistrements A et MX pointent sur votre serveur.

Ci-dessous quelques applications configurables avec docker-mailserver:

_ postfix pour le serveur smtp
_ dovecot pour le sasl, l’imap (ou pop3)
_ saslauthd
_ amavis
_ spamassasin
_ clamav
_ opendkim
_ opendmarc
_ fail2ban
_ fetchmail
_ postscreen
_ postgrey

Commençons par créer un certificat à l’aide du client Let’s Encrypt Certbot:

# git clone https://github.com/certbot/certbot.git
# cd certbot
# ./certbot-auto certonly –standalone –email admin@domaine.com -d mail.domaine.com

NB: Remplacez domaine par votre propre domaine.

Créeons un dossier pour notre projet mail:

# mkdir mail

Ce dossier comprendra notamment trois fichiers:
_ Un fichier setup.sh qui nous permettra de configurer le serveur mail.
_ Un fichier docker-compose.yml qui nous servira à monter le serveur.
_ Un fichier Caddyfile pour la configuration du proxy Caddy.

Téléchargeons le fichier setup.sh dans le dossier mail:

# wget https://raw.githubusercontent.com/tomav/docker-mailserver/master/setup.sh

Ci-dessous le fichier docker-compose.yml que j’ai préparé pour la création de notre serveur.
Comme Webmail j’utilise Rainloop et Caddy comme reverse proxy. Ce proxy créera un certificat Lets Encrypt pour le Webmail en plus de celui qu’utiliseront Dovecot et Postfix.

version: '2'
services:
  rainloop:
    image: hardware/rainloop
    depends_on:
      - mail
    volumes:
      - ./data/rainloop:/rainloop/data

  mail:
    image: tvial/docker-mailserver:latest
    hostname: mail
    domainname: domaine.com
    container_name: mail
    ports:
      - "25:25"
      - "143:143"
      - "587:587"
      - "993:993"
  volumes:
    - ./data/mail/data:/var/mail
    - ./data/mail/state:/var/mail-state
    - ./config/:/tmp/docker-mailserver/
    - /etc/letsencrypt/:/etc/letsencrypt/
  environment:
    - ENABLE_SPAMASSASSIN=1
    - ENABLE_CLAMAV=1
    - ENABLE_FAIL2BAN=1
    - ENABLE_POSTGREY=1
    - ONE_DIR=1
    - DMS_DEBUG=0
    - SSL_TYPE=letsencrypt
  cap_add:
    - NET_ADMIN
    - SYS_PTRACE

  entry:
    image: abiosoft/caddy:latest
    restart: always
    privileged: true
    links:
      - rainloop
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/Caddyfile
      - ./data/entry:/root/.caddy

Voici le contenu du fichier Caddyfile:

mail.domaine.com {
proxy / rainloop:8888 {
transparent
}
}

Toujours dans le dossier mail, générons notre paire de clés DKIM pour votre serveur mail à l’aide du script setup.sh. Cette paire de clés constituera une méthode de protection contre les spams et le phishing.

# ./setup.sh config dkim

NB: Vous devez créer un enregistrement TXT avec le contenu du fichier config/opendkim/keys/domain.tld/mail.txt. Voici un lien qui explique comment procéder.

Créeons à présent un compte mail:

# ./setup.sh email add user@domaine.com P@ssword

Voici le menu d’aide du script setup.sh:

Lançons à présent docker-compose pour la création du serveur mail:

# docker-compose up -d

Après 2 à 3 minutes votre serveur mail devrait être fonctionnel.

Accédons à présent à l’adresse suivante pour la configuration du webmail Rainloop:

http://mail.domaine.com/?admin

Voici les identificants par défaut du compte administrateur:

nom de compte: admin
mot de passe: 12345

Veillez surtout à changer ce mot de passe dès votre première connexion.

Configurons à présent notre webmail. Sur le menu de gauche, choisissez le menu Domains, puis l’onglet Add Domain, et ajoutez les configurations de votre serveur comme dans l’image ci-dessous:

Cliquez sur le bouton Whitelist pour ajouter vos comptes d’utilisateurs.

Choisissez le menu Login, puis ajoutez votre nom de domaine dans la case Default Domain.

Votre webmail est à présent opérationnel et vos utilisateurs pourront s’y connecter.

Le fichier docker-compose.yml que nous avons utilisé plus haut permet d’activer automatiquement plusieurs applications comme Fail2ban. N’hésitez donc pas à accéder au conteneur et à réaliser vos propres configurations.

mdestroy

The post Guide d’installation d’un serveur mail sur Docker appeared first on Homputer Security.

Comment mettre en place un serveur Syslog ?

$
0
0

Toutes les distributions Linux viennent avec un méchanisme de logging qui enregistre toutes les activités des systèmes. Les logs enregistrés peuvent être également très utiles aux administrateurs systèmes pour des fins de dépannage.

Il existe généralement deux types de logging:
_ Le logging local: les messages sont écrits sur le disque dur local (ou base de donnée locale) d’un système,
_ Le logging distant: les messages sont transférés à travers le réseau vers un serveur différent.

Rsyslog est le programme de logging par défaut sur plusieurs distributions Linux y compris celles basées sur Debian et RedHat.
S’il n’est pas déjà sur votre système, veuillez l’installer à l’aide des commandes ci-dessous suivant votre distribution.

# apt-get install rsyslog
# yum install rsyslog

Dans cet article, nous verrons comment mettre en place un serveur et un client Syslog.

Cette configuration permettra à tout administrateur de voir les logs de tous les hôtes dans une infrastructure à partir d’un seul serveur.

Configuration du serveur Syslog

Commençons par configurer le serveur Syslog.

Ouvrez le fichier /etc/rsyslog.conf, puis ajoutez les paramètres suivants tout en bas du fichier:

$ModLoad imudp
$UDPServerRun 514

$ModLoad imtcp
$InputTCPServerRun 514

$AllowedSender UDP, 192.168.1.0/24, 163.172.X.X
$AllowedSender UDP, 192.168.1.0/24, 163.172.X.X

$template FILENAME,"/var/log/%fromhost-ip%/syslog.log"

*.* ?FILENAME

 

Les lignes suivantes ordonnent au démon Rsyslog d’être à l’écoute sur le port 514 des deux protocoles UDP et TCP.

$ModLoad imudp
$UDPServerRun 514

$ModLoad imtcp
$InputTCPServerRun 514

Choissez le protocole que vous préferez.
Sachez toutefois que le protocole UDP est le plus rapide, mais l’inconvénient c’est qu’en cas de surcharge réseau, vous risquerez des pertes de données. Ce qui ne serait pas le cas par exemple avec le protocole TCP.
Ces paramètres ci-dessous vous permettent de restreindre la connexion vers le serveur Syslog à une adresse IP ou un groupe d’adresses IP.

$AllowedSender UDP, 192.168.1.0/24, 163.172.X.X
$AllowedSender UDP, 192.168.1.0/24, 163.172.X.X

La ligne suivante permet de définir les dossiers où seront stockés les différents logs des clients. La variable fromhost-ip permettra de créer des dossiers à partir des différentes adresses ip des clients.

$template FILENAME,"/var/log/%fromhost-ip%/syslog.log"

En effet, les modèles (templates) sont une fonctionnalité importante de Rsyslog. Ils permettent aux utilisateurs de sauvegarder les messages reçus dans leur format désiré.
Ils peuvent être également utilisés pour créer des noms dynamiques de dossiers/fichiers pour la sauvegarde des messages.

Enfin, grâce à cette dernière ligne, tous les messages provenant des clients Syslog seront enregistrés systématiquement. En d’autres termes, aucun filtre ne sera appliqué. Le filtre des logs va au-délà de la portée de ce tutoriel.

*.* ?FILENAME

Après avoir enregistré les nouveaux paramètres, redémarrez le service Rsyslog.

# service rsyslog restart

Assurons nous ensuite que les ports du serveur Syslog sont ouverts:

Configuration du client Syslog

Chez le client, nous allons à présent ajouter l’adresse IP de notre serveur Syslog.

Pour cela, ouvrez le fichier /etc/rsyslog.conf, puis ajoutez:

*.* @adresse-ip-serveur-syslog:514

@ pour le protocole UDP
@@ pour le protocole TCP.

Dans notre test, nous choisissons de transporter nos flux à travers le protocole UDP.

Puis redémarrez le service rsyslog chez le client:

# service rsyslog restart

Sur le serveur Syslog, nous remarquons des requêtes vers le port UDP 514. Nous sommes sûrs à présent que la connexion est bien fonctionnelle entre nos deux entités.

Suivant notre configuration, un dossier est alors créé pour chaque hôte distant. Chaque dossier comprend un fichier syslog comprenant tous les logs générés par chaque système.

Ci dessous, le fichier syslog de l’hôte Ubuntu:

Le fichier syslog suivant nous permet de reconnaître une attaque sur le protocole SSH, (probablement une attaque par force brute) grâce à une règle de pare-feu prédéfinie sur le système Xtrem.

mdestroy

The post Comment mettre en place un serveur Syslog ? appeared first on Homputer Security.

Comment trouver des identifiants par défaut en ligne avec Passhunt ?

$
0
0

Passhunt est un outil de recherche d’identifiants par défaut pour des appareils réseaux, applications Web, objets connectés, et bien d’autres.

La liste des mots de passe est obenue via le site cirt.net.
A noter que la recherche des passwords se fait en ligne, vous aurez donc besoin d’une connexion Internet active pour toutes vos recherches.

Installation

Pour l’installer, clonez le repo GitHub de l’outil:

# git clone https://github.com/Viralmaniar/Passhunt.git

Puis installez les dépendances:

# cd Passhunt
# pip3 install passhunt.py

Exemple d’utilisation

Pour utiliser l’outil, lancez le script passhunt.py

L’utilisation de l’outil est simple, il vous suffit de soumettre le nom d’un vendeur et une liste des identifiants par défaut des modèles disponibles s’affichera.

mdestroy

The post Comment trouver des identifiants par défaut en ligne avec Passhunt ? appeared first on Homputer Security.

Détection d’une intrusion système avec des commandes de base de Linux

$
0
0

Dans cet billet, nous verrons quelques commandes Linux qui peuvent être utiles à tout administrateur système pour la détection d’activités “louches” sur un système.
Bien que j’utilise un système Ubuntu dans cet article, toutes les commandes utilisées sont disponibles sur toutes les distributions Linux.

Who et w

La commande who détermine les utilisateurs connectés à un système.
Dans l’image suivante, cette commande nous informe que l’utilisateur mdestroy est connecté localement (tty) et l’utilisateur root est connecté à partir de l’adresse 192.168.43.129 via un pseudo-terminal esclave (pts) ce qui représente dans notre cas une connexion ssh.


Les dates représentent le début de chaque connexion.

La commande w retourne les mêmes infos que who mais avec quelques précisions en plus.


Ces deux commandes vous aideront à reconnaître très rapidement les logins actives étrangères à votre système.

Last

La liste des récents logins peut être affichée avec last.
Cette commande peut vous donner très rapidement des indications sur des accès non-autorisés.

Lastb affiche quant à elle les tentatives de connexions erronnées. Cette commande ne peut être exécutée qu’avec le compte root.
Dans l’image suivante, nous pouvons déduire qu’une personne a tenté de se connecter au système à partir de l’adresse 192.168.43.96 avec les comptes root, mdestroy, marty, ahou et akissi.

NB: A noter que les connexions via sftp, ou le client ssh paramiko ne laissent aucune trace avec les commandes ci-dessus listées.
En effet, who, w et last ne liste que des logins de session shell, ce que ne sont pas sftp et paramiko.

History

La commande history fournit une liste des commandes exécutées par l’actuel utilisateur.



NB:
Pour voir la date précise à laquelle les commandes sont excécutées, ajoutez la ligne suivante au fichier ~/.bashrc de l’utilisteur ciblé:

$ echo ‘export HISTTIMEFORMAT=”%d/%m/%y %T ” ‘ >> ~/.bashrc
$ source ~/.bashrc
$ history

Acct

acct est un ensemble d’outils servant à monitorer les activités de tous les utilisateurs sur un système.
L’application n’est pas installée par défaut sur les distributions basées sur Debian.
Vous pouvez l’installez sur votre système comme suit:

# apt-get install acct -y

NB: Sur les systèmes RedHat/Centos, ce package est connu sous le nom psacct.

Deux outils de ce package s’avèrent très précieux.
Le premier est ac. Cet outil détermine le temps passé par chaque utilisateur sur un système.
L’option d de l’outil détermine la durée de connexion selon les jours tandis que l’option p détermine les durées de connexion des personnes connectées au système. ac executée avec les options d et p nous permet donc de déterminer la durée de connexion (en heures) de chaque utilisateur par jour.

L’autre outil interessant du package acct est lastcomm. Cet outil affiche les dernières commandes exécutées sur le système.

lastcomm utilisée avec une commande montre les dates auquelles la commande été exécutée et les utilisateurs qui l’ont exécutée.

Lorsqu’exécutée avec un nom d’un utilisateur, lastcomm affiche les commandes exécutées par cet utilisateur.

Dans l’exemple suivant, nous remarquons que Perl a été exécuté pendant près de 20 minutes par l’utilisateur root.

Nous découvrons également que ce programme a été exécuté plus d’une fois !

La découverte de cette activité anormale peut être le début d’une investigation.

Ci-dessous un récapitulatif des fichiers utilisés par les utilités présentées plus haut:

Utilités Fichiers utilisés
who /var/log/utmp
w /var/log/utmp
last /var/log/wtmp
lastcomm /var/log/btmp
history ~/bash_history

 

Top et ps

La commande top fournit une liste des processus exécutés sur un système en temps réel.
Les processus sont listés selon leur utilisation du CPU.
Si vous constatez qu’un système est lent, c’est le 1er endroit à voir.

La commande ps est également utilisée pour lister les processus en cours d’exécution sur un système. Exécutée avec les options a, u, x, la commande retourne tous les processus exécutés par tous les utilisateurs (avec leur PID), y compris ceux non rattachés au terminal, et le propriétaire de chacun des processus.

L’option forest affiche la structure des processus. Cette commande nous donne une idée sur les liens qu’il peut avoir entre certains processus.

Netstat

Netstat est un outil permettant de voir toutes les ports réseaux utilisés par un système. Cette commande vous aidera à détecter les connexions louches de votre système.

Ci-dessous quelques options de Netstat utiles:

-p affiche le PID des programmes,
-t affiche uniquement les connexions tcp,
-u affiche uniquement les connexions udp,
-l affiche les sockets à l’écoute,
-a affiche les sockets ouverts,
-n affiche les valeurs numériques des ports et des adresses (désactive la résolution des noms).

Lsof

La commande Lsof (lisOpen Files) liste les différentes ressources utilisées par les processus.
Ces ressources peuvent être des dossiers, des sockets, des pipes, des appareils, etc.
L’option i permet l’affichage de toutes les connexions en cours et celles qui sont à l’écoute.

Pour découvrir les ressources utilisées par un processus particulier, utilisez l’option p.

L’option u permet l’affichage des ressources utilisées par un utilisateur particulier.

 

Des informations supplémentaires sur les processus sont disponibles à travers leur dossier /proc:

cat -v cmdline détermine la commande qui a été utilisée pour amorcer le processus.

Crontab

Si un système est compromis, il est probable que l’attaquant derrière cette action crée une persistence sur le système. Cette opération peut se faire entre autre via l’utilité de planification de tâche Cron.

Pour consulter les tâches planifiées par un utilisateur particulier, il vous suffit de lancer la commande ci-dessous:

# crontab -u user -l

Ou la commande suivante pour l’utilisateur en cours:

# crontab -l

Utiliser des outils natifs de Linux pour analyser le comportement d’un système permet un gain de temps énorme. Sachez cependant que ces commandes connaissent certaines limites car il est parfois possible de manipuler leur affichage.

Dans de prochains articles, nous verrons comment utiliser certaines de ces commandes pour analyser “en live” un système compromis.

mdestroy

The post Détection d’une intrusion système avec des commandes de base de Linux appeared first on Homputer Security.

Détection d’une intrusion système avec des commandes de base de Linux (Partie 2)

$
0
0

Dans cet billet, nous effectuerons une simple analyse pour détecter des activités louches “à chaud” sur un système à l’aide d’outils de base de Linux.
Cet article est la suite de Détection d’une intrusion système avec des commandes de base de Linux (Partie 1) .

Nous analyserons une machine nommée Magento2, suspectée d’avoir un malware.

Lançons la commande top pour voir les processus en cours d’exécution sur cette machine.

Déjà, nous découvrons un processus qui utilise 300 % des ressources CPU de la machine !

De cette image, nous apprenons déjà deux choses:
Il existe un compte d’utilisateur du nom de pula sur le système et un processus louche s’exécutant sur le système avec le pid 12958.

Dans le dossier /proc du processus, nous découvrons le script à la base du processus louche.
Ce script connecte en réalité la machine à un serveur distant via le port tcp 3333.
Par ailleurs, l’adresse ip du serveur en question y est également révélée.

lsof nous confirme qu’une connexion s’est réellement établie entre la machine et ce serveur.
De plus, cette commande nous informe sur l’emplacement du répertoire comprenant le script malicieux qui a été exécuté (/home/pula/.ttp/a).

Avant de consulter le répertoire de l’utilisateur pula, voyons s’il existe des tâches planifiées par cet utilisateur.

Crontab nous informe que trois tâches ont été planifiées par cet utilisateur pula.
Le script utilisé dans la première tâche se trouve également dans le dossier /home/pula/.ttp/a.
Il y’a de fortes chances que le processus au PID 12958 soit lié à ce script.

Jetons à présent un coup d’oeil au contenu du script upd situé dans le dossier /home/pula/.ttp/a.

Une série de scripts nous mène vers la commande responsable de la connexion non authorisée. Cette commande utilise en réalité un fichier binaire exécutable du nom de crond.

Un simple scan nmap via proxychains sur l’adresse ip du serveur découvert dans la commande nous informe sur tous les ports ouverts de ce serveur.

Une connexion sur le serveur web de l’adresse nous apprend que nous  avons en réalité affaire à un pool de minage.

 

Sur l’une des pages du serveur, nous retrouvons la commande exécutée.

Nous pouvons en déduire que le fichier binaire utilisé par la commande est sans doute Minerd , un fork du légitime mineur de cryptomonnaie CPUMiner.
Ce programme a sans doute été renommé pour tromper la vigilance des utilisateurs.

Une analyse des fichiers auth.log générés par le système que nous apprend que des connexions ssh ont été établies par ce même utilisateur pula durant la période du 5 Février au 2 Mars !
Malheureusement, la rotation des logs auth.log définie sur cette machine ne conserve que 4 fichiers auth.log et les plus anciens sont effacés.
Alors, il est fort probable que la toute première intrusion ait eue lieu à une date antérieure à la date du 5 Février.

La seconde ligne de crontab conduit quant à elle vers un script Perl obfusqué qui cache sûrement un autre malware.

Nous n’apprendrons malheureusement rien de la dernière ligne de Crontab car le dossier /tmp en question est vide. Cela est sans doute dû à un redémarrage effectué par l’utilisateur habituel de la machine.

Un coup d’oeil dans le répertoire $Home de l’utilisateur pula, et nous découvrons d’autres fichiers malicieux. Parmi lesquels un script conçu pour réaliser des attaques par force brute.

Sans doute le serveur était également sur le point d’être utilisé pour réaliser des attaques par force brute sur d’autres serveurs ssh …

Notre analyse nous a permis de découvrir un malware mineur de cryptomonnaie sur cette machine et le serveur auquel il se connectait.
Elle a aussi surtout permis de comprendre l’importance du monitoring, qui peut permettre de détecter très rapidement des activités malicieuses sur des machines.

mdestroy

The post Détection d’une intrusion système avec des commandes de base de Linux (Partie 2) appeared first on Homputer Security.


Guide d’installation d’un serveur Nagios sur Ubuntu 16.04

$
0
0

Nagios est un système de monitoring Open Source très populaire.
Cette application permet une surveillance à distance de machines, ou d’appareils réseaux à travers des agents qui sont déployés sur ces appareils.
C’est un outil essentiel dans les environnements de production. A travers un tel système, vous serez en mesure de détecter très rapidement des problèmes sur vos machines tels que :
_ l’élévation soudaine de l’utilisation des ressources des processeurs (voir article),
_ l’espace insuffisant sur les disques,
_ la non-disponibilité de certaines machines ou de certains services,
_ et bien d’autres.

Cet article est un simple mémo sur l’installation et la configuration de la toute dernière version de Nagios sur les systèmes Ubuntu et Debian.

Pour ce billet, j’utiliserai deux machines:
_ Un système Ubuntu 16.04 qui représentera notre serveur Nagios (nserver),
_ Un autre système Ubuntu 16.04 qui représentera une machine client (nclient) qui sera supervisée par notre serveur Nagios.

Ci-dessous les grandes lignes des installations à faire sur chacune des machines:

Sur nserver:
_ Nagios Core 4.3.4,
_ L’interface Web de Nagios Core,
_ Les plugins Nagios,
_ Le plugin Nrpe.

Sur nclient:
_ Les plugins Nagios,
_ Le plugin Nrpe.

I-nserver

Mise à jour du système

# apt-get update ; apt-get upgrade -y

Installation des dépendances

# apt install apache2 libapache2-mod-php7.0 php7.0 -y
# apt install wget unzip zip autoconf gcc libc6 make apache2-utils libgd-dev -y
# apt-get install build-essential libgd2-xpm-dev openssl libssl-dev -y

Création du groupe et de l’utilisateur nagios puis ajout de l’utilisateur au groupe d’Apache

# useradd -m nagios -G www-data

Téléchargement de Nagios Core

# wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.3.4.tar.gz
# tar xfz nagios-4.3.4.tar.gz
# cd nagios-4.3.4/

Ci-dessous le contenu du dossier:

Installation de Nagios Core

# ./configure
# make all
# make install
# make install-init
# make install-commandmode
# make install-config
# systemctl enable nagios.service

Installation de l’interface Web de Nagios Core

# mkdir -p /etc/httpd/conf.d/nagios.conf
# make install-webconf
# cp -R contrib/eventhandlers/ /usr/local/nagios/libexec/
# chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
# /usr/bin/install -c -m 644 sample-config/httpd.conf /etc/apache2/sites-enabled/nagios.conf
# a2enmod cgi
# service apache2 restart
# systemctl start nagios.service


Création d’un accès d’administrateur à l’interface web de Nagios Core

# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

A ce stade, on devrait pouvoir se connecter à l’interface Nagios via l’adresse:
http://localhost/nagios.

Installation des plugins Nagios
Les plugins Nagios jouent un rôle très important dans la configuration d’un serveur Nagios. Ils permettent de réaliser certains tests tels que la véfirication de l’espace disponible sur les disques, la vérification de certains services, etc.

# wget https://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz
# tar xvfz nagios-plugins-2.2.1.tar.gz
# cd nagios-plugins-2.2.1
# ./configure –with-nagios-user=nagios –with-nagios-group=nagios
# make
# make install
# systemctl restart nagios.service

Après l’installation des plugins Nagios, l’état du serveur nagios devrait passer de down à up.

Les services de nserver changeront également de status.

Aucun swap n’a été configuré sur cette machine, d’où le status critical.

Installation du plugin Nrpe

Le plugin Nrpe permet d’exécuter à distance les plugins Nagios sur les systèmes Linux/Unix. Il nous faudra alors installer le plugin à la fois sur le serveur et sur les clients Linux/Unix.

# wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-3.2.1/nrpe-3.2.1.tar.gz
# tar zvxf nrpe-3.2.1.tar.gz
# cd nrpe-3.2.1
# ./configure
# make all
# make install
# make install-config
# make install-init
# systemctl start nrpe.service
# systemctl enable nrpe.service

II-nclient

Configurons à présent notre machine nclient qui sera supervisée par notre serveur Nagios.
Pour permettre la surveillance à distance du serveur Nagios sur nclient, il nous faudra installer les plugins Nagios, puis le plugin Nrpe.

Mise à jour du système

# apt-get update ; apt-get upgrade -y

Installation des dépendances

# apt install wget unzip zip autoconf gcc libc6 make apache2-utils libgd-dev -y
# apt-get install build-essential libgd2-xpm-dev openssl libssl-dev -y

Création de l’utilisateur et du groupe nagios

# useradd -m nagios

Installation des plugins nagios

# wget https://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz
# tar xvfz nagios-plugins-2.2.1.tar.gz
# cd nagios-plugins-2.2.1
# ./configure –with-nagios-user=nagios –with-nagios-group=nagios
# make
# make install

Installation du plugin Nrpe

# wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-3.2.1/nrpe-3.2.1.tar.gz
# tar zvxf nrpe-3.2.1.tar.gz
# cd nrpe-3.2.1
# ./configure
# make all
# make install
# make install-config
# make install-init
# systemctl start nrpe.service
# systemctl enable nrpe.service

Dans le fichier /usr/local/nagios/etc/nrpe.cfg, ajoutons l’adresse de nserver au paramètre
allowed_hosts,

Redémarrons nrpe:

# systemctl restart nrpe.service

Depuis nserver, nous vérifions la version de nrpe installée chez nclient à l’aide de la commande
suivante. Cette opération nous assure qu’il n’y a aucun problème de connexion entre les deux machines.

III-Ajout des infos de nclient au serveur nagios nserver

Tout d’abord créeons un fichier de configuration pour nclient dans le dossier /usr/local/nagios/etc/objects.
Nous nommerons ce fichier à partir de l’adresse ip de nclient.

NB: Les plugins Nagios viennent avec des templates (/usr/local/nagios/etc/objects/templates.cfg) qui vous aideront à configurer vos machines distantes et leurs services. Ces templates sont en fait des services comprenant des réglages génériques.

Le 3ème bloc de notre fichier de configuration configure le service ssh de notre hôte distant.
La 1ère ligne de ce bloc inclut le template local-service pour notre hôte nclient. La 3ème permet une description du service. Le paramètre check_command fait appel à l’un des plugins Nagios check_ssh. Ces plugins sont situés dans le dossier /usr/local/nagios/etc/libexec.
La valeur nulle du paramètre notifications_enabled désactive les notifications du service.

Ajoutons le chemin vers le fichier de configuration de nclient dans le fichier /usr/local/nagios/etc/nagios.cfg.

Redémarrons nagios:

# systemctl restart nagios

nclient devrait apparaître à présent dans le menu hosts de nagios…

…Ainsi que ses services dans le menu service:

Ainsi prend fin ce tutoriel, j’espère qu’il vous sera utile.

🙂

mdestroy

The post Guide d’installation d’un serveur Nagios sur Ubuntu 16.04 appeared first on Homputer Security.

Mon gestionnaire de mot de passe, Bitwarden

$
0
0

Aujourd’hui j’ai choisi de vous présenter un outil que j’utilise tous les jours et qui a remplacé tous ses concurrents, j’ai nommé Bitwarden.

Avec les problématiques de sécurité qui se posent aujourd’hui, il devient nécessaire d’utiliser un gestionnaire de mot de passe. Cela permet de générer des mots de passes fort et de façon aléatoire, ce qui assure la sécurité de vos identifiants. Il stocke l’ensemble de vos mots de passe de façon sécurisée, et vous permet de n’avoir plus qu’un seul mot de passe à vous souvenir, celui de votre compte Bitwarden.

Bitwarden est un outil gratuit, Open Source et multi-plateforme, c’est-à-dire Linux, Windows et MacOS. Il propose aussi des extensions sur les navigateurs les plus utilisés et assure l’auto-complétion des champs de login et de mot de passe. Des applications mobiles sont également disponibles sous iOS et Android.

Pour fonctionner Bitwarden n’oblige pas l’installation de son client sur le système, le plug-in du navigateur suffit pour assurer la gestion de son compte et de l’ensemble des identifiants. Le client Windows par exemple propose une meilleure vue et prise en main de l’outil, mais l’ensemble des fonctionnalités sont disponibles dans le plug-in du navigateur.

Ce gestionnaire de mot de passe est un des seuls à proposer une utilisation gratuite avec la synchronisation entre les différents appareils sans limite de stockage. Vous pouvez ajouter vos identifiants, notes, cartes bancaires et les retrouver sur tous vos appareils, et même activer la double authentification.

Il est cependant possible de s’abonner à Bitwarden principalement pour aider au développement de l’application.. L’abonnement est de 1$ par mois et ajoute plusieurs fonctionnalités comme 1Go de stockage de fichiers chiffrés, le partage du compte avec 5 autres utilisateurs et la création illimitée de collection.

En plus de l’abonnement et pour 10$ par an l’éditeur propose un service de support, 1Go de stockage de fichier chiffré et de l’authentification à double facteur avec des outils comme YubiKey ou Fido U2F.

Ils proposent aussi en option et dans sa version entreprise, la possibilité d’héberger soit même ses identifiants, c’est-à-dire que Bitwarden permet d’utiliser un conteneur docker pour stocker l’ensemble des identifiants d’une société par exemple. Cette fonctionnalité est novatrice dans le monde des gestionnaires de mot de passe, et fera surement suite à un tutoriel sur ce blog. Cependant, pour l’instant si vous voulez plus d’informations sur ce sujet je vous invite à vous rendre ici.

 

Au niveau du stockage de vos identifiants Bitwarden stock vos données dans un cloud Azure, les échanges ainsi que vos données sont bien entendu chiffrés. Si vous préférez stocker vos données en local sur votre poste cela est aussi possible.

Si vous voulez sauter le pas et passer sur Bitwarden, il est possible d’importer directement la base depuis les différents gestionnaires de mot de passe comme Dashlane, KeePass ou 1Password. Pour finir, ce gestionnaire inclut un générateur de mot de passe très complet, avec le choix du nombre de caractère et des caractères à utiliser.

J’espère que cet article vous aura plu, si vous avez des questions ou des remarques sur ce que j’ai pu écrire n’hésitez pas à réagir avec moi par mail ou en commentaire !

 

Merci pour votre lecture et à bientôt !

MRigonnaux

 

The post Mon gestionnaire de mot de passe, Bitwarden appeared first on Homputer Security.

Plusieurs routeurs à la merci des cybercriminels à travers le protocole UPnP

$
0
0

Selon les experts d’Akamai une faille sur le protocole UPnP exposerait plus de 4.8 millions routeurs.
65000 d’entre eux seraient déjà membres d’un réseau de proxys multifonctionnel.

L’ Universal Plug and Play (UPnP) est un protocole réseau dont le but principal est de permettre l’interconnexion entre périphériques et de simplifier la mise en œuvre de réseaux domestiques et d’entreprises.
Avec l’UPnP, un périphérique peut joindre le réseau dynamiquement, obtenir une adresse IP, transmettre ses capacités, en savoir plus sur la présence d’autres périphériques du réseau sans recourir à aucune configuration supplémentaire.
C’est une fonctionnalité très importante qui est incluse dans la plupart des routeurs modernes.

Malheureusement, il peut arriver que certains routeurs mal configurés exposent leur interface de contrôle UPnP sur leur interface WAN à l’insu des utilisateurs. Les conséquences d’une telle faille de sécurité sont nombreuses: prise de contrôle à distance d’un réseau local, redirection du trafic interne, changement des paramètres par défaut du routeur, etc.

Une récente recherche conduite par Akamai démontre comment des cybercriminels abusent de cette faille de sécurité pour transformer des routeurs vulnérables en proxys dans le but de router leur trafic malicieux.

Pour détourner un routeur exposant son service UPnP, les pirates procèderaient par l’injection de routes malicieuses à l’intérieur des tables NAT des routeurs vulnérables.

Selon les experts d’Akamai, les pirates se seraient même se servir de cette faille pour créer un réseau de proxys afin de masquer l’origine de leurs opérations malicieuses (Campagnes de spam, sites de phishing, attaques DDOS, etc).

 

Cette expérience a permis à Akamai de découvrir plus de 4.8 millions routeurs exposant leurs services UPnP sur leur interface WAN dont 65000 déjà membres du réseau de proxy multifonctionnel.

 

Ce réseau de proxys serait lié à la menace Inception Framework qui a été exposée pour la première fois en 2014 par Symantec. Ce gang de criminels utilisait une faille sur le protocole UPnP pour créer un nuage de proxys dans le but masquer la provenance de leurs opérations.

Quelques semaines plutôt, Symantec indiquait que ce gang continuait d’opérer ces dernières années avec de nouvelles techniques.

Suite à leur recherche, les experts d’Akamai ont ainsi compilé une liste de 400 différents modèles de routeurs vulnérables.
Si vous retrouvez le modèle de votre appareil dans cette liste, il est recommandé de le remplacer immédiatement par un autre modèle ne figurant pas sur la liste.
Les experts ont mis à votre disposition un script Bash qui vous permettra de tester votre routeur.

 

Pour plus d’informations sur la vulnérabilité, la liste des routeurs vulnérables et le script Bash prière visiter le lien suivant: UPnProxy: Blackhat Proxies via NAT Injections.

mdestroy

The post Plusieurs routeurs à la merci des cybercriminels à travers le protocole UPnP appeared first on Homputer Security.

Portainer, administrez facilement votre Docker

$
0
0

Aujourd’hui je vais vous présenter un outil qui m’a beaucoup aidé pour l’administration de mon serveur Docker, Portainer.

Tout d’abord parlons de Docker, Docker est un logiciel libre qui automatise le déploiement d’application dans des conteneurs. Plus simplement, il permet contrairement à une machine virtuelle, de créer un conteneur “sans” système d’exploitation, en incluant seulement l’application à exécuter. Docker a donc l’avantage d’être très flexible et léger, c’est ce qui rend cette technologie très jeune intéressante. Les conteneurs créés avec Docker sont donc basée sur le système d’exploitation de l’hôte et sur les librairies du conteneur mis en place.

Si vous ne l’avez pas déjà fait je vous invite à installer Docker, pour mon cas je suis sur une machine Centos 7.

Installation des dépendances :

sudo yum install-y yum-utils device-mapper-persistent-data lvm2

Installation du repo :

sudo yum-config-manager –add-repo https://download.docker.com/linux/centos/docker-ce.repo

Installation de docker :

sudo yum install docker-ce

Une fois docker installé nous pouvons installer Portainer ! Il est nativement installé dans un conteneur et vous permettra d’ajouter une interface graphique pour faciliter l’administration du serveur.

Portainer sera disponible à l’adresse suivante http://[IP de votre serveur]:9000, voici comment l’installer.

Création du volume :

# docker volume create portainer_data

Ajout du conteneur :

# docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

Une fois cette commande lancée, portainer est automatiquement installé et lancé. Il faut donc se rendre avec son navigateur sur l’interface de portainer.

Sur cette interface, vous devrez configurer le mot de passe de l’utilisateur admin et indiquer à portainer votre type d’installation, locale ou distante. Dans mon cas, locale.

Une fois Portainer installé et configuré, vous arrivez sur l’interface d’administration, à partir de ce moment vous pouvez gérer l’intégralité de vos conteneurs via l’interface graphique sans vous soucier des lignes de commandes. Bien que je vous conseille de commencer l’apprentissage de docker sans l’interface graphique pour comprendre pleinement son fonctionnement.

Portainer propose de base la création de stack (ensemble de conteneurs) ou de conteneur seul dans l’onglet “App Templates”, il propose également la gestion du réseau des conteneurs et des différents volumes.

Voici un exemple de stack docker que j’ai pu créer avec cet outil. Cette stack comporte trois conteneurs, phpmyadmin, mysql et php-apache.

Nous pouvons voir que les 3 conteneurs sont lancés et attribués à des ports différents, la stack est donc fonctionnelle.

Les services à lancer sont définis comme ceci dans le docker-compose, nous pouvons voir les trois services accompagnés de leurs configurations, comme les utilisateurs, les ports, les liens, etc.

J’espère que cet article vous aura plu, si vous avez des questions ou des remarques sur ce que j’ai pu écrire n’hésitez pas à réagir avec moi par mail ou en commentaire !

Merci pour votre lecture et à bientôt !

MRigonnaux

 

 

The post Portainer, administrez facilement votre Docker appeared first on Homputer Security.

Comment tromper les pirates avec Portspoof ?

$
0
0

Portspoof est un programme conçu pour améliorer la sécurité des systèmes d’exploitation à travers l’émulation de signatures de services légitimes sur des ports qui sont supposés être fermés.
Le but étant de fournir de fausses informations à toute personne qui tenterait de s’introduire au système, et lui faire perdre un temps énorme en le menant vers de fausses pistes.
Concrètement, c’est un programme qui vous permettra de faire croire à vos attaquants que certains ports sont ouverts alors qu’ils ne le sont pas réalité. Toute chose qui peut prêter à confusion.
Ce programme écrit en C++ peut être considéré comme un supplément aux logiciels de sécurité déjà en place sur une infrastructure (IDS/IPS, pare-feu, etc.).

Lorsqu’il est lancé, Portspoof reste à l’écoute sur un seul port (le port 4444 par défaut). Grâce aux règles d’iptables, il vous sera possible de rediriger toutes les requêtes sur les ports fermés du système vers le port utilisé par Portspoof. Celui-ci se chargera à son tour de faire croire que ces ports sont ouverts.

Portspoof dispose de plus de 8000 signatures qui vous permettront de confondre les scanneurs de port.

Voyons à présent en pratique comment cet outil fonctionne.

Installation

Pour installer Portspoof, clonez tout d’abord le repo de l’outil:

# git clone https://github.com/drk1wi/portspoof.git

Puis, compilez le programme:

# ./configure
# make
# sudo make install

Ci-dessous le menu d’aide de Portspoof:

Exemple d’utilisation

Passons à la configuration de notre machine stormy:

A travers la table Nat d’iptables, nous redirigerons toutes les requêtes sur l’ensemble des ports de 1 à 1023 vers le port 1024 qui sera utilisé par Portspoof. Seuls les ports 80 et 443 (utilisés par Apache) et le port 222 (utilisé par OpenSSH) _ des ports utilisés par des services légitimes du serveur _ seront disponibles.

# iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp -m multiport --dports 1:79,81:221,223:442,444:1023 -j REDIRECT --to-ports 1024

Lançons Portspoof à présent sur le port 1024.

# portspoof -p 1024

A partir de notre machine Kali, réalisons un simple scan avec nmap.


Le résultat du scan nous informe que tous les ports de 1 à 1024 sont ouverts.

Pour permettre Portspoof de répondre aux requêtes avec des fausses signatures de services, il faudra lui passer en paramètres un fichier de configuration et un autre fichier contenant les fausses signatures. Ces fichiers sont contenus dans le dossier portspoof/tools.

# portspoof -c portspoof/tools/portspoof.conf -s portspoof/tools/portspoof_signatures

Un scan de nmap pour déterminer les versions des services sur la machine ciblée nous retourne le résultat suivant.

Il est clair que tels résultats pourront confondre toute personne qui tenterait d’accéder à votre serveur.

Happy Hacking !

mdestroy

The post Comment tromper les pirates avec Portspoof ? appeared first on Homputer Security.

Devenez root sur un serveur Docker

$
0
0

Dans cet article je vais vous présenter une astuce que je viens de découvrir, obtenir des privilèges élevés sur un serveur grâce à un conteneur docker.

Le conteneur docker est le suivant : chrisfosterelli/rootplease

Une fois ce conteneur lancé, vous aurez un accès à la racine du serveur avec l’utilisateur root à travers le conteneur, je vais vous montrer ici comment augmenter les droits de votre utilisateur.

Au préalable il est nécessaire que l’utilisateur utilisé soit dans le groupe d’utilisateurs docker, sans ça il n’est pas possible de lancer le conteneur.

Dans mon cas l’utilisateur utilisé est homputersec, cet utilisateur a les droits de base sur la machine et appartient au groupe docker. Tout d’abord connectez-vous avec l’utilisateur présent dans le groupe docker, une fois connecté lancez le conteneur avec la commande suivante :

docker run -v /:/hostOS -i -t chrisfosterelli/rootplease

Vous arriverez à ce moment là dans le conteneur, à la racine du serveur avec l’utilisateur root :

Vous avez maintenant accès à l’ensemble des dossiers/fichiers de votre serveur avec l’utilisateur root. Pour ajouter des droits sur votre utilisateur il faut modifier le fichier /etc/sudoers et ajouter l’utilisateur en tant que root.

vi /etc/sudoers

Et ajoutez la ligne suivante :

<nomdevotreutilisateur> ALL=(ALL) ALL

Pour mon cas voici le fichier modifié :

Vous pouvez maintenant sortir du conteneur et utiliser votre utilisateur qui a maintenant des privilèges élevés sur le serveur !

Dans ce cas précis le serveur utilisé est un Centos7 avec Docker-CE.

J’espère que cet article vous aura plu, si vous avez des questions ou des remarques sur ce que j’ai pu écrire n’hésitez pas à réagir avec moi par mail ou en commentaire !

Merci pour votre lecture et à bientôt !

MRigonnaux

The post Devenez root sur un serveur Docker appeared first on Homputer Security.

Mise en place d’un VPN L2tp/IPSec avec SoftEther

$
0
0

SoftEther est l’un des plus puissants VPNs au monde. C’est un VPN multiprotocole qui fonctionne sous les systèmes Windows, Linux, Mac, FreeSBD, Solaris.
Cette application VPN est dotée de riches fonctionnalités. Grâce au VPN L2tp/IPSec de SoftEther, vous pourrez créer aisément une polique BYOD (Bring Your Own Device) qui vous permettra de connecter vos appareils (smartphone, laptops, etc.) depuis un réseau externe (domicile) à votre lieu de travail.

Dans cet article, nous verrons comment mettre en place un serveur VPN L2tp/IPSec de SoftEther sur une machine Ubuntu 16.04.

Ci-dessous quelques caractéristiques de SoftEther:

_ Gratuit et Open Source,
_ VPN Révolutionnaire à travers les procotoles ICMP et DNS,
_ Chiffrement AES 256-bit RSA 4096-bit,
_ Supporte des fonctionnalités de sécurité telles que le logging, le pare-feu,
_ Compatible avec Windows, Linux, Mac, Android, iPhone, iPad, Windows Mobile,
_ Supporte les types de VPN client-to-site et site-to-site,
_ Supporte les fonctions d’authentification RADIUS/NT DOMAIN, utilisateurs et mot de passe, authentification avec certificats RSA,
_ Configurable à la fois à partir d’une interface d’utilisateur et d’un outil en ligne de commande,
_ Les protocoles de VPN disponibles avec SoftEther: OpenVPN, L2tp/IPSec, SSL VPN, MS-SSTP, L2TPv3, EtherIP,
_ Fonction de transfer syslog.

I-Installation des pré-requis

Installons dans un premier temps les pré-requis pour l’installation de SoftEther.

# apt-get update && apt-get upgrade -y
# apt-get install -y gcc make wget tzdata git libreadline-dev libncurses-dev libssl-dev

II- Installation de SoftEtherVPN

Passons à présent au téléchargement puis à la compilation des fichiers binaires de SoftEther:

# cd /opt
# git clone https://github.com/SoftEtherVPN/SoftEtherVPN.git
# cd SoftEtherVPN
#./configure
# make

Suite à la compilation de SoftEther, un dossier bin est généré. Ce dossier contient des dossiers comprenant les fichiers binaires utilisés par SoftEther.

Copiez le contenu du dossier bin dans le dossier /opt.


Le projet github de SoftEther vient avec un dossier systemd comprenant des fichiers qui serviront à créer des services systemd pour l’exécution de chacune des applications de SoftEther.

Il vous suffira donc de copier le contenu du dossier systemd dans le dossier /lib/systemd/system:


Ci dessous le contenu du fichier softether-vpnserver.service.


Démarrez le service softether et activez le au démarrage de votre machine:

# systemctl start softether-vpnserver.service
# systemctl enable softether-vpnserver.service

vpncmd est l’outil d’administration du VPN SoftEther en ligne de commande. Il est situé dans le dossier /opt/vpncmd/vpncmd.
Pour accéder plus facilement à cet exécutable, vous avez plusieurs options dont la configuration d’un alias.
Ouvrez le fichier .bashrc de votre profil,

# nano .bashrc

Puis ajoutez la ligne suivante:

alias vpncmd=/opt/vpncmd/vpncmd

L’outil sera désormais disponible à travers la commande vpncmd dans vos nouveaux shells.

III- Administration du serveur VPN

Passons à présent à la création d’un mot de passe du compte administrateur à l’aide de vpncmd. Cette opération n’est seulement possible que dans le mode admin du serveur. Pour y accéder, lancez vpncmd dans votre terminal, choisissez l’option 1, puis tapez deux fois sur votre touche entrée.
Saisissez l’option ServerPasswordSet pour créer votre mot de passe.

 

Pour utiliser SoftEther, il faut dans un premier temps créer un hub virtuel.
Toujours dans le mode admin, lancez la commande HubCreate suivie du nom de votre hub.
Vous aurez à créer un mot de passe pour le hub.

Passons à présent à la création du VPN L2tp/IPSec.
Sélectionnez votre hub à l’aide de l’option Hub, puis lancez la commande SecureNatEnable qui permet d’activer les fonctionnalités de NAT virtuel et de serveur DHCP.
Ensuite, lancez IPSecEnable pour l’activation du VPN, et répondez yes uniquement à Enable or Disbale IPSec/L2tp Function. 
Créons également par la même occasion une clé PSK pour l’IPSEC .

Créeons un utilisateur pour accéder à notre VPN. La commande UserCreate permet de créer un utilisateur, UserPasswordSet sert à définir un mot de passe pour le nouvel utilisateur.

IV-Configuration des clients

Votre VPN est désormais fonctionnel, la prochaine étape consistera à configurer les clients.
L’un des avantages des VPN L2tp/IPSec, c’est que les clients viennent en natif sur les systèmes Windows, Android, MacOS, iOS.

Windows

Sur Windows, ouvrez vos Paramètres Windows, choisissez le menu Réseau et Internet, puis l’option VPN. Choisissez l’option Ajoutez une connexion VPN et saisissez les informations de votre serveur VPN comme dans l’image ci-dessous.

Android

Dans vos Paramètres Android, choisissez l’option Plus de paramètres de connexion , puis VPN. Cliquez sur PLUS et Ajouter VPN puis insérez les informations liées à votre VPN.

Linux (Ubunutu)

Sur Ubuntu, le client IPSec ne vient pas en natif. Il vous faudra l’ installer dans un premier temps. Cliquez l’icône du Gestionnaire de réseau, puis Modifier les connexions et Ajouter, choisissez l’option L2TP, et insérez les informations du serveur comme dans l’image suivante.

IV-Quelques commandes de SoftEther utiles

Ci-dessous quelques commandes utiles à administration de votre serveur VPN.

IPSecGet

IPSecGet retourne les configurations de base de votre serveur VPN


SessionList

Cette commande retourne une liste de sessions actives sur le VPN.


DhcpTable

DhcpTable retourne la table des baux DHCP.

LogFileList  et LogFileGet

LogFileList sert à lister tous les logs du serveur et LogFileGet permet de consulter un log.

Ainsi prend fin ce guide d’installation d’un serveur L2tp/IPSec avec SoftEther sur une machine Ubuntu 16.04.
Ce billet est le premier d’une série d’articles sur SoftEther.

A bientôt ! 🙂

mdestroy

The post Mise en place d’un VPN L2tp/IPSec avec SoftEther appeared first on Homputer Security.


Choisir ses images Docker

$
0
0

Bonjour à tous ! Aujourd’hui je vais aborder un sujet qui fait couler beaucoup d’encre, la sécurité sous Docker.

Vous pouvez sécuriser votre infrastructure Docker tant que vous voulez, si une de vos images est vulnérable, votre système entier peut-être touché. Les images vulnérables sont de plus très courantes et même les images officielles. Je vais vous montrer tout d’abord comment je procède pour choisir une image sur Docker Hub.

La première des choses est qu’il faut privilégier les images officielles, qui sont indiquées par le “official” lors de votre recherche et présentes pour les éditeurs reconnus, Apache, Mysql, WordPress, etc.

Mais une image officielle n’est pas gage de sécurité, on peut notamment vérifier ça dans les “tags” de l’image, qui sont scannés régulièrement si le repo est marqué comme officiel. Par exemple sur celui de httpd.

On a aussi la vue plus détaillée sur les différentes failles relevée présente dans chaque conteneur :

Ces indications nous permettent d’identifier les différents niveaux de criticité en fonction des CVE, et donc de choisir correctement notre image docker. Mais ces scannes de sécurité ne sont disponible que sous les repos officiels de Docker Hub, alors que des applications n’ont pas encore de repos marqué comme officiel. Comment faire pour vérifier si une image non officielle est sécurisée ?

On peut notamment se rendre dans le DockerFile sur Docker Hub et le vérifier si l’accès a été donné. Nous pouvons regarder s’il y a des appels de script externe ou des imports que nous ne pouvons pas vérifier.

Ou nous pouvons tout simplement utiliser une alternative à Docker Hub au niveau des scanne de sécurité, anchore.io

Ce site permet tout comme Docker Hub d’avoir une vue sur les vulnérabilités présente dans les conteneurs, mais sa particularité est qu’il intègre aussi les conteneurs publics, je suis d’accord ils n’y sont pas tous, mais c’est déjà une très bonne initiative et un bon début. Ce site permet aussi d’effectuer une demande pour que des tests de sécurité soient lancés sur son propre repo public s’il est disponible sur Docker Hub. Une seule demande est possible gratuitement, les demandes en plus nécessiteront une participation financière.

Un exemple ici avec l’application confluence d’atlassian, qui est mise à disposition sur Docker Hub via un repo public :

Ce site est très complet et permet notamment d’avoir accès aux différents paquets installés sur chaque image scannée, aux informations de base comme sur Docker Hub, etc.

J’en profite également pour vous présenter un conteneur pour réaliser un check des bonnes pratiques de sécurité sur votre serveur docker comme la mise en place d’une partition séparée pour Docker, la vérification des mises à jour, le lancement des conteneurs en tant que root, etc.

Ce conteneur s’appelle security benck docker et est disponible ici.

Voici comment l’utiliser :

docker pull docker/docker-bench-security

docker run -it –net host –pid host –userns host –cap-add audit_control \
-e DOCKER_CONTENT_TRUST=$DOCKER_CONTENT_TRUST \
-v /var/lib:/var/lib \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/lib/systemd:/usr/lib/systemd \
-v /etc:/etc –label docker_bench_security \
docker/docker-bench-security

Et voici un exemple de résultat :

Je vous invite également à lire ici les bonnes pratiques de sécurité pour Docker réalisée par le SANS Institute.

J’espère que cet article vous aura plu, si vous avez des questions ou des remarques sur ce que j’ai pu écrire n’hésitez pas à réagir avec moi par mail ou en commentaire !

Merci pour votre lecture et à bientôt !

The post Choisir ses images Docker appeared first on Homputer Security.

La cybersécurité au coeur de la performance de votre entreprise avec Elite CI

$
0
0



Face aux actes criminels grandissants dans « le cyber espace », la cybersécurité est un sujet qui prend de l’importance de façon exponentielle dans le milieu professionnel.
Cette notion a été brillamment traitée par mme Rockya Fofana, DG d’Elite CI, lors de la 2ème édition de l’Atelier Forum sur la cybersécurité d’Elite CI.
L’évènement s’est tenu le vendredi 11 mai dernier à la salle de conférence de la Chambre de Commerce et d’Industrie de Côte d’Ivoire.

On entend par cybersécurité l’ensemble des mesures de sécurité susceptibles d’être prises pour protéger toutes les ressources d’une entreprise. Ces ressources peuvent être tangibles (ordinateurs, imprimantes, serveurs, etc.) comme intangibles ( réseaux informatiques, logiciels, bases de données, données électroniques de l’entreprise, données des clients etc.) .
Dans une société de plus en plus digitalisée, la cybersécurité est logiquement devenue vitale pour les particuliers mais surtout pour les entreprises.

Avec des explications claires et simples, Mme Fofana a fait le tour des trois objectifs principaux de la cybersécurité c’est à dire la confidentialité, l’intégrité et la disponibilité.

De ses explications, il en est ressorti que la confidentialité a pour but d’assurer qu’une information n’est accessible qu’aux personnes autorisées. L’intégrité quant à elle assure qu’une donnée reste exacte et consistante à travers son cycle de vie. Et la disponibilité assure qu’un système ou une donnée soit accessible en un temps défini.

Chaque outil déployé et chaque procédure mise en place répond toujours à au moins un de ces éléments.

Pour lutter efficacement contre la cybercriminalité, c’est toute l’entreprise qui doit se mobiliser : les professionnels, mais aussi les dirigeants et les collaborateurs. Tout le monde est concerné, et c’est en développant une « culture cybersécurité », étendue à l’ensemble des échelons et des métiers dans le cadre d’une démarche collaborative, que les organisations pourront réellement se protéger des cyber menaces.

Pour mettre en place une telle stratégie de sécurité, la fondatrice d’Elite CI mise sur trois facteurs importants:

La technologie

Elle regroupe tous les moyens techniques mis en oeuvre pour protéger les structures en situation de crise. Par exemple l’implémentation d’un filtreur de mail (Fortimail) qui sera un rempart contre les spams, les spoofing emails ou encore la mise en place d’un Web Application Firewall (Fortiweb) qui protégera les serveurs web de l’entreprise contre les injections SQL, les attaques DDOS, les attaques XSS, CSRF et bien d’autres.

Les processus

Les processus se réfèrent tout simplement à un ensemble de règles et de procédures. Cela peut être l’adoption d’une politique de sécurité ou d’une politique de gestion des changements, ou encore la mise en place d’un plan de continuité.
Des processus bien implémentés peuvent aider à résoudre certaines vulnérabilités et réduire considéremment les probabilités d’attaques.

Le facteur humain

La cyber-sécurité peut être comparée à une série de liens qui forment une chaîne. Malheureusement, le lien le plus faible est trop souvent le facteur humain. Pour améliorer la résistance de ce lien, plusieurs processus doivent être mis en œuvre: la sensibilisation des utilisateurs, la formation des ressources techniques, le développement de processus, de systèmes et des rôles qui tiennent compte de la vulnérabilité humaine.

L’instauration d’une stratégie de sécurité au sein d’une entreprise présente plusieurs avantages parmi lesquels :
_ l’amélioration de la sécurité de l’entreprise,
_ la réduction de la probabilité des attaques,
_ la limitation des dégâts causés par des attaques,
_ l’optimisation des systèmes,
_ la continuité de l’entreprise même en situation de crise.

En marge de cet Atelier Forum, une formation gratuite a été offerte à l’attention des jeunes étudiants de l’Ecole de la Chambre de Commerce et d’Industrie sur le thème « La Sécurité Informatique dans l’Utilisation des Réseaux Sociaux ».

Mme Fofana anime régulièrement des ateliers sur la cybersécurité, notamment, pour les membres de l’Association Professionnelle des Banques et Etablissements Financiers APBEF, et pour ceux de l’Association des Sociétés d’Assurances de Cote d’Ivoire ASACI.

Elite CI est une compagnie créée en 2011 qui accompagne ses clients dans la lutte contre la cyber criminalité avec une large gamme de prestations couvrant tous les aspects de la sécurité informatique.

mdestroy

The post La cybersécurité au coeur de la performance de votre entreprise avec Elite CI appeared first on Homputer Security.

Comment activer l’authentification à deux facteurs sur les comptes Firefox ?

$
0
0

Dans les prochains jours, Mozilla déploiera sur Firefox un processus d’authentification à deux facteurs pour les comptes Firefox.

Sur Firefox, les comptes d’utilisateurs servent à plusieurs choses: la synchronisation de vos données entre tous vos appareils (mots de passe, favoris, paramètres, plugins, etc.), la protection de vos mots de passe, favoris, et l’intéraction avec plusieurs services de Mozilla et Firefox.

La seule méthode d’authentification pour ces comptes jusque là était les mots de passe.
Dans un souci de mieux sécuriser son navigateur, Mozilla a décidé d’ajouter une nouvelle couche d’authentification pour les accès aux comptes Firefox.
Cette nouvelle fonctionnalité sera déployée progressivement auprès des utilisateurs de Firefox les jours à venir selon Vijay Budhram, ingénieur chez Mozilla.

Comme deuxième méthode d’authentification, Mozilla a porté son choix sur le standard TOTP qui est supporté par plusieurs applications telles ques FreeOTP, Authy, Duo, Google Authenticator.

Aussitôt que la nouvelle fonctionnalité sera disponible dans votre navigateur, vous verrez une option pour l’activer dans la section des préférences du compte.

Il est également déjà possible de l’activer sur Firefox soi-même. Voici comment procéder :

1- Loguez-vous à votre compte Firefox, puis visitez le lien ci-dessous:
https://accounts.firefox.com/settings?showTwoStepAuthentication=true

2- Vous verrez apparaître dans Firefox un menu de modification des paramètres de votre compte Firefox.
Affichez l’option Validation en deux étapes, puis activez-la en cliquant sur le bouton Activer.

3- Pour compléter l’activation de l’authentification à deux facteurs sur votre compte, scannez le code qr qui s’affichera dans votre navigateur à l’aide de votre application TOTP, puis insérer le code de sécurité qui se présentera dans l’application.

Après l’activation de la fonctionnalité vous verrez dans votre navigateur Firefox une liste de codes de secours.
Ces codes vous permettront de récupérer votre compte si vous avez perdu l’accès à votre application TOTP.
Il est très important que vous les conserviez dans un lieu sûr.

Après avoir cliqué sur Terminer, vous verrez que l’état de l’option est passé à Activé.

Pour vous loguer désormais à votre compte Firefox, vous aurez à insérer dans un premier temps votre mot de passe habituel, puis le code TOTP qui s’affichera dans votre application.

mdestroy

The post Comment activer l’authentification à deux facteurs sur les comptes Firefox ? appeared first on Homputer Security.

Wazuh HIDS Présentation & Installation

$
0
0

Bonjour à tous,

Aujourd’hui je vais vous présenter Wazuh qui est un HIDS (Host Intrusion Detected System), ce logiciel Open Source est un Fork du célèbre logiciel du même type OSSEC, il est même entièrement basé sur ce dernier.

Wazuh en plus du HIDS peut également faire du FIM (File Integrity Monitoring) et IPS (Intrusion Prevention System), comme OSSEC il est basé sur le modèle client – serveur, c’est-à-dire que cet outil a besoin d’un serveur central pour fonctionner.

Tout d’abord les avantages que je lui trouve comparé à OSSEC :

  • Une meilleure gestion des agents (Agent AIX, Linux, Windows).
    • En effet il permet d’ajouter très simplement des agents Windows avec son fichier msi exécutable via PowerShell et il propose aussi un agent AIX fonctionnel
  • Intégration de base des règles PCI DSS
  • Possibilité de mise en place de la suite ELK (ElasticSearch Logstash Kibana) très facile

Tout d’abord qu’est qu’un HIDS ? C’est un logiciel qui va surveiller les différents agents qui lui sont connectés et remonter des alertes de sécurité en se basant sur les informations qu’il analyse, dans notre cas des hashs de fichier, des clés de registres et des logs.

Concrètement que va donc faire Wazuh :

  • Analyser les logs des différents agents
  • Remonter des alertes avec différents niveaux de criticité (0 à 15)
  • Vérifier l’intégrité des fichiers systèmes
  • Détection de rootkits
  • IPS (lancement de script en cas d’alerte pour bloquer des attaques comme du bruteforce, etc.)

Avant d’installer notre serveur Wazuh Manager (qui dans mon cas sera un Centos7), nous allons voir ensemble son fonctionnement.

La communication entre le serveur et les agents se fait sur le port 1514 UDP dans les deux sens et nécessite un échange de clé pour assurer l’intégrité et la sécurité des données, cet échange de clé peut se faire de plusieurs façons comme nous le verrons un peu plus tard. Par défaut le port 1515 TCP est utilisé pour les échanges de clé automatiquement.

Une fois les échanges de clés effectués, les agents et le serveur ne communiquent plus que par le port 1514 en UDP.

Voici un schéma du fonctionnement du manager avec un agent :

On peut y retrouver les différentes étapes, notamment sur l’agent avec :

  • Log collector qui est un service de collecte de log
  • Syscheck qui est le service chargé de la vérification de l’intégrité des fichiers systèmes
  • Rootcheck qui lui est chargé de la détection des rootkits

Et sur le serveur avec les différents décodeurs de log et les différentes règles de détection, de base Wazuh intègre un grand nombre de règles et décodeurs (Cisco, WordPress, Nginx, Apache, Windows, etc.)

Voyons maintenant comment installer Wazuh Manager sur un serveur Centos 7.

Pour installer le serveur ou les agents Linux il y a 2 solutions, la première (celle que je vais montrer) qui est d’ajouter les repos de Wazuh sur nos machines et de lancer l’installation avec Yum, ou la seconde qui est de récupérer l’archive directement sur leur site et d’exécuter le script install.sh qui est le même pour le serveur ou les agents. Avec ce script vous aurez besoin d’un compilateur C, concernant Windows comme dit un peu plus haut un fichier msi est fourni et pour AIX une archive pré-compilée est également fournies.

Attention le serveur Manager peut être installé seulement sur une machine Linux.

Installation du serveur

Ajout des repos sur le serveur Manager :

# cat > /etc/yum.repos.d/wazuh.repo <<\EOF
[wazuh_repo]
gpgcheck=1
gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH
enabled=1
name=Wazuh repository
baseurl=https://packages.wazuh.com/3.x/yum/
protect=1
EOF

Une fois le repo ajouté il ne reste qu’à lancer l’installation de Wazuh Manager :

yum install wazuh-manager

Notre logiciel serveur dans sa dernière version est donc installé.

De base il s’installe dans /var/ossec/, voici son architecture :

La plupart des noms de dossiser sont parlants pour vous j’imagine, je vais présenter les principaux dossiers :

  • active-response : Ce dossier contient les scripts à exécuter en cas d’alerte (à configurer dans la partie HIDS
  • agentless : Ce dossier contient les fichiers pour se connecter et assurer des machines ou des agents ne peuvent pas être installé
  • api : Il contient les fichiers de configuration de l’API de Wazuh (API Rest en NodeJS qui n’est pas installée de base)
  • etc : Qui va contenir les fichiers de configuration principaux de l’ensemble de l’application
  • ruleset : Contient toutes les règles de déclenchement ainsi que les décodeurs de log
  • bin : Ce dossier contient l’ensemble des scripts nécessaires aux tests et aux fonctionnalités de Wazuh (ajout d’agent, test de configuration, etc.)

Ce sont les dossiers que nous allons principalement utiliser pour la configuration de notre outil.

Installation d’un agent Linux

Je vais maintenant ajouter un agent sur une machine Ubuntu, comme tout à l’heure, il faut ajouter les repos :

# apt-get install curl apt-transport-https lsb-release
# curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | apt-key add –
# echo “deb https://packages.wazuh.com/3.x/apt/ stable main” | tee /etc/apt/sources.list.d/wazuh.list
# apt-get update
# apt-get install wazuh-agent

Il suffit de remplacer agent par manager si vous voulez réaliser une installation sous Debian ou Ubuntu.

Une fois l’installation effectuée, comme sur le manager les fichiers de notre agent sont dans le dossier /var/ossec :

L’architecture est sensiblement la même sur les agents Linux/AIX. Les configurations de l’agent se feront donc aussi dans le dossier /var/ossec/etc, et plus principalement dans le fichier /var/ossec/etc/ossec.conf.

L’agent est maintenant installé mais il n’est pas ajouté sur notre serveur, aucun échange n’a lieu. Il existe 2 manières de faire pour ajouter un agent :

1ère méthode

Sur le serveur Manager, se rendre dans /var/ossec/bin et lancer le script manage_agents :

Une fois ce script, choisissez l’option A :

Une fois l’agent ajouté sur le serveur, une clé a été automatiquement créée, il est donc nécessaire de la récupérer et de l’ajouter sur notre agent, toujours dans le script manage_agents de notre serveur, choisissez l’option E :

Il reste plus qu’à copier notre clé et à l’ajouter sur notre agent.

Sur notre agent Ubuntu, il faut se rendre dans le même script afin d’insérer notre clé :

L’option I a été sélectionnée et la clé a été copié, l’agent est maintenant ajouté correctement à Wazuh.

2ème méthode

Cette 2nd façon de faire est sensiblement plus simple, elle consiste à automatiser le déploiement des clés sur les agents.

Sur le serveur manager de Wazuh il est nécessaire une nouvelle fois de se rendre /var/ossec/bin et d’exécuter la commande suivante :

./ossec-authd -a

Cette commande va lancer le processus authd de Wazuh et commencer à écouter sur le port 1515 en TCP, dans l’attente de connexion d’agent pour un échange de clé (l’option -a est présente pour régler des problèmes de compatibilité sous Windows).

Sur notre agent Ubuntu il faut maintenant lancer la commande suivante (dans /var/ossec/bin toujours) :

./agent-auth -m <IP de votre serveur Manager>

Exemple :

Cette méthode est pour moi beaucoup plus rapide et c’est celle que j’utilise le plus souvent.

L’agent est maintenant installé avec l’échange de clé effectué mais il ne peut toujours pas fonctionner, tout simplement car dans son fichier de configuration principal qui est /var/ossec/etc/ossec.conf, l’IP du serveur Manager n’est pas renseignée. Il faut donc ce rendre dans se fichier sur l’ensemble des agents et ajouter cette IP :

Il suffit de remplacer MANAGER_IP par l’IP de votre serveur manager et de relancer votre agent avec la commande suivante :

systemctl restart wazuh-agent

Il est aussi à noter que si vous avez choisi l’installation directement depuis l’archive proposée par Wazuh pour vos agents, il n’est pas nécessaire d’ajouter l’IP dans vos fichiers de configuration, cela est réalisé automatiquement lors de l’installation.

On peut maintenant vérifier depuis notre manager que l’agent est bien connecté avec la commande suivante qui affiche seulement les agents connectés actifs :

Et même avoir plus d’informations sur l’agent avec une option différente (004 correspond à l’ID de l’agent) :

On sait maintenant ajouter des agents Linux à notre serveur Wazuh, passons maintenant aux agents Windows.

Installation d’un agent Windows

Sur Windows l’ajout d’un agent est très simple, il suffit de récupérer le fichier d’installation msi sur le site de Wazuh : https://packages.wazuh.com/3.x/windows/wazuh-agent-3.2.4-1.msi

Une fois le fichier téléchargé, je le place à la racine de ma partition C: et je lance la commande suivante :

cd C:
.\wazuh-agent-3.2.4-1.msi /q APPLICATIONFOLDER=”C:\ossec\” ADDRESS=”192.168.1.56″ AUTHD_SERVER=”192.168.1.56″

La 1ère option correspond au dossier d’installation, la 2nd et la 3ème correspondent à notre serveur Wazuh qui est à la fois manager et serveur d’authentification.

Avec le fichier msi, tout est automatisé, l’installation de l’agent, l’échange de clé et la modification du fichier ossec.conf pour l’ajout de l’IP du manager, cela peut être vérifié directement sur notre manager comme pour le agents précédents.

Au niveau de l’architecture, elle est similaire à celle de l’agent Linux, on remarque juste l’absence du dossier etc et l’ajout de win32ui.exe qui est une petite interface graphique pour vérifier rapidement l’agent et interagir avec lui :

 

Nous avons donc maintenant un notre serveur Wazuh Manager avec un agent Linux (Ubuntu) et un agent Windows (10 Entreprise). Au niveau de la configuration, cela va se dérouler en 2 articles, le 1er sur la configuration du FIM et un second sur la configuration de la partie HIDS.

J’espère que cet article vous aura plu, si vous avez des questions ou des remarques sur ce que j’ai pu écrire n’hésitez pas à réagir avec moi par mail ou en commentaire !

Merci pour votre lecture et à bientôt !

MRigonnaux

The post Wazuh HIDS Présentation & Installation appeared first on Homputer Security.

Comment réaliser un audit système avec Otseca ?

$
0
0

Otseca est un outil d’autil système Open Source destiné aux systèmes Linux.
Cet outil vous permet de collecter diverses informations sur un système donné pour des fins de pentest, hacking, etc.
Bien qu’Otseca vient avec plusieurs commandes prédefinies, il démeurre possible d’ajouter vos propres commandes dans la configuration de l’outil (fichier otseca/etc/otseca.conf).
Otseca génére ses résultats dans les formats HTML et RAW-HTML.

Installation

Pour installer Otseca, procédez comme suit :

# git clone https://github.com/trimstray/otseca
# cd otseca
# ./setup.sh install

Ci-dessous le menu d’aide d’Otseca:

Exemple d’utilisation

Otseca comprend six tâches spécifiques :
_ system : comprend l’ensemble des tâches liées au système,
_ kernel : comprend l’ensemble des tâches liées au kernel,
_ permissions : comprend l’ensemble des tâches liées aux permissions des comptes du système,
_ services : comprend l’ensemble des tâches liées aux services,
_ network : comprend l’ensemble des tâches liées à la configuration réseau,

NB:
Au moment de la rédaction de cet article, la tâche external est inactive.

Dans l’exemple ci-dessous, l’outil est exécuté avec les tâches system, network et services.

NB: Notez que l’outil fonctionne avec les accès root.


A la fin de l’exécution de la commande, un dossier spécifique à l’analyse est alors créé.


A l’ouverture des fichiers dans un navigateur, vous retrouverez toutes les informations collectées.


Happy Hacking !

mdestroy

The post Comment réaliser un audit système avec Otseca ? appeared first on Homputer Security.

Viewing all 97 articles
Browse latest View live