Annonce

Réduire
Aucune annonce.

La faille CSRF – Exploitation et sécurisation

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • La faille CSRF – Exploitation et sécurisation


    Bienvenue tous le monde !
    Je vais vous montrer aujourd’hui une super faille à vous mettre sous la dent, qui touche le langage PHP: la faille CSRF :smile:
    Mais quisquisique ?

    La faille CSRF (Cross-Site Request Forgeries), est une faille visant à « forcer » un utilisateur à visiter une URL via son navigateur.

    Ça passe pas ? Allez, un exemple !

    Supposons que George possède un site perso, il est donc l’admin, et peut faire tous ce qu’il veut: poster des articles, les supprimer…etc.

    Pour qu’il puisse supprimer un article, George doit passer par cette URL:

    http://lesitedegeorge.com/admin/supprimer.php?id=4

    il suffira donc de donner en paramètre, l’ID de l’article à supprimer…

    Tout se passe bien, avant qu’intervienne Khaled, un vilain Hacker prêt à dévaster le pauvre petit site de George !

    Khaled, qui ne peut PAS supprimer l’article car n’a pas les permissions nécessaires, pourrait simplement envoyer le lien qui servira à supprimer l’article à George, sauf que George n’est pas idiot au point de cliquer sur le lien…

    Notre malin hacker doit donc procéder différemment. Et c’est là que le navigateur de George entre en jeu !

    Revenons à Khaled. Ce qu’il va faire est d’envoyer un message à George, non pas pour lui dire bonjour, mais pour lui coller ça sur le message :

    Code:
    <img src=″http://lesitedegeorge.com/admin/supprimer.php?id=4″ />
    Quand George ouvrira le message, le navigateur – qui lui, ne résiste pas à la tentation – va directement aller sur le lien, afin de charger « l’image » qui en fait n’en est pas une

    Vous captez mieux maintenant :mrgreen: ? Super, on continue !
    En quoi peut-elle être utile pour le hacker

    En voici une bonne question ! On peut exploiter cette faille pour les buts suivants :

    Défasser un site, mettre le bordel dessus, etc…
    Trafiquer un vote ou un sondage
    Avoir des milliers de followers sur Twitter [source ici]

    Etc…
    Comment sécuriser ça ? Utilisez un token !

    Je vais juste vous expliquer le principe du token (ou jeton si vous préférez), sinon l’article sera trop lent pour vos âmes fragiles ::

    Donc, le but est de créer un jeton, qui durera que pendant UNE session, et sera valide uniquement pour UN SEUL utilisateur. c’est pas super ça ?

    Voici quelques articles qui détaillent ce procédé:

    Cross-site request forgeries – Wikipedia
    Sécurisation des failles CSRF – site du zero
    Django | Cross-site request forgeries protection

    Enjoyez-moi cet article bien fort, et rendez-vous pour d’autres billets tout aussi passionnant

    PS: Si vous avez une faille web que vous regardez avec des yeux comme ça: O.O, laissez un commentaire, je me ferais un plaisir de faire un article :razz:
    Source: http://www.geeknoise.com/
    sigpic

  • #2
    J'aime bien
    " Une teuf sans drogue c'est comme une levrette sans fessé, c'est quand même rare. "

    †|

    Commentaire


    • #3
      Bonsoir à tous je suis tout nouveau et justement je m'intérresse à cette faille car je l'ai détecté sur un site (en fait je m'acharne dessus j'ai jamais VRAIMENT réussit a hacké un site) je ne compte pas L'injection sql de ma vie et je ne connait pas encore le html ni le php le java non plus d'ailleurs alors j'ai essayé en passant toute ma journée à ça d'injecté un bon code grace a une extension firefox je sais pas si ça a marché puisqu'il m'a retourné un code en hexadécimale que j'ai pas pu décodé malgrès toutes mes applications alors je sais que je devrais pas mais en fait quelqu'un pourrait me donner un script me permettant de récupérer le pass administrateur perso j'ai mis quelque chose comme<body> <button id="action">Lancer la requête HTTP GET</button><br />
      methode "POST" <imput> type name=xxxxx value=password <imput> type value= getpassword action submit password quelque chose comme ça le problème est que je n'y connais rien dans le java script le php et l'html j'ai juste les base du C vu que j'ai commencé par celui là après j'avais vu un script mais il permettait de changer directement tout les mots de pass par le même et je tient pas à foutre le site en l'air et à ce que l'admin passe ces journée àà tout remmettre en ordre je fais ça pour retrouver la sensation que j'avais éprouvé en me retrouvant en admin sur un site avec une injection sql (bien que si je suis assisté ça ne me fera ptet pas la même impression il est certain que je n'aurais aucun mérite) après je pense faire le tour du site voir un peu ce que l'admin peut voir son pannel quoi et après comme je lui ai déjà signalé la faille qu'il avait (mais je viens d'apprendre qu'il revenait le 2 novembre en regardant le code source) je lui dirait comment s'en prémunir vu que ça je sais (c'est plus simple de trouver un script pour sécuriser son site que pour y détourner sa sécurité enfin voilà donc (si quelqu'un est d'accord pour me donner de l'aide je suis preneur parce que malheureusement je ne connais rien aux langage de programmation requis pour exploiter cette faille bonne soirée à tous ^^

      Commentaire


      • #4
        il me semble qu'il y a pas mal de liens dans le post de Lawyor pour que tu puisses t'y mettre !

        sinon j'ai beaucoup l'impression que tu te mélange dans les langages web.. et ce n'est pas 'imput' mais input (sinon ça ne risque pas de marcher^^).

        tu as également un post de continuation par ici

        sinon, MP lawyor, il te répondras sûrement, mais essaye de le faire par toi-même
        sigpic

        Cyprium Download Link

        Plus j'étudie plus j'me rends compte que je n'sais rien.

        †|

        Commentaire


        • #5
          Envoyé par rayliegh Voir le message
          Bonsoir à tous je suis tout nouveau et justement je m'intérresse à cette faille car je l'ai détecté sur un site (en fait je m'acharne dessus j'ai jamais VRAIMENT réussit a hacké un site) je ne compte pas L'injection sql de ma vie et je ne connait pas encore le html ni le php le java non plus d'ailleurs alors j'ai essayé en passant toute ma journée à ça d'injecté un bon code grace a une extension firefox je sais pas si ça a marché puisqu'il m'a retourné un code en hexadécimale que j'ai pas pu décodé malgrès toutes mes applications alors je sais que je devrais pas mais en fait quelqu'un pourrait me donner un script me permettant de récupérer le pass administrateur perso j'ai mis quelque chose comme<body> <button id="action">Lancer la requête HTTP GET</button><br />
          methode "POST" <imput> type name=xxxxx value=password <imput> type value= getpassword action submit password quelque chose comme ça le problème est que je n'y connais rien dans le java script le php et l'html j'ai juste les base du C vu que j'ai commencé par celui là après j'avais vu un script mais il permettait de changer directement tout les mots de pass par le même et je tient pas à foutre le site en l'air et à ce que l'admin passe ces journée àà tout remmettre en ordre je fais ça pour retrouver la sensation que j'avais éprouvé en me retrouvant en admin sur un site avec une injection sql (bien que si je suis assisté ça ne me fera ptet pas la même impression il est certain que je n'aurais aucun mérite) après je pense faire le tour du site voir un peu ce que l'admin peut voir son pannel quoi et après comme je lui ai déjà signalé la faille qu'il avait (mais je viens d'apprendre qu'il revenait le 2 novembre en regardant le code source) je lui dirait comment s'en prémunir vu que ça je sais (c'est plus simple de trouver un script pour sécuriser son site que pour y détourner sa sécurité enfin voilà donc (si quelqu'un est d'accord pour me donner de l'aide je suis preneur parce que malheureusement je ne connais rien aux langage de programmation requis pour exploiter cette faille bonne soirée à tous ^^
          C'est officiellement une des plus longues phrases qui m'ait été donné de lire dans toute ma vie, hors arrêts de cassation - et encore. Je ne fais rien parce que Saka n'a rien dit, mais ce que tu fais m'a l'air tout bonnement illégal, et tu m'a l'air sous-compétent pour te lancer là dedans sur un site qui ne t'appartient pas (si c'avait été le tien, tu peux bien le niquer, on s'en tape. Là, avec ton manque de connaissance, tu risques de le baiser, même si ce n'est pas ton intention).
          Tu n'es bien sur pas présenté, et illisible, encore une fois, si c'était moi, t'aurait pris un bon avertissement avec suppression de post A bon entendeur

          Commentaire


          • #6
            J'aime quand tu sors ton martinet mon petit comaxounet^^

            J'avoue la paquet à piqué aux yeux, mais je préfère encore cela à un texte aéré blindé de fautes...

            Donc bon, moi la demande ne me parait pas + illégale que cela puisqu'il est apparemment en relation avec l'admin.

            Par contre, 2 points que comax à eu raison de souligner :

            1. On sent que tu n'y connais pas grand chose et tu RISQUES de faire des bêtises... Préviens l'admin de faire une back-up au préalable, au cas-où.
            2. Si tu souhaites poster sur le forum, présente-toi. C'est la moindre des politesses.

            Bref, si tu souhaites de la doc sur la CSRF, de l'aide quant à la compréhension de ce type de faille, pas de problème ; cependant, il est vrai qu'il serait bienvenu de sentir que tu cherches à la comprendre, que tu t'es impliqué dans la recherche avant de poser une question ciblée.

            Note : connais-tu le bbcode ? Il y a la balise [code] notamment qui pourraient te servir
            sigpic

            Cyprium Download Link

            Plus j'étudie plus j'me rends compte que je n'sais rien.

            †|

            Commentaire


            • #7
              Revenons à Khaled. Ce qu’il va faire est d’envoyer un message à George, non pas pour lui dire bonjour, mais pour lui coller ça sur le message :

              Code:

              <img src=″http://lesitedegeorge.com/admin/supprimer.php?id=4″ />
              Quelle apparence a le message ?
              Dernière modification par atreide, 29 octobre 2012, 19h55.

              Commentaire


              • #8
                Peu importe ! Un message, comme celui que je t'envoie, avec, quelque-part, un lien (invisible à l'oeil nu) vers l'url indiqué (désiré par l'attaquant).
                sigpic

                Cyprium Download Link

                Plus j'étudie plus j'me rends compte que je n'sais rien.

                †|

                Commentaire


                • #9
                  Bonjour merci pour vos réponse je suis désolé de ne pas m'être présenté jusqu'à maintenant ensuite il est vrai que je manque de compétence mais aussi et surtout de connaissances en fait mais je ne le nie pas...Pour le fait que ce soit illégal par contre je suis pas vraiment d'accord je pense pas que cela soit plus illégal que de supprimer un site d'autant plus que j'avais pas l'intention de le "foutre en l'air" et j'ai déjà prévenu l'admin alors que je n'ais encore rien fais (heureusement me direz vous) en réalité j'avais même pas l'intention d'y changer quelque chose mais après il est possible que mon manque incroyable de connaissance soit la cause d'une catastrophe. Il m apparais clairement maintenant que l'idée de m'inscrire sur le site n'était pas forcément la meilleur idée que je pouvais avoir et encore moins de poster ce message. Néanmoins je précise quand même que j'ai été franc depuis le début je ne m'invente pas des compétences que je n'ais pas (de toute manière cela se verrait) sur ce désolé de vous avoir fais perdre votre temps avec mon post inutile bonne journée à tous.

                  Ps: pour ce qui est de cette faille je me suis renseigné avant et je comprend le principe c'est la façon de l'exploiter que je ne connais pas vu que je connais que les bases du langage C ce qui ne m'aide pas vraiment...
                  Dernière modification par rayliegh, 30 octobre 2012, 13h37.

                  Commentaire


                  • #10
                    Sauf erreur de ma part, tu n'as aucunement besoin de connaitre le C. Plutôt PHP, SQL et HTML.
                    Ne le prend pas comme ça, tu as parfaitement le droit de ne pas avoir de grandes connaissances et de vouloir tester. Seulement, ça n'empêche pas de faire un post lisible et de se présenter. Simple courtoisie élémentaire.

                    Commentaire


                    • #11
                      Envoyé par SAKAROV Voir le message
                      Peu importe ! Un message, comme celui que je t'envoie, avec, quelque-part, un lien (invisible à l'oeil nu) vers l'url indiqué (désiré par l'attaquant).
                      Ok...d'ou la question que les client de messagerie posent du genre : "Les images de [email protected] n'ont pas été chargées par sécurité [...] ?

                      Commentaire


                      • #12
                        Voilà. T'as tout compris. Enfin... là tu parles du cas où tu envoies le petit cadeau par e-mail, mais y'a bien évidemment pas que les mails. La CSRF est plutôt exploitée via le navigateur. Mais bon... c'est le même principe, oui.
                        sigpic

                        Cyprium Download Link

                        Plus j'étudie plus j'me rends compte que je n'sais rien.

                        †|

                        Commentaire


                        • #13
                          Salut tout le monde , ça fait un petit moment que je ne suis pas venu ici. j’espère que toute l'équipe va bien .
                          enfin bref pour cette faille, elle est super-simple donc je ne vois pas ce que je peux dire de plus que ce qu'est dans l'article...
                          Comax a raison , tu n'as pas besoin de connaitre les langages pour faire ces failles (mais moi je te conseille de connaitre PHP et HTML c'est toujours un petit +) dis-toi que les failles connues, ta juste à les répéter pour les savoir par coeur après un bon HACKER cherche toujours à savoir pourquoi ? comment ? mais si tu veux t'améliorer dans ce domaine c'est pas ici , ce forum est 100% white
                          donc bon courage
                          sigpic

                          Commentaire


                          • #14
                            Bonsoir désolé mais j'ai du mal m'exprimer je ne tiens pas à évoluer dans un milieu de z (depuis que j'ai l'âge de 14 ans le hack me passionné et une fois je me suis amusé avec un trojan à scanner des ip vulnérable j'ai fait le tour du pc vite fait ans rechercher de password rien je voulais juste voir les possibilités qui s'offraient à moi, ensuite j'ai fais joujou avec le lecteur cd la souris et après 5 min j'ai affiché un écran noir pour lui dire qu'il ou elle était infectée.

                            Et depuis je n'y ai plus jamais retouché pour la simple est bonne raison que je trouvais ça trop stupide d'appuyer simplement sur un bouton (même si à la base j'avais à peu près compris le principe) mais c'était le fait de pirater un pc en cliquant sur un bouton à l'aide d'un logiciel et qui m'en a dégouté.

                            En fait je me suis dis que je ne valais pas mieux qu'un pauvre z, que je n'avais aucune compétence ni aucune connaissance à tel point que j'étais obligé de passer par un logiciel pour arriver à mes fins.

                            Pourquoi je dis ça? simplement parce que je ne cherche pas à devenir un pirate informatique ou pire encore un z même si pour le moment avec mes connaissances actuelle je m'en rapproche beaucoup mais pas au niveau de l'état d'esprit.

                            Et sinon je ne suis ni white ni black je ne suis rien du tout pour le moment je cherche à apprendre bien que j'avoue que je suis en effet impatient.

                            C'est un peu comme si je voulais tout savoir tout de suite mais c'est impossible alors pour le moment je commence à apprendre les bases avec le temps dont je dispose, tout en sachant pertinemment que je n'aurais jamais le niveau d'un vrai hacker.

                            C'est impossible vu que ce n'est pas mon domaine sans compter que quand j'aurais un boulot j'aurais encore moins de temps donc voilà bref j'arrête là je suis pas la pour raconter ma vie mais je dispose au moins de deux choses commune au hackers (je pense): l'envie d'apprendre et pas que sur le domaine du hacking mais de manière générale ,je suis curieux c'est clair et j'ai un minimum d'imagination, sans parler du code morale.

                            Sinon en effet cette faille est simple (surtout quand on connait les langage de programmation) et plutôt répandue de ce que j'ai pu voir, du moins les sites sur lesquels je suis inscrit sont pour la plupart vulnérable à celle là, et pour finir je ne vois pas l'intérêt de répéter sans cesse la même chose encore moins si c'est pour l'apprendre par cœur mais bon (sauf pour la chimie orga à la limite )

                            Sur ce je te souhaite une bonne soirée ^^

                            Cordialement rayliegh.

                            Commentaire


                            • #15
                              Juste pour préciser un peu, la faille CSRF peut être exploitée en l'état. Mais si le site n'est pas vulnérable, une faille XSS peut permettre de bypasser la protection en récupérant le token et en effectuant directement la requête en AJAX.

                              Commentaire

                              Chargement...
                              X