Livre «Bug Trap. Guide pratique du piratage Web "

imageBonjour les Habitants! «Pour apprendre quelque chose, vous devez appliquer les connaissances dans la pratique. C'est ainsi que nous avons appris le métier de piratage. »- Michael Prince et Jobert Abma, co-fondateurs de HackerOne. The Bug Trap vous présente le piratage au chapeau blanc - la recherche de vulnérabilités de sécurité. Peu importe que vous soyez un novice en cybersécurité cherchant à rendre Internet plus sûr ou un développeur expérimenté cherchant à écrire du code sécurisé, Peter Jaworski vous montrera comment.



Le livre couvre les types d'erreurs courants et les rapports réels de pirates informatiques provenant d'entreprises comme Twitter, Facebook, Google, Uber et Starbucks. À partir de ces rapports, vous comprendrez comment les vulnérabilités fonctionnent et pouvez rendre vos propres applications plus sûres.



Tu vas apprendre:



  • comment Internet fonctionne et apprenez les concepts de base du piratage Web;
  • comment les cybercriminels pénètrent dans les sites Web;
  • comment la falsification de la demande oblige les utilisateurs à soumettre des informations à d'autres sites Web;
  • comment accéder aux données d'un autre utilisateur;
  • par où commencer à rechercher les vulnérabilités;
  • comment amener les sites Web à divulguer des informations à l'aide de fausses demandes.


Pour qui est ce livre?



Le livre est écrit pour les pirates novices. Il peut s'agir de développeurs Web, de concepteurs de sites Web, de parents en



congé de maternité , d'écoliers, de retraités, etc. Bien sûr, une expérience en programmation et une compréhension générale des technologies Web seront utiles, mais ne seront pas un préalable au piratage.



Les compétences en programmation peuvent faciliter la recherche de vulnérabilités dans la logique de programmation. Si vous pouvez vous mettre dans la peau d'un programmeur ou lire son code (si disponible), vos chances de succès seront plus élevées.



De quoi parle ce livre
:



1. . , . : HTTP-, HTTP.



2. Open Redirect. , .



3. HTTP-. HTTP-­ .



4. . , - HTTP-, .



5. HTML . , HTML- - .



6. . HTTP-, , .



7. . , JavaScript- , .



8. . , . .



9. SQL. , .



10. . , .



11. XML-. , , XML- .



12. . .



13. . , , , .



14. . , .



15. . , , .



16. . , , .



17. OAuth. , , .



18. . , .



19. . , , . .



20. . , , .



. . , , -, , ..



. . (-, , ..



14 Capturer un sous-domaine



Le piratage d'un sous-domaine permet à un attaquant de diffuser son propre contenu ou d'intercepter le trafic sur le site de quelqu'un d'autre.



Noms de domaine



Le domaine est l'URL pour accéder au site Web. Il se lie à une adresse IP à l'aide de serveurs DNS. Dans sa structure hiérarchique, les différentes parties sont séparées par des points et l'élément final (à l'extrême droite) est appelé le domaine de premier niveau. Des exemples de tels domaines sont .com, .ca, .info, etc. À gauche se trouve le nom de domaine. Cette partie de la hiérarchie concerne l'accès au site Web. Par exemple, <exemple> .com est un nom de domaine enregistré avec un domaine de premier niveau .com.



Les sous-domaines constituent l'extrême gauche de l'URL et peuvent appartenir à différents sites Web dans le même domaine enregistré. Par exemple, Example a créé un site Web mais a besoin d'une adresse e-mail distincte. Il peut utiliser deux sous-domaines différents avec un contenu différent: www. <exemple> .comet webmail. <exemple> .com.



Les propriétaires de sites peuvent utiliser plusieurs méthodes pour créer des sous-domaines, comme l'ajout de l'un des deux enregistrements à la description du nom de domaine: A ou CNAME. L'enregistrement A lie un nom de site à une ou plusieurs adresses IP. Un enregistrement CNAME unique relie les deux domaines. Seul l'administrateur du site a le droit de créer des enregistrements DNS.



Comment se produit la capture de sous-domaine



