Violent Python -
Vous cherchez à étendre votre expertise en Python ou tout simplement en savoir plus sur le formidable potentiel du langage de programmation? L'une des lectures les plus recommandées pour vous serait «Violent Python». Comme le suggère son slogan, Python violent est un livre de cuisine pour les pirates, les testeurs de pénétration, les analystes judiciaires et les ingénieurs de sécurité.
Comme vous pouvez vous en douter, le livre a une portée très large compte tenu de sa base de lecteurs ciblés. Il a montré comment le langage peut être utilisé pour aider et automatiser les tâches dans plusieurs disciplines de la sécurité de l'information. Le livre ne sacrifie pas non plus la profondeur pour la largeur. Bien qu'engageant un large éventail de sujets, il va également assez en profondeur avec des exercices de niveau avancé pour chaque sujet.
Violent Python Book
Les auteurs
Le livre a été principalement écrit par TJ O'Connor, avec Mark Baggett comme rédacteur technique et Rob Frost auteur d'un chapitre sur la reconnaissance Web. Voici un aperçu du contexte que chaque contributeur / auteur apporte:
- TJ O'Connor
Ancien parachutiste de l'armée américaine et expert en sécurité de l'information pour le ministère de la Défense. Il a enseigné des cours de premier cycle sur l'exploitation, la criminalistique et l'assurance de l'information alors qu'il était professeur adjoint à l'Académie militaire américaine. Il a également co-coaché l'équipe gagnante à deux reprises lors de l'exercice annuel de cyberdéfense de la National Security Agency. Il est diplômé d'une maîtrise ès sciences en informatique de la North Carolina State University et d'une maîtrise ès sciences en ingénierie de la sécurité de l'information du SANS Technical Institute.
- Rob Frost
Robert Frost a été commissionné au sein du Army Signal Corps après avoir obtenu son diplôme de l'Académie militaire américaine en 2011. Il détient un baccalauréat ès sciences en informatique avec distinction, et sa thèse s'est concentrée sur la collecte d'informations open source. Lors de l'exercice de cyberdéfense de 2011, il était un membre reconnu individuellement de l'équipe du championnat national pour sa capacité à contourner les règles.
- Mark Baggett
Instructeur certifié SANS, Mark Baggett enseigne plusieurs cours du programme de tests de pénétration. Il est consultant principal et fondateur de In Depth Defense, qui fournit des services de test de pénétration et de réponse aux incidents. Il est également conseiller technique pour le SANS auprès du ministère de la Défense, se concentrant sur l'application pratique des ressources SANS pour le développement des capacités militaires.
Violent Python - Le fond
Python est un langage de haut niveau, et pour les auteurs et pour de nombreux programmeurs, c'est aussi un langage de pirate informatique. Il offre une efficacité accrue, une complexité réduite, des bibliothèques tierces illimitées et une barre d'entrée faible. Cela en fait une excellente plate-forme de développement pour la création d'outils offensifs. Si vous exécutez Linux ou Mac OS X, il est probable que vous l'ayez déjà installé sur votre système. Apprendre Python à travers ce livre peut vous aider à réussir lorsque d'autres outils offensifs échouent.
Violent Python book cible les programmeurs de tous âges et niveaux de compétence, et même les non-programmeurs qui cherchent à commencer à écrire Python. Violent Python peut même s'appliquer aux programmeurs avancés qui veulent apprendre à appliquer pour appliquer leurs compétences en tests de pénétration. Comme pourrait le suggérer le titre Violent Python, le livre se concentre sur la façon d'exploiter les aspects offensifs de Python afin d'améliorer la défense. Il couvre les «recettes» pour les tests de pénétration, l'analyse de réseau, l'analyse Web et l'exploitation d'appareils sans fil.
Pour ceux d'entre vous qui ne sont pas familiers avec les ressources de type livre de cuisine, le contenu de ce livre de cuisine Violent Python pour les pirates est composé de plusieurs scripts auto-rythmés courts axés sur des tâches spécifiques. Il montre finalement à quel point quelques lignes de Python peuvent être puissantes. Sérieusement, les plus longues recettes de ce livre Violent Python dépassent à peine 100 lignes.
Gardez à l'esprit que le livre est fortement axé sur les «arts sombres» de Python et que vous ne trouverez pas de matériel direct pour une programmation générale avec le langage. Cependant, vous pouvez certainement apprendre quelques trucs et astuces en travaillant les exercices. Les recettes ont été faites dans une conception modulaire pour la réutilisation du code, et les codes peuvent être utilisés pour des projets plus importants.
Un examen plus attentif du livre Violent Python
Avant de regarder de plus près Violent Python, il convient de noter que les fichiers de code source pour les recettes se trouvent sur sa page d'accueil Syngress. Cependant, il est recommandé d'écrire le code à partir du haut pour un meilleur apprentissage et une meilleure rétention. Dans tous les cas, si vous voulez le code rapidement et facilement, vous savez où le trouver.
Cours recommandés
- Programme sur AJAX
- Cours professionnel de test rapide en ligne
- Programme ExtJS
- Programme CISSP
Voici un aperçu de chaque chapitre du livre Violent Python:
-
introduction
Le premier chapitre vous donne une introduction à Python en général, en commençant par des informations générales sur le langage lui-même. Il saute rapidement dans la viande, vous présentant les variables, les types de données, l'itération, la sélection, les fonctions et plus encore. Il vous montre également comment travailler avec des modules et vous guide à travers quelques programmes simples.
Si vous connaissez déjà les bases de Python et êtes un programmeur intermédiaire ou expérimenté, vous pouvez à peu près ignorer le chapitre entier. L'une des meilleures choses à propos du livre Violent Python est que la plupart des chapitres sont assez indépendants les uns des autres. Vous pouvez donc simplement choisir le chapitre que vous voulez et l'apprendre seul au lieu de parcourir tous les chapitres précédents.
-
Test de pénétration avec Python
Ce chapitre vous présente l'idée d'utiliser Python pour les attaques de script pour les tests de pénétration. Les exemples incluent la construction d'un botnet SSH, la construction d'un scanner de port, l'écriture d'un exploit, la réplication de Conficker et la compromission de masse via FTP.
-
Enquêtes médico-légales avec Python
Ce chapitre se concentre sur l'utilisation de Python pour les investigations médico-légales numériques. Il donne des exemples de récupération d'éléments supprimés, de géolocalisation d'individus, d'extraction d'artefacts du registre Windows, d'examen des métadonnées de document et d'investigation des appareils mobiles et des artefacts d'application.
-
Analyse du trafic réseau avec Python
Ce chapitre vous apprend à utiliser Python pour analyser le trafic réseau. Les scripts donnés ici se concentrent sur la géolocalisation des adresses IP à partir des captures de paquets, l'analyse du trafic de botnet, les enquêtes sur les kits d'outils DDoS populaires, la découverte des analyses de leurre et le déjouement des systèmes de détection d'intrusions.
-
Mayhem sans fil avec Python
Ce chapitre se concentre sur les appareils Bluetooth et sans fil. Il fournit des exemples sur la façon d'analyser et de renifler le trafic sans fil, identifie les réseaux sans fil cachés, construit un enregistreur de frappe sans fil, commande à distance des véhicules aériens sans pilote, identifie les kits d'outils sans fil malveillants utilisés, exploite les vulnérabilités de Bluetooth et traque les radios Bluetooth.
-
Recon Web avec Python
Ce chapitre examine l'utilisation de Python pour supprimer des informations sur Internet, avec des exemples, notamment comment naviguer anonymement sur le Web via Python, gratter les sites Web de médias sociaux populaires, travailler avec les API de développeur et créer un e-mail de spear-phishing.
-
Antivirus Evasion avec Python
Ce dernier chapitre vous montre comment créer un malware qui échappe aux programmes antivirus. Il vous montre également comment créer un script pour télécharger le malware contre un scanner antivirus en ligne. Il utilise du code malveillant du framework Metasploit pour générer un shellcode de style C. Un simple bandelette Windows est utilisé pour lier le processus cmd.exe au port TCP que vous choisissez, vous permettant de vous connecter à distance à une machine et d'émettre des commandes interagissant avec le processus cmd.exe.
En savoir plus sur le livre Violent Python
Comme vous pouvez le voir, Violent Python couvre des sujets plutôt intéressants pour les pirates informatiques et ceux qui s'intéressent à la sécurité des informations. Il contient des dizaines de recettes dans ses 288 pages, et vous seriez probablement surpris du type de résultats facilement réalisables avec Python.
Malheureusement, les recettes sont énumérées en détail, vous devez donc faire un peu de recherche par vous-même pour savoir comment et pourquoi certains codages fonctionnent. Néanmoins, c'est un excellent point de départ pour en savoir plus sur les capacités de sécurité des informations de Python et être surpris par la profondeur du langage. Voici un aperçu de certaines des recettes les plus intéressantes que le livre Violent Python couvre:
- Développement de crackers de mots de passe hors ligne et en ligne
- Recréer Conficker
- Interagir avec Metasploit et Nmap
- Fournir un exploit pour un débordement de tampon basé sur la pile
- Exploiter les bases de données SQLite, le registre Windows et les sauvegardes iTunes
- Corrélation du trafic réseau avec des emplacements physiques et développement de cartes basées sur Google Earth
- Création d'un botnet SSH
- Contournement des systèmes antivirus et des IDS
- Analyse de sites Web, de tweets et de métadonnées
- Création de campagnes d'email d'ingénierie sociale
- Détournement d'un drone
- Exécution d'attaques basées sur Bluetooth
- Analyse et journalisation du trafic sans fil
L'introduction elle-même montre comment vous pouvez configurer un environnement de développement Python et agit comme un excellent cours intensif pour le langage. Il vous aide à mettre en place votre environnement de développement et peut même servir de rappel si vous avez déjà appris la langue mais avez perdu le contact récemment. Cependant, pour ceux d'entre vous qui sont complètement nouveaux sur Python et qui n'ont jamais abordé le langage auparavant, cela peut vous passer par la tête. Bien sûr, il serait difficile pour un seul livre de couvrir Python dès le départ, puis d'entrer dans quelque chose comme le piratage des drones et l'exploitation des réseaux sans fil en utilisant le langage, le tout en moins de 300 pages.
En outre, plusieurs exploitations données dans le livre discutent des actions possibles qu'un bloc de code particulier, plutôt que de donner une explication ligne par ligne du code. Pour ceux qui peuvent lire des instructions courantes en Python, il sera plus facile de comprendre et de mettre en œuvre plus rapidement le matériel de base. Cependant, si vous avez peu ou pas d'expérience avec la langue, vous pouvez trouver le livre Violent Python un peu écrasant. Si vous voulez avoir une meilleure expérience, il est préférable d'opter pour le cours gratuit de deux jours de Google ou d'opter pour d'autres cours pratiques courts (qui sont généralement gratuits) sur les principes fondamentaux de Python.
Maintenant, vous pouvez penser à partir de ce qui a été donné jusqu'à présent que Violent Python est destiné aux programmeurs de niveau supérieur, mais il est important de noter que vous n'avez pas besoin de compétences linguistiques de niveau expert pour apprécier le contenu du livre. Si vous aimez vous lancer et apprendre par essais et erreurs et vous salir les mains, alors cela vaut vraiment la peine d'essayer. Vous pouvez, en fait, apprendre les utilisations générales de Python et également apprendre le matériel de sécurité de l'information donné dans ce livre en même temps. Quant au code, il est aussi simple et propre que possible. Le code est bien écrit et bien structuré, et le récit autrement est gardé décontracté pour faciliter les choses, avec une utilisation du jargon réduite au minimum.
La plupart du contenu devrait être accessible même aux novices qui ont une faible compréhension du jargon et manquent d'expérience. En même temps, le type de matériel présent dans ce livre est tout simplement trop unique et intéressant pour être ignoré, même pour les développeurs Python expérimentés.
Les auteurs ont également réfléchi et soigné les recettes pour les rendre significatives, au lieu de les rendre trop flashy. De plus, bien que les scripts aient été structurés en modules, ce livre n'est pas seulement une collection de scripts copiés-collés. Au lieu de cela, la plupart des recettes sont précédées d'informations de fond intéressantes et souvent divertissantes, ce qui rend le livre d'autant plus amusant.
Le livre Violent Python a également été écrit pour mettre en place des scénarios et des objectifs clairs, allant de la résolution de problèmes d'enquête à la recréation d'attaques malveillantes et même à l'exécution d'attaques juste pour le plaisir. Les anecdotes historiques présentées peuvent également rivaliser avec la valeur des recettes elles-mêmes.
Bien que toutes les recettes soient très intéressantes, certaines peuvent sembler peu pratiques sur la valeur de surface. Par exemple, la plupart des professionnels de la sécurité de l'information n'ont probablement pas besoin de démonter un drone ou d'exécuter un botnet SSN. Pourtant, ces recettes ont, à la racine, des concepts de base qui peuvent être très utiles comme pouvoir interagir avec un certain nombre d'hôtes via SSH et injecter des paquets dans le trafic sans fil. Ces concepts pourraient être appliqués aux activités de sécurité de l'information telles que les tests de pénétration.
L'accent exclusif sur Python peut également être un peu désavantageux pour le lecteur, étant donné que certaines recettes nécessitent des connaissances extérieures pour vraiment savoir ce qui se passe dans les coulisses. Regardons la recette d'exploitation, qui montre comment livrer un exploit via Python. En soi, cette recette peut être un excellent modèle pour développer des exploits de preuve de concept basés sur le réseau. Le chapitre commence également par un bref aperçu des débordements de tampon basés sur la pile. Cependant, il ne traite pas de l'identification de la vulnérabilité, de la création du shellcode, de la gestion de la mémoire x86 ou du langage d'assemblage, qui sont tous hors de la portée du livre mais pertinents pour l'exploitation elle-même.
Une conclusion de Violent Python Book
Comme vous pouvez le comprendre, le livre fait beaucoup tout en omettant beaucoup, et c'est compréhensible. Il peut être difficile de répondre aux besoins de chaque lecteur et de chaque niveau de connaissances et de compétences. Les barres latérales contiennent des erreurs et des astuces communes, des conseils et d'autres informations pour aider à combler certaines des lacunes dans les connaissances. Chaque chapitre contient également plusieurs références à approfondir, ce qui est fortement recommandé si vous lisez ce livre Violent Python.
Articles recommandés
Voici quelques articles qui vous aideront à obtenir plus de détails sur la critique de livre Violent Python, alors suivez simplement le lien.
- Quels sont les avantages et les limites des questions d'entrevue AJAX?
- 25 TOP Python Interview Questions et réponses
- Premiers pas avec Python et Django pour le développement Web
- Quels sont les avantages et les limites de l'utilisation de Python?
- Python vs Ruby Performance Quelle technologie est la meilleure?