
"Pentester" - le mot n'est en fait pas russe, emprunté. Ce qui vient à l'esprit des gens qui ne sont pas de l'informatique, j'ai peur d'imaginer. Par conséquent, nous-mêmes «en Russie» appelons fièrement «spécialistes des tests de pénétration». Qu'est-ce que la «pénétration» et pourquoi devrait-elle être testée? Dans cet article, je vais essayer d'ouvrir le voile du secret pour les non-initiés.
Il existe de grandes entreprises dans lesquelles travaillent des "oncles" respectés. Ils sont travaillés par des programmeurs qui écrivent du code et font parfois des erreurs. Les causes d'erreurs sont courantes: à cause de la stupidité, à cause de la paresse ou à cause de l'ignorance de la technologie, et le plus souvent à cause de la brûlure
de délais qui ne vous permettent pas de réfléchir à la logique de l'application et de couvrir le code avec des tests.
Dans un produit logiciel, toute erreur est une vulnérabilité potentielle. La vulnérabilité est déjà un risque potentiel. Et le risque est plutôt mauvais, et vous pouvez perdre de l'argent (en général, vous pouvez perdre beaucoup de choses: données client, propriété intellectuelle, réputation, mais tout cela est calculé en argent).
Et qu'en pensez-vous? Les grands oncles décident de ne pas précipiter les programmeurs, de les emmener dans des cours de développement sûr, de donner le temps de perfectionner le code et de leur faire un massage des pieds? Bien sûr que non. Les Grands Oncles décident d'accepter ces risques (réduire, transférer, assurer et bien d'autres mots à la mode). En général, les programmes tournent - le lavekha est embrouillé. Les pirates ont volé un peu et tout s'est déroulé dans un flux standard, mais c'était pour le moment.
Au fil du temps, la quantité de données a commencé à augmenter de manière significative, l'arrogance des pirates informatiques a augmenté encore plus rapidement. Les dommages causés par le piratage ont commencé à dépasser les limites acceptables. En outre, les utilisateurs ont commencé à réaliser la valeur de leurs données personnelles «importantes», puis les «gars» ont quitté la politique et ont commencé à tourner (écoutes téléphoniques de hauts fonctionnaires, perturbation de la centrale nucléaire iranienne, fraude électorale, liberté d'expression, droit à la vie privée, droit à l'oubli) et enfin «cyber armes»!).
Tout le monde a immédiatement compris que la sécurité de l'information n'était pas pour vous "Khuhra-Mukhra".
Ici, les personnes les plus respectées ont déclaré qu'elles emprisonneraient bien sûr les pirates informatiques malveillants (qu'elles atteindraient), mais que tous les autres devaient être en quelque sorte responsables de leurs activités et prendre les mesures de sécurité nécessaires. Ils ont donné des instructions, frappé avec un marteau et se sont enfuis.
Un point important pour le lecteur: «les affaires», bien sûr, peuvent dire que votre vie privée est très importante pour lui, les données ne seront transmises à personne et chaque élément d'information sera gardé par une personne spécialement formée, mais en fait cela ne préoccupe personne. Les principaux facteurs de motivation pour assurer la sécurité de l'information sont les «mamies», ou plus précisément:
- exigences réglementaires (sinon lourdes amendes);
- empêcher les pirates de voler beaucoup (peut conduire à la faillite);
- maintenir une réputation (afin que les utilisateurs crédules transportent davantage l'argent de l'entreprise).
En général, au début, personne ne dérangeait beaucoup, ils ont développé des morceaux de papier intelligents, acheté du matériel certifié, embauché des spécialistes certifiés (ou plutôt, acheté des morceaux de papier pour leur médiocrité), et tout semblait être sûr à première vue. Mais comme tout le monde le comprend, une feuille de papier dans la vraie vie ne se détache pas.
Encore une fois, les «oncles intelligents» se sont réunis et ont décidé: pour se défendre contre un attaquant, il faut penser comme un attaquant. Pas nécessairement par vous-même, vous pouvez formaliser ce processus, embaucher des personnes spécialement formées "en vestes", et les laisser vous pirater, et la sortie sera une nouvelle feuille de papier, mais déjà un "rapport technique"!
Ainsi, un «pentester» d'une manière simple est quelqu'un qui imite le travail d'un véritable attaquant, testant ainsi l'organisation pour la possibilité de pénétration (compromis) et d'accéder aux actifs informationnels (informations confidentielles).
Comment tester? D'où? Où pénétrer? Quelles informations obtenir? Quelles sont les limitations? - tous ces détails sont convenus à l'avance.
De l'extérieur, il semble que le travail soit facile et bien rémunéré, de plus le marché n'est pas saturé de spécialistes.Par conséquent, la tendance est en train de se former: de nombreux étudiants veulent devenir des `` hackers cool '' assis à la maison sur le canapé et en appuyant sur quelques touches, piratant les géants de l'informatique. Mais est-ce aussi simple que cela?
Expérience de vie
Pentester n'est pas seulement un testeur, il vaut mieux ne pas venir ici du banc de l'école sans avoir une expérience de travail en tant qu'employé d'une entreprise régulière ou d'une entreprise de
vente .
Vous devez passer par l'école de la vie, exemples:
- expliquer au comptable que l'imprimante ne fonctionne pas parce que le fil n'est pas connecté à l'ordinateur;
- expliquer au directeur financier de la société que l'écriture d'un mot de passe sur un autocollant sur un ordinateur est très mauvaise;
- installer un logiciel avec des exigences minimales de 4 Go sur un ordinateur avec 256 Mo de RAM;
- mettre en place la grille d'entreprise sur les routeurs domestiques pour que tout vole;
- attendre quelques mois pour convenir d'avoir accès à un système d'information simple;
- élaborer une politique de sécurité de l'information en quelques jours en téléchargeant «poisson» sur Internet;
- demandez à Dieu de compiler le programme et, sans rien changer dans le code, obtenir le succès;
- faire le travail 2 fois plus vite que prévu, et au lieu du prix, obtenir encore plus de travail;
- etc.
Sinon, votre rapport entier sans comprendre la pratique et la personnalité réelles du client restera un beau morceau de papier et les recommandations ne seront jamais suivies.
Il n'est généralement pas difficile de trouver un «trou» dans une multi-millième entreprise, mais sans expérience de la vie, il sera difficile d'analyser complètement et de casser d'autres systèmes sans comprendre:
- Comment a-t-il été construit? (qualitativement ou sous substances)
- Pourquoi (paresse, budget, conditions, personnel)
- Que pourrait manquer le développeur / architecte / réseauteur?
- Pourquoi personne n'est-il responsable du piratage du système? (et ça arrive)
- Pourquoi personne ne veut corriger votre vulnérabilité super importante? (et ça arrive)
- Pourquoi une vulnérabilité critique ne peut-elle pas être corrigée en quelques heures? (peut-être que les gens viennent de terminer leur journée de travail et que personne ne paie pour le traitement)
- Est-il facile de corriger une vulnérabilité découverte? (peut-être existe-t-il un support pour l'externalisation expirée)
- Etc.
Exigences Pentester
Les exigences pour un tel spécialiste, bien sûr, diffèrent des exigences pour un astronaute, il n'est pas nécessaire d'être physiquement résilient, vous ne pouvez généralement pas vous lever du canapé pendant longtemps, mais il y a certaines nuances qui vous sont propres.
Voici des exemples de responsabilités professionnelles:- Tests de pénétration (pentest):
- tests de pénétration externe et interne;
- analyse de sécurité des applications Web;
- analyse de sécurité des réseaux sans fil;
- tests de pénétration utilisant des méthodes d'ingénierie sociotechnique;
- Tests de pénétration dans le cadre de la norme PCI DSS.
- Élaboration de rapports et de recommandations sur les tests effectués.
- Développement personnel et développement des compétences du département dans le domaine de la sécurité de l'information.
Exemples d'exigences:La présence de l'enseignement technique supérieur dans le domaine de la sécurité de l'information.- Connaissance de l'administration des systèmes * nix et Windows, des serveurs Web.
- Connaissance des protocoles réseau (TCP / IP), des technologies de sécurité (802.1x), ainsi que des principales vulnérabilités des protocoles réseau (spoofing arp, ntlm-relay).
- Connaissance du travail des protocoles et technologies web (http, https, soap, ajax, json, rest ...), ainsi que des principales vulnérabilités web (OWASP Top 10).
- Connaissance du marché des produits de sécurité de l'information (fabricants, fournisseurs, concurrents, tendances de développement, caractéristiques de la demande, besoins et attentes des clients).
- Comprendre les technologies de sécurité de l'information (WAF, VPN, VLAN, IPS / IDS, DLP, DPI, etc.).
- Expérience avec les programmes nmap, sqlmap, dirb, cableshark, burp suite, Metasploit, Responder, Bloodhound.
- Expérience avec Kali Linux OS.
- Connaissance des méthodologies OWASP, PCI-DSS.
- Expérience de développement en Python, PHP, Ruby, bash, Powershell, Java, C, Assembly.
- Comprendre les bases de la rétro-ingénierie.
- La connaissance de l'anglais n'est pas inférieure au niveau intermédiaire.
Connaissance du chinois (attendez bientôt).
Plus:- Expérience en ingénierie inverse et analyse de logiciels malveillants.
- Expérience dans l'exploitation de vulnérabilités binaires.
- Disponibilité des certificats professionnels CEH, OSCP, OSCE, etc.
- Participation à des compétitions professionnelles (CTF, hackathon, olympiades).
- Participation aux programmes Bug Bounty.
- Avoir votre CVE.
- Discours lors de conférences professionnelles.
De moi-même:Dans ce cas, peu de personnes sont intéressées par le génie technique-sociophobe; généralement, une personne sortante est requise ici, qui peut:
- expliquer au client ce qu'il veut vraiment et à quoi il ressemblera;
- présenter et protéger correctement leurs actions et recommandations sous forme écrite et verbale;
- en cas de succès, créez un «effet wow»;
- en cas d'échec, créer un «effet wow» (les inconvénients du pentest sont les avantages de la sécurité de l'information);
- être résistant au stress (il fait chaud, surtout avec un travail caché);
- résoudre les tâches à temps, même avec des projets croisés.
- être dans une tendance (oh, oui, être dans une tendance est le "fardeau" de tous les professionnels de l'informatique):
- [Vous ne pouvez pas simplement le prendre et ne pas penser au travail après le travail].
- Besoin d'évoluer constamment.
- Lisez les bavardoirs dans un télégramme, lisez les blogs étrangers, lisez les actualités, suivez Twitter, lisez Habr, regardez les rapports.
- Découvrez de nouveaux outils, suivez les modifications dans les référentiels.
- Assister à des conférences, parler pour vous-même, écrire des articles .
- Former de nouveaux employés.
- Être certifié.
- Ne brûlez pas.
Philosophie Pentest
Pas besoin de penser que le pentest montrera tous les problèmes, que le résultat sera une évaluation objective de la sécurité de vos informations dans l'entreprise (produit).
Le pentest ne montre que le résultat qu'une équipe de spécialistes spécifiques dans des conditions données (temps, lieu, modèle d'un attaquant, compétences, actions autorisées, restrictions législatives, priorités,
phase de lune ) peut obtenir en imitant le travail d'un attaquant.
Rappelez-vous: les pentesters ne sont pas de vrais
intrus qui peuvent combiner vol, piratage, chantage, corruption d'employés, falsification de documents, leur influence et d'autres facteurs humains universels, tout est coordonné ici 100 fois, la charge est contrôlée et tout est dans le secret.
Pentest, c'est aussi de la chance. Aujourd'hui, vous avez réussi à extraire le mot de passe administrateur de la RAM et êtes allé à l'administrateur de domaine pour l'ensemble du réseau d'entreprise, et demain, il n'y est pas déjà, et seul un accès (privilégié) non privilégié ira au rapport sur un ancien serveur, personne d'intéressant.
Différences par rapport aux destinations proches
En plus des «Pentesters», il y a aussi des «Redtimers», «Baghunters», «Researchers», «Auditors», juste des experts en sécurité de l'information - tout cela peut être une seule personne, ou il peut y avoir différentes personnes, qui ne se chevauchent que partiellement en termes de compétences. Mais essayez de «mâcher» ces termes un peu:
"Auditeur"
Ce spécialiste reçoit tous les documents, schémas de réseau, configurations d'appareils, sur la base desquels des conclusions et des recommandations sont faites pour l'organisation conformément aux meilleures normes et à l'expérience de l'auditeur. En raison de l'ouverture des informations, il offre la plus grande couverture pour tous les processus SI et une vue holistique de l'ensemble de l'infrastructure.
L'auditeur vérifie rarement indépendamment chaque paramètre de l'organisation, généralement les informations lui sont fournies par le client lui-même, parfois obsolètes ou incorrectes.
Il est nécessaire de combiner les efforts des auditeurs et des pentesters pour vérifier les deux morceaux de papier avec les processus commerciaux et leur mise en œuvre dans la pratique.
"Chercheur"
Pentester dans sa forme la plus pure n'est pas un chercheur, il n'a tout simplement pas le temps pour cela. Par chercheur, je veux dire un spécialiste qui peut monter un stand, déployer certains logiciels et ne les examiner que de haut en bas pendant plusieurs semaines, voire plusieurs mois.
Imaginez maintenant, vous embauchez un spécialiste pour tester votre infrastructure d'entreprise, et il s'est assis là tout le temps et a étudié le logiciel "envoyer la Saint-Valentin" installé sur l'ordinateur d'un des employés. Même en cas de succès, vous n'êtes pas très intéressé par ses résultats de travail.
Redimer
Redtim est une philosophie de test complètement différente. Convient aux entreprises ayant un SI mature, qui ont déjà effectué des audits et des pentests, et tous les défauts ont été éliminés.
Ici, il est le plus proche d'un véritable attaquant, et le service SI de l'organisation et les services connexes (
SOC ...) sont déjà en cours de vérification.
Différences par rapport à Pentest:
- Seules quelques personnes connaissent le travail, les autres répondront en temps réel aux attaques.
- Le travail est effectué secrètement - vous pouvez attaquer des hébergeurs cloud la nuit.
- Il n'est pas nécessaire de faire un test de couverture - vous pouvez suivre le chemin de moindre résistance et trouver le mot de passe sur github.com.
- Plage d'exposition plus large - 0 jour peut être appliqué, fixé dans le système.
- Le travail est effectué sur une longue période (plusieurs mois, un an), ne nécessite pas de hâte - c'est ici que vous pouvez vous permettre de rechercher l'infrastructure du client sur des stands surélevés afin de minimiser l'utilisation d'équipements de protection.
Baghunter
Comparer un chasseur de sacs avec un pentester est incorrect - c'est comme chaud avec doux, l'un n'interfère pas avec l'autre. Mais pour la séparation, je peux dire que le pentester est plus un poste, le travail implique un certain nombre de tâches formelles dans le cadre d'un accord avec le client selon la méthodologie indiquée et avec la formation de recommandations.
Il suffit à un chasseur de bagage de trouver un trou dans n'importe qui (généralement à partir d'une liste sur le site) et d'envoyer une preuve d'erreur (conditions préalables, étapes).
Encore une fois, pas d'accord préalable, pas d'approbation - je viens de
découvrir la vulnérabilité et de l'envoyer au client via le site (le site
www.hackerone.com peut servir d'exemple du site). Vous pouvez même voir à quel point Petya l'a fait dans l'organisation «A» et le répéter ici dans l'organisation «B». La concurrence est forte ici, et les «fruits à faible hauteur» se rencontrent de moins en moins. Il vaut mieux le considérer comme une forme de revenu supplémentaire pour le pentester.
La spécificité du pentest de la société intégratrice
Cette section peut sembler publicitaire, mais vous ne vous éloignerez pas des faits.Chaque pentest est unique à sa manière (bien que la technique puisse être stéréotypée). De nombreux facteurs le rendent unique, mais principalement des personnes, une équipe de spécialistes, dont le style est certainement influencé par l'entreprise où ils travaillent.
Ainsi, par exemple, seul Pentent lui-même est important pour une entreprise, ses résultats, ils ne font de l'argent que sur cela. La seconde société souhaite créer des failles spécifiques lors du pentest afin de vendre sa solution de protection. Le troisième se concentre davantage sur les processus commerciaux perturbés pour soulever toute une couche de problèmes et proposer des mesures pour les résoudre.
Travaillant dans une
entreprise intégratrice , je parlerai des fonctionnalités de nos pentests pour les clients externes. La spécificité est que:
- Nous ne sommes pas intéressés à mener un pentest dans l'intérêt d'un pentest et à l'étirer pendant plusieurs mois.
- Le travail est effectué dans les plus brefs délais et les résultats visent à identifier l’image réelle de la sécurité des informations du client.
- Il est nécessaire de mettre en évidence les processus métier problématiques de la sécurité de l'information en testant les points d'infrastructure clés. Donc, si un système d'exploitation obsolète est détecté sur 20 ordinateurs sur 20, alors à quoi bon en montrer 200 autres? Une couverture complète n'est souvent pas nécessaire, et qui peut la garantir?
- Selon les résultats du pentest, l'entreprise peut immédiatement proposer de réaliser un audit, construire des processus métiers, proposer des mesures de protection, les mettre en œuvre, accompagner et suivre. En Russie, peu d'entreprises peuvent se prévaloir d'un tel ensemble d'opportunités. Cela est pratique lorsque l'ensemble des services peut être fourni par une seule entreprise possédant une vaste expérience dans de tels projets.
Du point de vue de l'employé, une entreprise intégratrice est une multitude de projets de tous types de travail avec des clients petits et très grands à l'échelle nationale. C'est la présence de voyages d'affaires en Russie et à l'étranger. Et bien sûr, travailler côte à côte dans une équipe avec des auditeurs, des ingénieurs de mise en œuvre, de maintenance, des fournisseurs, etc.
Jours ouvrés
Imaginez que vous travaillez déjà en tant que pentester. À quoi ressembleront vos journées de travail?
Du lundi au vendredi, vous effectuez un «pentest externe» du Client1 avec un collègue. Le travail est effectué sur la base d'une expérience personnelle et de méthodes internationales, en tenant compte des spécificités du client. Vous lancez des scanners, compilez une carte, vérifiez avec des listes de contrôle, correspondez avec un collègue sur les vulnérabilités découvertes.
Dans le même temps, une autre équipe commence à téléphoner aux employés du client, se faisant passer pour un service de sécurité, envoyant de formidables lettres avec des pièces jointes malveillantes, quelqu'un quitte même pour jeter des clés USB et placer des affiches sur le territoire du client.
Ce n'est pas une compétition, des vulnérabilités intéressantes ne sont pas toujours trouvées ici, les gens ne signalent pas toujours les mots de passe par téléphone et les mesures de sécurité ne sont pas toujours configurées comme «fuyantes», donc seule une liste des travaux effectués peut aller au rapport, mais ne vous inquiétez pas, car chaque penteste vous apprend quelque chose quelque chose de nouveau et montre des facteurs humains intéressants.
Quelques fois après que le client a effacé les données d'entrée, la facilité de service des services se dégrade et le travail est suspendu. Après des ajustements aux restrictions, ils continuent. Tout est normal. Rédigez un rapport.
Ensuite, vous êtes affecté au «pentest interne» du Client2 avec un voyage d'affaires dans la ville de N, un de vos collègues arrive à tester l'application mobile. À votre arrivée, vous serez escorté dans un bureau séparé, fournissez un lieu de travail. Vous connectez calmement le câble réseau à l'ordinateur portable et effectuez un «pentest interne», conformément à l'accord déclaré. Peut-être que vous capturez le contrôleur de domaine 3 heures après le début du travail via ms17-010 et collectez d'autres vecteurs le reste des jours. Vous avez peut-être essayé toute la semaine de «jouer» avec la «délégation d'autorité Kerberos» sur une paire de comptes reçus. Les employés de l'IB viendront certainement vous demander ce qu'ils ont trouvé. Déjà après 15 minutes, vous vous attendez à la question: «Eh bien? Avez-vous réussi à casser quelque chose? ", Bien que nmap ne se soit même pas" échauffé ". Dans tous les cas, vous avez généralement de quoi surprendre les agents de sécurité, et même avec un compte de l'imprimante, vous pouvez récupérer des sauvegardes du serveur Exchange. D'autres rapports, des histoires sur le «grand voyage» aux collègues, la surprise du client, beaucoup de recommandations et encore plus de clarifications, mais à la fin, l'entreprise commence vraiment à comprendre que la sécurité est un processus, pas une mesure ponctuelle, et vous serez satisfait du travail accompli.
Ensuite, vous êtes affecté à une équipe rouge, vous conduisez avec un collègue dans une voiture, vous garez à côté de la banque. Lancez une attaque sur le Wi-Fi à l'aide d'un ordinateur portable et d'une antenne spéciale. Vous n'êtes pas le GRU, vous n'avez pas de croûte, vous pouvez vraiment "attraper un chapeau" des gardes imprévisibles, donc l'antenne est cachée, et vous avez une légende que vous attendez des amis.
Mais maintenant, la poignée de main Wi-Fi Wi-Fi d'entreprise est reçue, et vos collègues du bureau l'ont déjà dégroupée et sont passés par Internet à la boîte aux lettres du directeur. C'est une réussite. Collecte supplémentaire d'informations, rapports, présentations.
En semaine, vous rédigez des scripts pour optimiser une partie de votre travail. Lisez l'actualité et testez de nouvelles techniques sur le stand. En parallèle, les anciens clients vous envoient des questions sur le travail il y a un mois.
Quelques heures le samedi (les frais de traitement sont payés), un test de charge est prévu chez le client, vous abandonnez le site 10 minutes après le démarrage, et devinez quoi? Rédigez un rapport sur les résultats.
Bientôt, il y aura un pentest ASU TP intéressant et un voyage à la conférence IS aux frais de l'entreprise. Vous déposez une larme de bonheur et insérez un guillemet dans un nouveau formulaire Web.
En conclusion
Le sujet des pentests n'est pas nouveau, ils en ont beaucoup écrit et de différentes manières (vous pouvez le lire
ici et
ici ),
des disciplines appropriées apparaissent dans les universités, des concours sont organisés, diverses conférences sont organisées, mais la dotation en personnel «faim» augmente chaque année. De plus, la maturité de la sécurité des informations de nombreuses entreprises augmente, de plus en plus d'outils de protection des informations apparaissent et des compétences élevées et polyvalentes sont requises de la part des spécialistes. Il sera utile à tout informaticien (sans oublier les spécialistes de la sécurité de l'information) de participer au moins une fois à un véritable pentest.
Et malgré les débuts de l'automatisation (un exemple
ici ), il est peu probable que quelque chose remplace une personne compétente et vivante dans les dix prochaines années.