Un sous-domaine est considéré comme détourné si l'utilisateur contrôle l'adresse IP et les URL pointées par l'enregistrement A ou l'enregistrement CNAME. Exemple: Après avoir créé une nouvelle application, le développeur l'a hébergée sur Heroku et a créé un enregistrement CNAME pointant vers le sous-domaine du site principal Exemple. Cette situation est devenue incontrôlable si:



  1. Example a enregistré un compte sur la plateforme Heroku sans utiliser SSL.
  2. Heroku Example unicorn457.herokuapp.com.
  3. Example DNS- CNAME, test.<example>.com unicorn457.herokuapp.com.
  4. Example test.<example>.com, Heroku . CNAME .
  5. , CNAME URL- Heroku, unicorn457.heroku.com.
  6. test.<example>.com, URL- Example.


Les conséquences de la reprise d'un sous-domaine dépendent de sa configuration et des paramètres du domaine parent. Par exemple, dans sa présentation Web Hacking Pro Tips # 8 ( www.youtube.com/watch?v=76TIDwaxtyk ), Arne Swinnen décrit comment regrouper les cookies pour ne transférer que les domaines correspondants. Cependant, si vous spécifiez un seul point comme sous-domaine, par exemple,. <exemple> .com, le navigateur enverra le cookie <exemple> .com à n'importe quel sous-domaine de Example que l'utilisateur visite. En contrôlant le test d'adresse. <exemple> .com, un pirate informatique peut voler le cookie <exemple> .com à une victime qui visite le test du sous-domaine détourné. <exemple> .com.



Mais même si les cookies ne sont pas regroupés de cette manière, un attaquant pourrait toujours créer un sous-domaine qui imite le site parent. En plaçant un formulaire de connexion sur ce sous-domaine, il peut forcer les utilisateurs à lui transmettre leurs informations d'identification. Cette vulnérabilité autorise deux types d'attaques courants, mais il existe d'autres méthodes de piratage, telles que l'interception des e-mails.



