Comment préparer son PC pour la Nuit du Hack

Vous allez voir comment je prépare mon PC portable pour la Nuit du Hack dans l'optique de participer au Wargame sans risque pour votre vie privée et vos données. Il faut dire que l'on voit quelques folies avec des PC du boulot les gens sont fous... Ces étapes sont relativement simples et peu coûteuses allez en 10 minutes vous saurez ce qu'il convient de faire et en une petite heure vous l'aurez appliqué à votre PC.

Attention qu'on ne déforme pas mon propos : je n'insinue pas que participer au Wargame de la Nuit du Hack est dangereux, mais il me parait prudent de dire que toutes les personnes présentes ne sont pas forcément bien intentionnées.

Edit du 15/06/2017 : Un grand merci à Kmkz pour sa relecture qui a permis d'ajuster l'article via ces critiques éclairées et pertinentes. Si vous aussi vous avez des remarques je suis preneur !

0 - PC Dédié ?

Vous n'êtes pas obligé mais j'ai pris l'habitude d'avoir un PC dédié à la sécurité à titre personnel que j'utilise pour donner mes cours et participer à divers CTF dont notamment le Wargame de la Nuit du Hack. J'ai depuis quelques années un Dell Latitude E4310 en 13 pouces qui fonctionne super bien, vous en trouvez d'occasion à partir de 150 € sur Cdiscount.

Fig 1 : mon pc pour la Nuit du Hack entre autre chose

Vous pouvez investir dans un SSD et vous avez un poste très performant qui n'a rien à envier sauf la batterie qui est un peu faible en tenue.

1 - Mode parano

Pour la suite de l'article en ce qui concerne les installations ou la récupération des outils si vous êtes un peu parano, comme moi et que vous faite tout cela depuis votre Wifi. Changez la clé avant de connecter le PC pour la rechanger une fois le setup terminé sait-on jamais. Je ne suis pas persuadé que la fuite de votre clé Wifi soit un grand souci mais sait-on jamais.

2 - Nouveau disque dur

Première chose à faire pour ne courir aucun risque à la Nuit du Hack, si comme moi vous utilisez votre poste pour autre chose, changez le disque dur pour être certain d'avoir aucune fuite de donnée. L'autre avantage c'est qu'une fois la Nuit du Hack terminée vous devrait uniquement le formater pour éviter toutes contagions possibles.

Il est vrai que d'avoir un SSD pour l'usage courant et un pour la Nuit du Hack c'est un peu coûteux, privilégiez un HDD classique pour ma part j'ai un Seagate black en 7200 Tr/mins qui m'avait été livré avec mon PC qui n'a jamais connu mon réseau ni était utilisé par mes soins donc il est parfait pour cet usage.

Pas besoin de prévoir un disque d' 1To vous aurez peu de volume à récupérer lors du wargame. Si vous le pouvez privilégier la rapidité du disque ça pourra servir pour certains challenges.

Si vous ne pouvez pas changer de disque utilisez des VM pour participer aux challenges, n'oubliez pas le backup de vos données en amont et une fois terminé supprimer les VM utilisées. Dans tous les cas c'est à vous de voir mais surtout mettez à jours votre OS à fond ainsi que vos autres logiciels/paquets.

3 - Système d'exploitation

En système d'exploitation je vous recommande Debian, pas de Windows (même si il est complètement à jour il y a peu de risque), car au vu des annonces de Shadow Brokers et qu'il est fort probable que d'autres fuites arrivent d'ici la Nuit du Hack; il me parait risqué d'utiliser un Windows mais c'est tout à fait possible de l'utiliser pour y participer.

Pour la version de Debian une 7 ou une 8 feront parfaitement l'affaire elles sont bien maintenues et fiable. Certes il y a eu récemment une alerte de sécurité, mais ça a été rapidement corrigé.

Si vous souhaitez utiliser directement en boot Kali ou Backtrack ou toute autre distribution de pentest bien souvent la machine démarre en root et c'est vraiment une très mauvaise idée, pare-feu non configuré etc. Vous devrez donc absolument créer un nouvel utilisateur pour vous connecter et changer les accès par défaut du root et appliquez les configurations du pare-feu ci-dessous.

Il me parait aussi intéressant de regarder si votre PC est concerné par les failles Intel AMT et de patcher au besoin.

4 - Pare feu

Sur Debian par défaut le pare-feu n'est pas du tout configuré, ce qui veut dire que tous les ports sont ouverts en sortie comme en entrée et donc vous risquez d'avoir de mauvaises surprises si vous laissez cela en l'état, surtout si vous avez des services actifs vulnérables sur votre machine. Car au final d'un que vous lancerez un service sur votre machine il sera accessible en distant, donc une configuration s'impose.

Concrètement vous risquez de vous faire pirater votre machine rapidement et de ne pas pouvoir faire le Wargame... Pour le configurer sous Debian ce n'est pas forcément ce qu'il y a de plus simple, mais merci à Zenk-Security, Cabusar plus particulièrement pour la base du script, pour une configuration un peu stricte du pare-feu qui vous aidera à vous protéger.

Pour le mettre en place :

Créer un fichier en root dans le répertoire suivant : /etc/init.d nommé le par exemple : firewall-kanjian.sh une fois en place éditez-le pour ajouter les lignes suivantes :

