Protections Ubuntu 14.04LTS

Publié le par Wullfk

La Sécurité sur Ubuntu 14.04LTS

La Sécurité sur Ubuntu 14.04LTS

Définition d'un ROOTKIT

Un rootkit est un programme qui maintient un accès frauduleux à un système informatique et cela le plus discrètement possible, leur détection est difficile, parfois même impossible tant que le système d'exploitation fonctionne. Certains rootkits résistent même au formatage car ils peuvent s'introduire directement dans le BIOS. Ils existent sous Linux depuis longtemps (car le noyau est ouvert et modulaire).

Un Webkit quant à lui permet de prendre l'accès d'une machine via une faille puis par port http et de prendre l'accès sur le système.

Il existe néanmoins des programmes pour les détecter, nous allons les voir ci-dessous.

Source : Rootkit – Documentation Ubuntu Francophone

 

La Sécurité sur ubuntu

Avec seulement 1,52% d'utilisateurs d'une distribution Linux (Source NetMarketShare, 1,91% sur StatCounter), les stations de travail ne sont pas la cible des pirates informatiques. Néanmoins, les machines Linux sont souvent des serveurs ce qui en fait des cibles de choix !

Ubuntu possède tout de même un Firewall intégré de base (UFW), il n'est pas actif par défaut. Il s'utilise via un terminal, mais pour faciliter son utilisation il est possible d'y adjoindre une interface graphique (GUI = Graphic User Interface) : Gufw via la logithèque Ubuntu.

De base Ubuntu ne dispose pas d'Antivirus, et à vrai dire on peut même sans passer, mais il y a tout de même possibilité d'installer ClamAv, avec comme interface graphique ClamTk

Anti-malwares

On dispose de quelques outils d'analyses qui s'utilisent via un terminal il n'existe pas d'interface graphique (GUI):

  • Chkrootkit (installation via paquet .deb)

  • Rkhunter (installation via paquet .deb)

  • Lynis (outil le plus récent, permet d'exécuter un audit de sécurité du système)

Protection du système

On dispose de l'outil AppArmor (installation via le terminal ou paquet .deb)

Analyse de vulnérabilité

On dispose de 2 outils :

  • Nessus (Scanner de vulnérabilité)
  • OpenVAS (Scanner de vulnérabilité libre basé sur Nessus)

GUFW (Interface graphique pour UFW)

L'interface graphique pour le Firewall UFW d'Ubuntu s'installe via la Logithèque Ubuntu, UFW n'est pas activé par défaut. Une fois l'installation effectuée pour activer l'interface et de fait le Firewall on le lance via le Dash d'Unity ou via son icône dans la barre Unity, puis on clique sur le bouton Status.

Votre mot de passe vous sera demandé, car seul un administrateur peut débloquer le Firewall.

D'autres paramètres sont disponibles dans l'interface, se reporter à la documentation Ubuntu sur Gufw pour peaufiner vos réglages.

 

ClamAV et ClamTK

Clam AntiVirus (ClamAv) est un antivirus GPL pour UNIX qui s'utilise de base dans un terminal, mais on peut lui adjoindre une interface (GUI) ClamTk celle-ci est disponible via un paquet .deb .

La mise à jour de la base de données de ClamAv peut s'effectuer manuellement via le lien suivant :

https://launchpad.net/~ubuntu-security-proposed/+archive/ubuntu/ppa/+build/6764309

Pour avoir la dernière version de ClamTk cliquer sur le lien suivant : Download ClamTk il vous reste plus qu'à lancer le paquet .deb pour effectuer l'installation qui s'effectuera via la Logithèque Ubuntu.

Une fois l'interface installée, lancé là via le Dash d'Unity ou son icône dans la barre Unity.

Il vous reste plus qu'à effectuer vos réglages.

 

ChkRootkit

Chkrootkit est un scanner Anti-rootkit, qui s'utilise via un terminal.

Vérifie que les fichiers exécutables du système n'ont pas été modifiés, que la carte réseau n'est pas en mode "promiscuous" et que des vers LKM (Loadable Kernel Module) ne sont pas présents.

Source : Rootkit - Documentation Ubuntu Francophone

La documentation Ubuntu francophone (paragraphe 1.2) renvoi sur le site officiel en Anglais : http://www.chkrootkit.org/

Celui-ci ne propose pas de paquet debian pour l'installation, il faut passer par la page Ubuntu pour pouvoir télécharger le fichier .deb version 0.49 pour Ubuntu 14.04 (Trusty Thar) sélectionner votre version en fonction de votre système (32 ou 64Bits) ou cliquer sur un des liens si dessous :

En passant par un paquet debian et donc par la Logithèque Ubuntu, on dispose en Anglais d'un peu plus d'explication sur les actions de Chkrootkit, comme le montre la capture d'écran si dessous :

Liste des commandes de Chkrootkit via la commande suivante:

sudo chkrootkit -h

 

RkHunter

Rkhunter (pour Rootkit Hunter) est une alternative, voir un complément de Chkrootkit. Il s'utilise aussi via un terminal.

(Rkhunter – Documentation Ubuntu Francophone)

Contrôle notamment que les fichiers n'ont pas été modifiés en comparent les hash avec une base de données en ligne.

Source : Rootkit (paragraphe 1.1) - Documentation Ubuntu Francophone

Site officiel : The Rootkit Hunter Project

Le téléchargement du fichier debian, s'effectue via le lien suivant : rkhunter_1.4.0-3_all.deb (205.9 KiB)

Installation en effectuant un double clic sur le fichier qui ouvre la Logithèque Ubuntu (image ci-dessus)

Avant la première utilisation effectuer la mise à jour via la commande suivante :

sudo rkhunter --update

Avant toute chose, nous allons maintenant configurer notre anti-rootkit convenablement. Pour cela, on va d’abord réaliser une sauvegarde du fichier de configuration initiale

cp /etc/rkhunter.conf /etc/rkhunter.conf.bak

Maintenant, on peut utiliser notre éditeur de texte Gedit pour ajuster la configuration de Rkhunter en fonction de nos besoins.

sudo gedit /etc/rkhunter.conf

On cherche dans ce fichier la ligne suivante pour la modifier en ajoutant l’adresse mail sur laquelle vous recevrez les rapports générés quotidiennement et/ou les alertes transmises par Rkhunter :

MAIL-ON-WARNING=Utilisateur@VotreNomDeDomane.extension

Par défaut, Rkhunter stocke ses fichiers de logs dans le répertoire /var/log/rkhunter.log/, si vous souhaitez les déplacer, vous pouvez modifier la ligne suivante :

LOGFILE=/var/log/rkhunter.log

Vous pouvez à présent lancer votre première analyse en spécifiant par exemple un rapport uniquement sur les avertissements via la ligne de commande suivante :

sudo rkhunter --checkall --report-warning-only

La commande suivante :

sudo rkhunter –propupd

Permet de créer la première base de données qui sera utilisée pour les futurs scans. Il faut donc être sûr que le système est sain à ce moment précis et avant de créer la base qui sera utilisé pour les prochains scans.

Pour que Rkhunter s'exécute automatiquement sans intervention il faut créer un script lié à une tâche crontab

Création d'un script comme l'exemple suivant à adaptez celons vos besoin :

#!/bin/sh
source /etc/profile
rkhunter --update && rkhunter –check


Enregistrer le dans /home/login/Documents sous le nom auto-rkhunter.sh

Remplacer login par votre nom d'utilisateur

Le rendre exécutable avec la commande suivante dans un terminal :

chmod +x auto-rkhunter.sh

Puis créer votre tâche cron en éditant le fichier crontab via la commande :

crontab -e

Choisir l'option 2 (l'éditeur nano) et saisissez votre tâche cron, comme dans l'exemple suivant :