Pour trouver des vulnérabilités avec le détournement de sous-domaine, analysez les enregistrements DNS du site à l'aide de l'outil KnockPy, qui recherche dans les sous-domaines les messages d'erreur typiques de ces vulnérabilités renvoyées par des services comme S3. KnockPy est livré avec une liste de noms de domaine courants qui valent la peine d'être vérifiés, mais vous pouvez la développer. Une liste similaire peut être trouvée dans le référentiel SecLists GitHub ( https://github.com/danielmiessler/SecLists/).



Capture du sous-domaine Ubiquiti



Difficulté: faible

URL: assets.goubiquiti.com

Source: hackerone.com/reports/109699/

Date de dépôt : 10 janvier 2016 Prime payée

: 500 $



Amazon Simple Storage (ou S3) est un service de stockage de fichiers qui fait partie d'Amazon Services Web (AWS). Un compte dans S3 est un compartiment accessible via une URL AWS commençant par le nom du compte. Amazon utilise l'espace de noms global pour ses URL de compartiment, de sorte que chaque compartiment enregistré est unique. Par exemple, si j'enregistre un bucket <example>, il aura l'URL <example> .s3.amazonaws.com et je serai le propriétaire. Mais un attaquant peut également récupérer n'importe quel compartiment S3 gratuit.



Ubiquiti a créé un enregistrement CNAME pour assets.goubiquiti.com et l'a lié au compartiment S3 uwn-images disponible sur uwn-images.s3.website.us-west-1.amazonaws.com. Les serveurs Amazon étant dispersés dans le monde entier, cette URL contenait des informations sur la région géographique où le bucket était hébergé -. us-west-1 (Californie du Nord).



Ce compartiment n'a pas été enregistré ou Ubiquiti l'a supprimé de son compte AWS sans supprimer l'enregistrement CNAME, mais lors de la visite de assets.goubiquiti.com, le navigateur a essayé de récupérer le contenu de S3. Le pirate a pris ce seau pour lui-même et a signalé la vulnérabilité.



conclusions



Recherchez les enregistrements DNS qui pointent vers des services tiers comme S3. Si de tels enregistrements sont trouvés, vérifiez si l'entreprise a correctement configuré le service. En outre, vous pouvez surveiller en permanence les enregistrements et les services à l'aide d'outils automatisés tels que KnockPy au cas où une entreprise supprime un sous-domaine mais oublie de mettre à jour ses paramètres DNS.



Lien du sous-domaine Scan.me vers Zendesk



Difficulté: faible

URL: support.scan.me

Source: hackerone.com/reports/114134/

Date du rapport : 2 février 2016 Prime payée

: 1 000 $ La



plate-forme Zendesk fournit un support client sur les sous-domaines de sites Web. Par exemple, si Example l'utilisait, ce sous-domaine pourrait ressembler à support. <example> .com.



Comme dans l'exemple précédent, les propriétaires de scan.me ont créé un enregistrement CNAME qui lie support.scan.me à scan.zendesk.com. Le service scan.me a ensuite été acquis par Snapchat. Peu de temps avant la finalisation de l'accord, le sous-domaine support.scan.me a été supprimé de Zendesk, mais son enregistrement CNAME est resté. Après avoir découvert cela, le pirate informatique utilisant l'alias harry_mg a enregistré scan.zendesk.com et y a publié son contenu à l'aide de la plate-forme Zendesk.



conclusions



Au cours du processus d'intégration entre les sociétés mères et enfants, certains sous-domaines peuvent être supprimés. Si les administrateurs oublient de mettre à jour les enregistrements DNS, il existe un risque de piratage de sous-domaine. Étant donné que le sous-domaine peut changer à tout moment, démarrez le suivi continu des informations des enregistrements dès l'annonce de la société.



Récupérer le sous-domaine Windsor sur le site Web Shopify



Difficulté: Faible

URL: windsor.shopify.com

Source: hackerone.com/reports/150374/

Date de dépôt du rapport: 10 juillet 2016 Prime payée

: 500 $



Prendre en charge un sous-domaine n'implique pas toujours l'enregistrement d'un compte auprès d'un service tiers. Le hacker zseano a découvert que Shopify avait créé un enregistrement CNAME pour windsor.shopify.com qui pointait vers aislingofwindsor.com. Il a découvert cela en recherchant tous les sous-domaines Shopify sur crt.sh, qui suit tous les certificats SSL enregistrés et leurs sous-domaines associés. Ces informations sont publiques, car tout certificat SSL doit être émis par une autorité de certification afin que les navigateurs puissent vérifier son authenticité lors de la visite du site. Les sites Web peuvent également enregistrer des certificats dits génériques qui fournissent une protection SSL pour tous leurs sous-domaines (dans ce cas, un astérisque est indiqué sur crt.sh au lieu du sous-domaine).



Lorsqu'un site Web enregistre un certificat générique, crt.sh ne peut pas déterminer le sous-domaine auquel il est destiné, mais affiche son hachage unique. Le service censys.io garde la trace des hachages de certificats et des sous-domaines dans lesquels ils sont utilisés en analysant Internet. Si vous recherchez censys.io pour le hachage de certificat générique, vous trouverez de nouveaux sous-domaines.



En parcourant la liste des sous-domaines sur crt.sh et en visitant chacun d'entre eux, zseano a remarqué que windsor.shopify.com renvoyait une erreur «404 Page not found». Autrement dit, le site était vide ou n'appartenait plus à aislingofwindsor.com. Pour tester la deuxième option, zseano a visité un service d'enregistrement de nom de domaine et a essayé de trouver aislingofwindsor.com. Il s'est avéré que ce domaine pouvait être acheté pour 10 $. Ce faisant, zseano a informé les représentants Shopify de la vulnérabilité de piratage de sous-domaine.



conclusions



Si vous trouvez un sous-domaine qui pointe vers un autre site et renvoie une erreur 404, vérifiez si ce site est disponible pour l'enregistrement. Le service crt.sh peut servir de point de départ pour identifier un sous-domaine. Si vous y trouvez un certificat générique, recherchez son hachage sur censys.io.



Capturer le sous-domaine rapidement sur Snapchat



Difficulté: Moyenne

URL: fastly.sc-cdn.net/takeover.html

Source: hackerone.com/reports/154425/

Date de dépôt du rapport : 27 juillet 2016 Bounty payé

: 3 000 $



Fastly est un réseau de diffusion de contenu. ou CDN). Il stocke des copies du contenu sur des serveurs du monde entier afin qu'ils soient aussi proches que possible des utilisateurs qui les demandent.



