📚 Supports de cours

😎 Personnaliser les slides

en entrant votre nom d'utilisateur uca ici , tous les références à la VM perso (la vulnérable) dans les slides ci-après, seront personnalisées avec le fqdn de votre VM, vous permettant d'appliquer les attaques directement depuis les slides

💡 Version PDF

  • Tous les slides sont fait avec reveal.js
    • ils sont exportables en pdf en ajoutant ?print-pdf# à l'url (à coller juste après le .html) et en passant par l'impression dans un fichier du navigateur chrome ou (mieux) chromium

💪 Contributions

  • n'hésitez pas à me signaler des liens morts et / ou à en proposer de nouveaux via une issue ou directement via un PR/MR

Contexte

Vulnérabilités communes


📂 présentation des VMs

  • Kali est notre VM offensive, son OS est Kali 2 et possède de nombreux outils pour la sécurité informatique.

    • C'est à partir de cette VM que vous suivrez le cours et lancerez toutes les attaques
    • nom d'utilisateur: kali
    • mot de passe: kali
  • DVWA est la VM qui héberge l'application vulnérable DVWA (Damn Vulnerable Web Application).

    • C'est sur cette VM que nous allons tester toutes nos attaques
    • nom d'utilisateur: kali
    • mot de passe: kali
    • nom d'utilisateur DVWA: admin
    • mot de passe DVWA: password
  • debian héberge la vulnérabilité drupalgeddon présentée en fin de cycle de cours

    • nom d'utilisateur: kali
    • mot de passe: kali
  • proxy héberge la vulnérabilité heratbleed présenté en début de cours

    • nom d'utilisateur: kali
    • mot de passe: kali
  • debian11 est une fresh install de debian 11, qui vous permettra d'installer DVWA

    • nom d'utilisateur: kali
    • mot de passe: kali
    • installer DVWA en une ligne wget -O - https://shorturl.at/xE2qF | bash
  • N.B. https://perso.limos.fr/mazenod/slides/1337/exploits contient des scripts malicieux que vous utiliserez également pour certaines attaques

Vous trouverez ci après comment redéployer tout cela sur n'importe quelle machine


💻 Recréer l'environnement de cours dans VirtualBox

Créer un réseau NAT

vboxmanage  natnetwork add --netname natwebsec --network "172.16.76.0/24" --enable --dhcp off

Télécharger les images OVA

voir https://owncloud.isima.fr/s/Gf2KNZKVWQVxEpa

  • kali.ova
  • dvwa.ova
  • debian.ova
  • proxy.ova
  • debian11

📢 FYI

il y a environ 7 Go d'images, n'hésitez pas à vous les faire passer via des clés USB

Importer les images OVA

vboxmanage import kali.ova
vboxmanage import dvwa.ova
vboxmanage import debian.ova
vboxmanage import proxy.ova
vboxmanage import debian11.ova

Configurer le réseau pour chaque vm

vboxmanage modifyvm kali --nic1 natnetwork --nat-network1 natwebsec
vboxmanage modifyvm dvwa --nic1 natnetwork --nat-network1 natwebsec
vboxmanage modifyvm debian --nic1 natnetwork --nat-network1 natwebsec
vboxmanage modifyvm proxy --nic1 natnetwork --nat-network1 natwebsec
vboxmanage modifyvm debian11 --nic1 natnetwork --nat-network1 natwebsec

réseau vm

(fix) En cas de réseau injoignable sur proxy

si

ping 172.16.76.145 # ping sur kali

renvoie

connect: Network is unreachable

vérifier le numéro de votre interface réseau

student@proxy:~$ ifconfig -a

eth2      Link encap:Ethernet  HWaddr 08:00:27:ae:b5:20
          inet adr:172.16.76.143  Bcast:172.16.76.255  Masque:255.255.255.0
          adr inet6: fe80::a00:27ff:feae:b520/64 Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Packets reçus:24 erreurs:0 :0 overruns:0 frame:0
          TX packets:32 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000
          Octets reçus:4789 (4.7 KB) Octets transmis:4679 (4.6 KB)

lo        Link encap:Boucle locale
          inet adr:127.0.0.1  Masque:255.0.0.0
          adr inet6: ::1/128 Scope:Hôte
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          Packets reçus:54 erreurs:0 :0 overruns:0 frame:0
          TX packets:54 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:0
          Octets reçus:4076 (4.0 KB) Octets transmis:4076 (4.0 KB)

par exemple ce numéro peut être eth2 (comme ci dessus) au lieu de eth0

il faut alors modifier le fichier /etc/network/interfaces en fonction

student@proxy:~$ sudo vi /etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth2
iface eth2 inet static
        address 172.16.76.143
        netmask 255.255.255.0
        gateway 172.16.76.1

puis activer l'interface réseau

student@proxy:~$ sudo ifup eth2

réessayer

ping 172.16.76.145 # ping sur kali

Ce bug est dû à la numérotation fantaisiste d'Ubuntu des interfaces réseau ...

Liste des vms / noms de domaine (/etc/hosts)

# SecLab

## proxy
172.16.76.143 proxy secured heart.bleed fo.ol #proxied version of dum.my

# debian
172.16.76.144 debian good.one go.od targ.et mutillid.ae d.oc dum.my spip sp.ip
172.16.76.144 drup.al hackable-drupal.com drupal wordpre.ss bl.og wp wordpress

# kali
172.16.76.145 kali bad.guy hack.er 1337.net

# dvwa
172.16.76.146 dvwa dvwa.com dv.wa

# debian11
172.16.76.147 debian11

# host
172.16.76.1   us.er

🎓 Evaluation

📝 Examen écrit en fin de session (10 points)

  • Durée: 1h00
  • Support: interdit

📢 Présentation de groupe au début de chaque cours (8 points)

  • Chaque présentation durera 15 minutes et devra présenter l'une des catgories de vulnérabilité du OWASP Top 10:2021 c'est à dire

    • présentation des risques
    • proposition et démonstration d'un scénrio d'attaque
      • DVWA est interdit car le cours le traite déjà
    • proposition de mesure à prendre
  • Après la présentation vous m'enverrez par mail

    • le support de présentation (ppt, url, ...)
    • l'url de l'exploit et / ou le code nécessaire à l'exploitation (zip / ou repo git)

Calendrier FISE

Calendrier FISA

🔨 Note technique (2 points)

  • l'url http://vm-<username>.local.isima.fr devra renvoyer un code HTTP 200
  • l'url http://vm-<username>.local.isima.fr/websec devra renvoyer un code HTTP 401
  • l'url http://kali:kali@vm-<username>.local.isima.fr/websec devra renvoyer un code HTTP 200

vérifiez à tout moment que vous aurez le maximum de points avec les websec-checker

Evaluation du cours

Vous avez aimé ou vous avez détesté ce cours ... donnez moi votre avis et aidez moi à l'améliorer (en tout anonymat)

See also