#!/bin/sh
### BEGIN INIT INFO
# Provides: firewall
# Required-Start: $syslog
# Required-Stop: $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: firewall
# Description: Enable firewall.
### END INIT INFO

case "$1" in
start)
echo "Initialisation des règles de firewall pour la NDH"
# Vider les tables actuelles
iptables -t filter -F

# Vider les règles personnelles
iptables -t filter -X

# Interdire toute connexion entrante et sortante
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP

# Ne pas casser les connexions établies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

# Autoriser loopback
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT

#Site web
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT

# DNS
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
#iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
echo "Règles chargées"
logger -p local0.notice -t Firewall "Firewall up" ;;
stop)
echo "Arrêt du firewall"
# Vider les tables actuelles
iptables -t filter -F

# Vider les règles personnelles
iptables -t filter -X

# Ouvrir toute connexion entrante et sortante
iptables -t filter -P INPUT ACCEPT
iptables -t filter -P FORWARD ACCEPT
iptables -t filter -P OUTPUT ACCEPT
logger -p local0.notice -t Firewall "Firewall down"
;;

*)
echo "Usage: /etc/init.d/firewall {start|stop}"
exit 1
;;
esac
exit 0

Vous pouvez retrouver le script à l'adresse suivante : https://github.com/inaz0/firewall/blob/master/firewall-kanjian.sh

Créez un fichier firewall-kanjian.sh dans /etc/init.d avec le contenu du script puis effectuez les commandes suivantes, la dernière permet d'avoir la mise en place des règles à chaque reboot de votre machine (toutes les commandes sont à effectuées en root):

cd /etc/init.d
chmod +x firewall-kanjian.sh
update-rc.d firewall-kanjian.sh defaults

Pour démarrer tout de suite le script vous pouvez le lancer comme suit :

service firewall-kanjian start

Pour l'arrêter il suffit de faire :

service firewall-kanjian stop

Voilà votre machine est protégée et vous pouvez tout de même surfer sur le web. Lors des épreuves vous aurez peut-être besoin de rajouter des ports dans le pare-feu. Rien de plus simple il vous suffira de dupliquer les lignes du port 80 et de changer le 80 par le port souhaité et de relancer le script (stop/start).

Autre choses si vous avez un serveur web d'activé sur votre machine je vous conseille d'en limiter l'accès à votre ip locale uniquement.

Un script beaucoup plus complexe écrit il y a quelque temps par Kmkz : https://github.com/kmkz/Perl/blob/master/Network-securizer.pl

5 - Machines virtuelles

Installez une VMWare ou Virtualbox sur votre PC ceci vous permettra d'avoir sous la main à la demande un Windows, une Kali, une Samurai ou autre distribution de pentest que vous souhaitez utiliser sans vous mettre en danger.

Car durant le wargame il n'est pas impossible que certains challenges soient uniquement réalisables sur certaine famille d'OS. Pensez à bien vérifier les connexions de vos VM au réseau pour ne pas avoir à faire de configuration le jour J.

L'utilité des VM c'est d'avoir beaucoup d'outils prêt à l'emploi et ou vous n'aurez pas à vous embêter pour les installer et configurer. Et puis qui sait peut-être qu'il y aura des épreuves avec des VM à lancer. Car au final la majorité des outils que vous allez utiliser 60% sont présents dans Kali.

6 - Tools

Si comme moi vous avez une collection de Tools que vous avez glanée au cours des années copiez-les sur le disque dur fraîchement installé cela pourra servir. Il y a notamment des outils pour diverses actions automatisées pour récupérer certains types de fichier/format etc. Ce sont généralement des outils absents de Kali ou sur Windows.

J'ai aussi quelque liste de Fuzzing et des listes de mots de passe pour faire du brute force en local au besoin (autre que celles de Kali). Je vous conseille aussi d'installer soit OWASP ZAP (Zed Attack Proxy) ou Burp Suite Free Edition pour les challenges web.

N'oubliez pas n'ont plus d'installer vos outils pour lire l'hexadicmal (Hexedit par exemple), Binary Ninja pour le reverse et gdb pour décompiler. Je vous préconise aussi d'installer les outils de votre langage de programmation préférée pour ma part PHP avec un serveur apache et un Python à jour.

Pour vous préparer vous pouvez aussi installer ces deux tools qui vous permettront de vous simplifier la vie : pwntools & PEDA

Conclusion

Voilà vous êtes fin prêt pour participer au wargame de la Nuit du Hack en sécurité, je vous rappelle juste que si vous voulez consulter vos réseaux sociaux favoris ou vous connecter à des sites web ou vous avez des comptes (forum, site de challenges, etc.) il est fortement conseillé d'utiliser un VPN ou carrément la connexion de votre téléphone sur lequel vous avez un VPN le tout via la 4G. Il n'est pas recommandé d'utiliser le Wifi, même si c'est parfois le seul moyen de participer au bug bounty.

Et ne perdez pas l'idée du Wargame : c'est de prendre du plaisir à faire des challenges !

Si l'article vous a plus n'hésitez pas à le partager sur vos réseaux !

Crédit photos : Designed by Freepik