Title: ZZ2 F5 WebSec
Date: 2017-11-20 10:55
Category: <i class='fa fa-graduation-cap' aria-hidden='true'></i> &Eacute;tudiants
Tags: cours

[TOC]

## Plan du cours

* Introduction

    * [Contexte](https://doc.m4z3.me/_/1337/contexte.htm)
    * [Cadre juridique](https://doc.m4z3.me/_/1337/droit.htm)

* Architecture

    * [HTTP](https://doc.m4z3.me/_/1337/HTTP.htm)
    * [TLS/SSL](https://doc.m4z3.me/_/1337/TLS.htm)

* Pentesting

    * [Collecter](https://doc.m4z3.me/_/1337/collecter.htm)
    * [Détecter](https://doc.m4z3.me/_/1337/detecter.htm)

* Exploit

    * [Heartbleed](https://doc.m4z3.me/_/1337/heartbleed.htm)

* Mécanisme

    * [Authentification](https://doc.m4z3.me/_/1337/AUTH.htm)

* Vulnérabilités communes

    * [Command execution](https://doc.m4z3.me/_/1337/CMDi.htm)

* Exploit

    * [Shellshock](https://doc.m4z3.me/_/1337/shellshock.htm)
    * [Upload](https://doc.m4z3.me/_/1337/upload.htm)
    * [LFI_RFI](https://doc.m4z3.me/_/1337/LFI_RFI.htm)
    * [XSS](https://doc.m4z3.me/_/1337/XSS.htm)
    * [CSRF](https://doc.m4z3.me/_/1337/CSRF.htm)
  * [SQLi](https://doc.m4z3.me/_/1337/SQLi.htm)

* Exploit

    * [Drupalgeddon](https://doc.m4z3.me/_/1337/drupalgeddon.htm)

* Se protéger

    * [Top10](https://doc.m4z3.me/_/1337/top10.htm)
    * [anticiper](https://doc.m4z3.me/_/1337/anticiper.htm)
    * [réagir](https://doc.m4z3.me/_/gdi/cnrs.htm#/cover)


## Recréer l'environnement de cours dans VirtualBox

* testé avec [VirtualBox 5.1.30](https://www.virtualbox.org/wiki/Download_Old_Builds_5_1)
  * et les [extensions pack associés](http://download.virtualbox.org/virtualbox/5.1.30/Oracle_VM_VirtualBox_Extension_Pack-5.1.30-118389.vbox-extpack)

```
VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.1.30-118389.vbox-extpack
```

sous windows vous devrez peut être utiliser le path entier de vboxmanage

```
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"
```

### Créer un réseau NAT

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

### Télécharger les images OVA

voir [https://drive.mesocentre.uca.fr/d/69e5535b0b88425396d7/](https://drive.mesocentre.uca.fr/d/69e5535b0b88425396d7/)

```bash
wget https://drive.mesocentre.uca.fr/d/69e5535b0b88425396d7/files/?p=/debian.ova
wget https://drive.mesocentre.uca.fr/d/69e5535b0b88425396d7/files/?p=/proxy.ova
wget https://drive.mesocentre.uca.fr/d/69e5535b0b88425396d7/files/?p=/kali.ova
wget https://drive.mesocentre.uca.fr/d/69e5535b0b88425396d7/files/?p=/thenetwork.ova
```
<div class="panel panel-warning">
  <div class="panel-heading">
    <h3 class="panel-title">FYI</h3>
  </div>
  <div class="panel-body">
    il y a environ 7 Go d'images, n'hésitez pas à vous les faire passer via des clés USB
  </div>
</div>

### Importer les images OVA

```bash
vboxmanage import debian.ova
vboxmanage import proxy.ova
vboxmanage import kali.ova
vboxmanage import thenetwork.ova
```

### (optionnel) Mettre en place le port-forwarding sur debian

```bash
vboxmanage natnetwork modify --netname natwebsec --port-forward-4 "ssh:tcp:[127.0.0.1]:1337:[172.16.76.144]:22"
```

### (optionnel) Se connecter en ssh

```bash
ssh -p 1337 student@127.0.0.1
```

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

si

```bash
ping 172.16.76.145 # ping sur kali
```

renvoie

```bash
connect: Network is unreachable
```

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

```bash
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

```bash
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

```bash
student@proxy:~$ sudo ifup eth2
```

réessayer

```bash
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

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

172.16.76.144 good.one go.od targ.et                              
172.16.76.144 mutillid.ae                                         
172.16.76.144 dvwa.com dv.wa                                      
172.16.76.144 d.oc                                                
172.16.76.144 dum.my                                              
172.16.76.144 drup.al hackable-drupal.com drupal                  
172.16.76.144 wordpre.ss bl.og wp wordpress                       
172.16.76.144 spip sp.ip                                          
172.16.76.145 bad.guy hack.er 1337.net                            

172.16.76.142 thenetwork                                          

172.16.76.1   us.er   
```

## Evaluation

* Examen écrit en fin de session (/10)

* Un site web vulnérable (/10)

    * [Enoncé](https://gist.github.com/mazenovi/acf7d298f3feaded9f465b45307b48f8)

    * données
        * fonctionnalités
        * code        

    * rendu
        * rapport sur 3 recommandations à formuler

* Rendu le 26/03/2018 à 23h59 dernier délais

    * [vincent.mazenod@isima.fr](mailto:vincent.mazenod@isima.fr)

      * ```[TP websec]``` dans le sujet du mail ... sinon je vous perds ;)

## See also

* [faire son propre seclab](https://blog.mazenod.fr/faire-son-propre-seclab.html)