00 20 * * * /home/login/Documents/auto-rkhunter.sh

À adapter celons vos propres critères.

Finaliser en enregistrant par la combinaison de touche CTRL+X et valider la sauvegarde par OUI

 

Lynis

Lynis est un outil d'analyse plus récent que CHKROOTKIT et RKHUNTER, il permet d'effectuer un audit de sécurité de votre système via un terminal.

Contrôle notamment le pare-feu, que les certificats SSL ne sont pas périmés, l'intégrité des fichiers.

Source : Rootkit (paragraphe 1.3) - Documentation Ubuntu Francophone

Il existe sur la page Ubuntu lynis_1.3.9-1_all.deb (92.8 KiB) pour Ubuntu 14.04 (Trusty Thar) qui s'installe via un paquet .deb et dispose d'un lanceur dans la barre Unity.

Mais ce n'est pas la dernière version disponible comme l'indique la capture d'écran ci-dessous.

Pour avoir la dernière version (2.1.0) il faut aller sur le site de l'éditeur CISOFY pour télécharger l'archive .tar.gz

Pour l'installation suivre le guide en ligne : Get Started with Lynis – Installation Guide

Vous pouvez aussi utiliser Lynis sans installation

Cette version ne dispose malheureusement pas d'un lanceur dans la barre Unity, il faut lancer l'audit de sécurité via un terminal avec les commandes suivantes :

cd /usr/local/lynis
./lynis

Contrairement à la référence de l'archive télécharger (2.1.0) la version qui s'affiche dans le terminal est la 2.1.1

Différents paramètres peuvent être associés à la commande :

./lynis

Bien qu'en Anglais la documentation Lynis est bien construite et relativement simple à comprendre.

Je n'ai pas essayé, mais il est peut être possible de créer un lanceur pour cette version afin de l'intégrer dans la barre Unity.

 

AppArmor

(Tiré du Guide de sécurisation pour Ubuntu 14.04 disponible à la fin de cet article)

