Sécurité applicative – Lab2 SSDLC

Cybersecurity · lab

Voir tous les documents en sécurité informatique

Sécurité applicative

Lab2 SSDLC

MOHAMED SALAH Kabtni

MOHAMED Trabelsi

Hanéne Lahbib

M2 MP2L DR. NIHEL BEN YOUSSEF

Enoncé :

Installer et tester l'outil SAST flawfinder

Veuillez travailler en binôme ou trinôme et non en mônome.

-Installer et tester OWASP WEBGOAT et DVWA (avec docker comme recommandation)

- Créer une page d'authentification PHP/Mysql simple vulnerable (login/pass) avec une table mysql à deux colonnes login/pass et le contenu de votre choix,la réponse de l'application à des login et mot de passe valides est d'extraire la ligne correspondante et l'afficher en format json (par exemple: bonjour [{lina},{linapass}]

- Pentester manuellement la page d'authentification en utilisant SQL injection Tautology (or 1=1) et en détectant e nombre de colonne de la table avec Blind sql injection boolean (order by)

- Installer OWASP Sonarqube et tester la sécurité de votre propre code php.

Travail :

Installer et tester l'outil SAST flawfinder

FlawFinder est un outil simple, efficace et rapide qui analyse votre code source C/C++ à la recherche d'appels à des fonctions de bibliothèque vulnérables typiques. Il a été développé par David Wheeler. un expert en sécurité renommé. Il est exécuté en ligne de commande. Son résultat peut facilement être personnalisé.

Etapes d’installation :

Publicité

1. -Telecharger FlawFinder à partir du site : https://dwheeler.com/flawfinder/

2. Telecharger et installer anaconda python distrubtion version 3.7 à partir du site

https://www.anaconda.com/products/individual

3. Ouvrir anaconda prompt

4. Installer flawfinder avec la commande :

pip install flawfinder

5. On a telechargé un code en c vulnérable pour le testé 6. Ouvrir le code c dans Flawfinder et tester a laide da la commande :

Python flawfinder.py chemin_de_fichier.c

7. Analyser le code static

Dans notre cas flawfinder a detecté 3 erreurs ( en jaune dans la capture si dessus) se sont des errurs logiques ont causé une menaces sérieuse pour le fichier dans le futur.

Installer et tester OWASP WEBGOAT et DVWA avec docker

WebGoat est une application délibérément non sécurisée qui permet aux développeurs

intéressés de tester les vulnérabilités couramment trouvées dans les applications basées sur

Java qui utilisent des composants open source courants et populaires.

On a utilisé

la dernière version officielle de

l'image WebGoat Docker 8.0 depuis

Publicité

hub.docker.com

On a démarré WebGoat en tant que conteneur Docker

On a créé un compte afin d’accédé à webgoat depuis localhost :8080/WebGoat/login

Puis on a suivi la lesson de SQL Injection afin de comprendre comment on peut manipuler SQL

pour effectuer des tâches qui n'étaient pas l'intention initiale du développeur

On a récupéré le département de l'employé Bob Franco avec la commande :

select department from employees where last_name='Franco'

Après, on a changé le département de Tobi Barnett en « Sales »

UPDATE employees SET department='Sales' WHERE last_name='Barnett'

Après on a modifié le schéma en ajoutant la colonne "phone" (varchar(20)) à la table

"employees"

ALTER TABLE employees ADD phone varchar(20)

Après on a accordé des droits à la table grant_rights à l'utilisateur non autorisé

GRANT ALTER TABLE ON grant_rights TO unauthorized_user;

Employee Name : Smith

Authentication TAN : 3SL99A' or 1=1; update employees set salary=99999999 where

last_name='Smith';--

Publicité

Action contains: ';drop table access_log;--

Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL qui est sacrément

vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs

compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web

à mieux comprendre les processus de sécurisation des applications Web et d'aider les

enseignants/étudiants à enseigner/apprendre la sécurité des applications Web dans un

environnement de classe.

On a execute la commande : docker pull vulnerables/web-dvwa

Puis pour exécuter cette image on a lancé la commande :

docker run --rm -it -p 80:80 vulnerables/web-dvwa

Puis on doit se connecter à localhost/setup.php afin de configurer notre environnement pour

accéder à la page d’authentification

On a ajouté ‘ après id=1 dans

http://localhost/vulnerabilities/sqli/?id=1’%27&Submit=Submit#

localhost/vulnerabilities/sqli/?id=1 ‘order by 1,2--+&Submit=Submit#