BBP vs VDP • Publique vs Privé • “Scope” • Règlements • Obtenir des points sur Bugcrowd • Comment commencer? • Prérequis • Ressources • Comment avoir du succès? • Background sur mon aventure • Travailler fort et apprendre • Ma méthodologie • Évolution • Bug Bounty vs. Tests d’intrusion • Live Hacking Event • Questions/Discussion
permettre aux entreprise d’offrir des récompenses (bounty) en échanges de vulnérabilités. • Récompense peut être un bounty (USD) , swag (t-shirt, stickers, etc), Hall of Fame, points • Bug Bounty Program (BBP) vs Vulnerability Disclosure Program (VDP) • BBP offre de l’argent (bounty) • VDP n’offre pas d’argent • Une entreprise peut gérer son propre programme • Une entreprise peut utiliser un tiers parti • Un BBP peut être publique (ouvert à tous) ou privé (invitation seulement)
sécurité; a un bon processus de S-SDLC en place • Offre normalement de plus gros bounty (10-15k pour des bugs critiques) • Plus de compétition (ouvert à tous) • Plus difficile • BBP Privé • Pour des entreprises qui commencent ou veulent expérimenter le BB • Offre normalement de plus petit bounty (1.5-5k pour des bugs critiques) • Moins de compétition (invitation seulement) • Plus facile
• Lisez attentivement la politique du programme • Il y a des trucs qu’on ne peut pas faire • Il y a des trucs qu’on doit faire • On peut se mettre dans le trouble (c’est assez rare que ça arrive, mais...)
privé? • Soumettre des bugs valides sur des BBPs publiques pour obtenir des points (et bounties) • Peut-être commencer avec des VDPs? • Moins de compétition • Se familiariser avec les outils • Bâtir sa propre méthodologie • Plus de chances de trouver des bugs à impact élever et critique (P1-P2)
base sur le VRT https://bugcrowd.com/vulnerability-rating-taxonomy *Le programme a le dernier mot • Critical (P1): 40 Points • Duplicate: 10 Points • High (P2): 20 Points • Duplicate: 5 Points • Medium (P3): 10 Points • Duplicate: 0 Point* • Low (P4): 5 Points • Duplicate: 0 Point* • Informational (P5): 0 Points Le hacker qui envoye son rapport en premier obtient tous les points et le bounty.
: 50 Points • High : 25 Points • Medium : 15 Point • Low: 10 Points • Autre: 0 Points** Le hacker qui envoye son rapport en premier obtient le bounty *Certains BBPs donnent des bonus en plus du bounty; aucun points n’est offert pour un bonus **Certains BBPs acceptent des rapports OOS avec un impact mais n’offriront pas de bounty
se créer un compte et commencer à faire du bug bounty • • Web Application Hacker’s Handbook • Real World Bug Hunting * • • STÖK • Codingo • Hakluke • Farah Hawa • Insiderphd • Nahamsec • Jhaddix • The Cyber Mentor
“Up to date” avec ce qui se passe dans la sécurité • Suivre les bonnes personnes sur • Automatiser le plus possible • Penser “Out of the box”, se poser des questions • Prendre son temps, il y aura toujours des bugs • Apprendre le plus possible – Ne pas le faire pour l’argent au début • Avoir du plaisir!
systèmes pendant 5 ans - Spécialisé en réseau (Cisco) et virtualisation (VMware) - Obtenu une dizaine de certifications dans le domaine 2) C’était devenu un peu plate... Mais la sécurité ça l’air intéressant 3) Obtenu quelques certifications en sécurité (Security+, CCNA: Security, CEH, SSCP, OSCP) 4) Commencé le bug bounty en janvier 2017 5) Obtenu ma première job en securité (Analyste sécurité Jr) en février 2017 6) Obtenu mon premier bounty en février 2017 (1 000$ de Microsoft) ...
là? • Lu le plus de “write ups” possible • Lu les livres (2 fois ou plus) mentionné plus tôt • Participer à quelques CTFs • Lu HackerOne Hacktivity • Passé beaucoup de temps sur #bugbountytips • Travaillé fort et appris le plus possible
faut être rapide (Automatisation) 2. Unique (think out of the box) 3. Expérience 4. Chance • Automatiser le plus possible • Regarder pour les “low-hanging fruits” • Être proactif, trouver des bugs pendant que tu dors et manges - comme le fait todayisnew
Qu’est-ce que les autres hackers n’ont pas pensé regardé? • Quelle erreur le développeur aurait-il pu faire? • C’est quoi le “intended behavior”? Comment je pourrais faire pour y faire faire autre chose? • Expérience • Ça vient avec le temps et la pratique • Commence à remarquer certains “patterns” • Commence à apprendre certains frameworks et leurs vulnérabilités communes, mauvaises configurations, etc • Chance • Des fois, il nous faut que de la chance
Je ne regarde pas nécessairement ce type de scope *.domain.com • les scopes plus petits (ex. 5 applications web et un API) • les applications web avec beaucoup de fonctionnalités et avec du RBAC • un programme qui paye bien et “triage” et “resolve” rapidement
librairies utilisées • Regarder les entêtes HTTP • Utiliser des outils tels que Wappalyzer et/ou BuiltWith • Regarder les offres d’emplois • Regarder les profils LinkedIn des programmeurs et trouver leur GitHub 2. Identifier le plus d’endpoints possibles • GitHub • Google Dork • WayBackMachine • Brute force (Attaque dictionnaire avec wordlists) 3. Prendre des notes • Rôles des utilisateurs • Intégrations à des tiers partis L’objectif de la phase de reconnaissance est d’augmenter la surface d’attaque, mettre les morceaux en place pour mieux comprendre l’application.
Utiliser l’application comme si j’étais un vrai utilisateur • Identifier le “intended behavior” • Identifier comment les fonctionnalités interagissent avec elles-mêmes • Identifier des fonctionnalités disponibles qu’à certains types d’utilisateurs; fonctionnalités cachés, paywall, etc • Identifier des plans d’attaques 3. Start Hacking!!!
De plus en plus de compagnies commencent un programme sur ou • La moyenne de bounty par bug ne cesse d’augmenter • Le nombre de “hackers” ne cesse d’augmenter • Devient une compétition réelle aux tests d’intrusion (penetration test)
continue Durée Coût Pentest Oui * Non Ponctuel * Bug Bounty Oui et non Oui En continu * * En pentest, tu es limité sur les skills des pentesters ** Dans un pentest, tu payes un montant fixe même si le rapport est vide *** En bug bounty, tu payes que pour des résultats
ont nos données • Ils connaissanent nos forces et “skills” • Avec les rapports publiques, ils peuvent montrer des examples de nos rapports aux clients • Le client indique le besoin de leur pentest • et leur offre les meilleurs ”hackers” pour leur besoin Ne paye pas pour la compagnie (Ex. Mandiant, Deloitte, KPMG, etc), mais paye pour les hackers (presque une garantie de résultats)
tops 20-30 hackers à participer à l’événement privé • Las Vegas, San Francisco, Los Angeles, Miami, Montréal, Vancouver, Buenos Aires, Londres, Amsterdam, Singapour, Australie • Scope est normalement nouveau (ou pas) • Bonus et prix • Collaboration avec d’autres hackers L’objectif de la grande majorité des gens qui font du bug bounty