Les distributions Linux sont en majorité équipées de Firefox comme navigateur web, ce qui fait de Firefox une cible de choix pour tout service de renseignement soucieux d'infecter GNU/Linux (faille 0day dans Tor Browser, etc)

Pour empêcher qu'un exploit 0day ciblant Firefox ne fasse des dégâts considérables, il faut
sécuriser Firefox avec le logiciel AppArmor.

AppArmor est un logiciel libre qui permet de limiter l'exécution et l'accès des programmes au système. https://fr.wikipedia.org/wiki/AppArmor
Par défaut, AppArmor ne protège pas Firefox (incompréhensible), pour le constater faites
l'expérience suivante : ouvrez avec Firefox un fichier sensible, par exemple le fichier gfxblacklist.txt


Ce fichier est situé dans le système de fichier /boot/grub, c'est la partition non-chiffrée d'amorçage qui permet le déchiffrement du disque dur lors du démarrage de l'ordinateur. Si Firefox peut y accéder alors un attaquant qui exploite Firefox peut y accéder aussi, il peut modifier la partition /boot et y installer un keylogger qui va enregistrer le mot de passe de chiffrement disque lors du démarrage.
Un attaquant exploitant Firefox peut aussi compromettre le système avec un trojan ou n'importe quel virus made in NSA.

Pour protéger le système vous devez sécuriser Firefox avec AppArmor

Ouvrez un terminal et installez AppArmor :

sudo apt-get install apparmor-utils apparmor-profiles apparmor-notify

 

Ou via des paquets .deb :

apparmor_2.8.95~2430-0ubuntu5_amd64.deb (311.3 KiB)

apparmor-utils_2.8.95~2430-0ubuntu5_amd64.deb (51.5 KiB)

apparmor-profiles_2.8.95~2430-0ubuntu5_all.deb (32.5 KiB)

apparmor-notify_2.8.95~2430-0ubuntu5_all.deb (11.3 KiB)

apparmor_2.8.95~2430-0ubuntu5_i386.deb (320.6 KiB)

apparmor-utils_2.8.95~2430-0ubuntu5_i386.deb (51.5 KiB)
 
Il faut passer le profil de Firefox en mode "enforce"

sudo aa-status | grep firefox

sudo aa-enforce /etc/apparmor.d/usr.bin.firefox

sudo aa-status | grep firefox


Les binaires Firefox sont désormais en mode "enforce"

Vous devez redémarrer pour appliquer les changements. Vérifiez si Firefox est bien en mode "enforce" en essayant à nouveau d'ouvrir un fichier sensible. On obtient une notification indiquant que AppArmor a bloqué Firefox lorsque celui-ci a tenté d'ouvrir un fichier dont il n'a pas les droits d’accès..

Si la notification vous dérange vous pouvez la désactiver en utilisant la commande suivante :

sudo gedit /etc/apparmor/notify.conf


# set to 'yes' to enable AppArmor DENIED notifications
show_notifications="no"


Redémarrer le PC pour la prise en compte.

Vous pouvez ajouter d'autres processus et binaires en mode "enforce" pour diminuer les risques de compromission.
https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/AppArmorProfiles

Ouvrez un terminal et vérifiez l'état des profils :

sudo apparmor_status




Passez les profils critiques en mode "enforce" les profils d'AppArmor sont localisés dans /etc/apparmor.d

sudo aa-enforce /etc/apparmor.d/usr.sbin.avahi-daemon

sudo aa-enforce /etc/apparmor.d/usr.sbin.dnsmasq

sudo aa-enforce /etc/apparmor.d/usr.sbin.mdnsd

sudo aa-enforce /etc/apparmor.d/usr.sbin.smbd

Nessus

 

 

Nessus est un outil de sécurité informatique.

Il signale les faiblesses potentielles ou avérées du matériel testé (machines, équipement réseau).

Nessus est devenu un logiciel propriétaire à partir de la version 3. Cependant, il est resté gratuit pour usage non commercial. Un fork libre a été créé:

Plus d'infos ici : Nessus - Documentation Ubuntu Francophone

OpenVAS

 

 

Un fork libre de Nessus

Tout comme Nessus, il signale les faiblesses potentielles ou avérées du matériel testé (machines, équipement réseau).

OpenVAS est capable de scanner un équipement (machine ou matériel réseau), un ensemble d'équipements (à partir d'un fichier ou d'une plage IP) ou encore un réseau entier.

Plus d'infos ici : OpenVAS - Documentation Ubuntu Francophone

Voila ça devraient suffire pour une utilisation raisonnablement sûre de votre système.

Ce tutoriel est fini, vous disposez à présent de 6 outils pour protéger et analyser la sécurité sur Ubuntu.

Ce tutoriel est aussi disponible au format PDF :

Protections Ubuntu 14.04LTS.pdf

LE GUIDE DE SECURISATION POUR UBUNTU 14.04.pdf

Publié dans Linux Ubuntu, Sécurité

Commenter cet article