Vous êtes sur la page 1sur 3

Projet 2NPN

Ide gnrale :
Il faudra russir un premier chall forensic mlangeant overflow +
crypto rsa pour pouvoir s'inscrire.
Les premires infos seront disponibles sur la page d'accueil du site.
Les nnoncs des challs + ressources seronts stocks sur un GitHub.
Ce sera l'interface entre les users et les admins.
Le flag d'un chall donnera le password SSH du chall suivant.
A/ Architecture systme
1/ Liste des VM
hvisor
fwall
register
chall_xxx_y
web
2/ Dtail des VM
2.1/ Paramtres communs (sauf crasement)
Toutes les VM seront sous Debian 8.x (jessie)
Pour ce qui est de la mthode d'authentification ssh, il faudra en
discuter. Root Login Denied.
2.2/ HVISOR
C'est la VM fournie par l'hbergeur, elle nous permettra de grer
toutes les VM
Solution : Qemu / KVM
Elaboration d'un script bash permettant de gnrer un templates xml
prennant en argument les specs physique (disque, ram etc ..)
Mise en place d'un serveur FAI pour dployer une installation vierge,
scurise et administrable
Mise en place d'un DHCP fonctionnant seulement sur rservation par
adresse mac pour l'installation d'une nouvelle machine
Accs hvisor via cl SSH dsa 2048 bits
2.3/ FWALL
C'est le firewall, le routeur entre tous les rseau, mais aussi la porte
d'entre pour les admins
Installation d'un serveur OpenVpn avec authentification via certificat
p12
2.4/ REGISTER
C'est la VM qui permettra aux utilisateurs de s'enregistrer suite la
reussite d'un challenge bien costaud.
Le scnario du chall n'est pas encore dfini. Cependant, ils devront
terme dposer un fichier respectant le format suivant : email/pseudo
dans le dossier ftp local.
Installation d'un serveur ftp pour la rcuperation des users.

Prvoir un fail2ban
Le serveur ssh sera en authentification pam
2.5/ CHALL_xxx_y
Ce seront les VM de chall
xxx reprsente le trigramme de la discipline informatique du challenge
y reprsente le numro de challenge
ssh en authentification pam
Cration d'un utilisateur user_xxx_y / password flag du challenge
prcdent (Vortex :D)
Restriction des droits pour l'user maximum et autorisations selon le
challenge
2.6/ WEB
Installation de NGINX + php-fpm
Installation d'un git permettant de grer le dvelloppement accessible
seulement en VPN
Installation d'un client postfix
2.7/ SQL
Comme sont nom l'indique ca sera notre base de donnes.
B/ Architecture rseau
1/ Liste des rseaux
/32 PUB : rseau publique : vlan1
/30 REG : rseau du challenge d'enregistrement : vlan666
/16 CHL : rseau des VM de chall : vlan100
/24 WEB : rseau des VM web : vlan 200
/30 INSTALL : rseau permettant l'installation des VM par FAI : vlan 999
2/ Iptables
Il est vident que par dfaut tout est drop.
e saute des tapes mais rien n'ira directement de HVISOR vers les VM
internes. Tout sera nat vers FWALL au pralable.
Hvisor input ssh -p 122 ACCEPT
Hvisor fwall ssh -p 10001 DNAT fwall ACCEPT
Hvisor chall_xxx_y ssh -p 2000y DNAT chall_xxx_y
Hvisor register ssh -p 2222 DNAT register
Hvisor web http DNAT Web
WEB git souce lan_vpn ACCEPT
SQL sql 3306 source WEB ACCEPT
FWALL Forward dhcp destination INSTALL
REGISTER ftp source WEB ACCEPT
Je ne vois pas d'autres rgles pour le moment sauf le vital : dns , ntp etc ..
C/ Programmation
C'est lger ...
1/ Inscriptions des users
Sur WEB : Une tache cron va rcuperer en ftp les users qui ont russi le chall.
On parse les fichiers de manire stricte , on cre les comptes dans la base de
donnes et on envoi les infos par mail l'utilisateur, si le nom de l'utilisateur
existe, on le sale avec du random on gnre le password nous-mme.
2/ Connexion des user

On cre une page de connexion sur du ssl o l'utilisateur devra se connecter


avant de pouvoir avoir un accs SSH. Je ne connais pas trop la solution
utilise par Root-me, mais j'aimerais la mme chose.

3/ Classement
Le classement tient sur une seule page, aucun input prvu pour les visiteurs
4/ Proposition de challenges
Ralisation d'un formulaire la N-PN o nimporte qui pourra envoyer son
ide (mme les guests).
Le formulaire ne sera pas stock dans la BDD il sera envoy par mail un
compte gmail accessible par les admins (ca nous evitera de devoir toucher
la BDD pour faire le menage).