Le hacker Ibraitas a informé Snapchat d'une configuration DNS incorrecte pour son domaine sc-cdn.net. L'url fastly.sc-cdn.netil y avait un enregistrement CNAME qui faisait référence au sous-domaine fastly. Ce dernier appartenait à Snapchat, mais n'était pas correctement enregistré. À cette époque, le service Fastly permettait d'enregistrer des sous-domaines personnalisés, à condition que le trafic soit chiffré à l'aide de TLS, pour lequel le certificat générique Fastly commun était utilisé. En cas de configuration incorrecte du sous-domaine utilisateur sur le site, un message d'erreur s'affichait: «Fastly error: unknown domain :. Veuillez vérifier que ce domaine a été ajouté à un service. »Veuillez vérifier que ce domaine a été ajouté au service.



Avant de signaler le problème, Ibraitas a recherché le domaine sc-cdn.net sur censys.io et a confirmé sa propriété à Snapchat en enregistrant son certificat SSL. Il a ensuite configuré le serveur pour recevoir le trafic de cette URL et a montré que le domaine était en fait utilisé.



Snapchat a confirmé qu'un petit pourcentage de visiteurs continuait à utiliser l'ancienne version de leur application, qui demandait du contenu non authentifié de ce sous-domaine. La configuration personnalisée a été mise à jour avec un lien vers une URL différente. En théorie, pendant une courte période, un attaquant pourrait distribuer des fichiers malveillants aux utilisateurs de ce sous-domaine.



conclusions



Recherchez des sites proposant des liens vers des services qui renvoient des messages d'erreur. Si vous trouvez une telle erreur, lisez la documentation du service et comprenez comment elle est utilisée. Essayez ensuite de trouver la configuration incorrecte avec laquelle vous pouvez prendre en charge le sous-domaine.



Capturez un sous-domaine sur le site Web de Legal Robot



Difficulté: Moyenne

URL: api.legalrobot.com

Source: hackerone.com/reports/148770/

Date de soumission : 1er juillet 2016 Prime payée

: 100 $



Même lorsque le sous-domaine d'un service tiers est correctement configuré, le service lui-même peut ne pas être configuré correctement. Frans Rosen a déclaré à Legal Robot que l'enregistrement DNS CNAME du sous-domaine api.legalrobot.com pointait vers Modulus.io, qu'il pouvait détourner.



Après avoir trouvé la page d'erreur, le pirate a dû visiter le service et enregistrer un sous-domaine. Mais dans le cas de api.legalrobot.com, cela n'a pas été couronné de succès: Legal Robot possédait déjà ce site.



Sans abandonner, Rosen a tenté d'enregistrer un sous-domaine générique * .legalrobot.com, qui restait disponible. La configuration du site Modulus a donné la priorité aux sous-domaines génériques sur des entrées plus détaillées, parmi lesquelles api.legalrobot.com. En conséquence, comme le montre la Fig. 14.1, Rosen a pu baliser son propre contenu sur api.legalrobot.com.



image


Notez le contenu publié par Rosen sur la fig. 14.1. Au lieu d'embarrasser le propriétaire du site et de prétendre qu'il avait repris le sous-domaine, il a utilisé une page de texte modeste avec un commentaire HTML pour confirmer que c'était lui qui avait publié le texte.



conclusions



Lorsqu'un site Web utilise des services tiers pour héberger un sous-domaine, il s'appuie sur les mécanismes de sécurité de ces services. N'oubliez pas qu'en cas de capture de sous-domaine réussie, il vaut mieux faire la démo avec soin.



A propos de l'auteur



Peter Jaworski est devenu un hacker, étudiant indépendamment l'expérience de ses prédécesseurs (certains d'entre eux sont mentionnés dans le livre). Il est désormais un chasseur de vulnérabilités réussi, grâce à Salesforce, Twitter, Airbnb, Verizon Media, le département américain de la Défense et d'autres, il est maintenant ingénieur en sécurité des applications chez Shopify.



À propos de l'éditeur scientifique



Tsang Chi Hong , alias FileDescriptor, est un pentester et un chasseur de vulnérabilités. Vit à Hong Kong, écrit des articles sur la sécurité Web sur blog.innerht.ml , s'intéresse aux bandes sonores et à la crypto-monnaie.



»Plus de détails sur le livre peuvent être trouvés sur le site de la maison d'édition

» Table des matières

» Extrait



Pour Habitants un rabais de 25% sur le coupon - Hacking



Lors du paiement de la version papier du livre, un e-book est envoyé à l'e-mail.



All Articles