Violent Python -
Leder du efter at udvide din ekspertise inden for Python eller bare lære mere om programmeringssprogets fantastiske potentiale? En af de bedst anbefalede læsninger for dig ville være 'Violent Python'. Som dens tagline antyder, voldelig python en kogebog for hackere, penetrationstestere, retsmedicinske analytikere og sikkerhedsingeniører.
Som du godt kan forvente, har bogen et meget bredt omfang i betragtning af dens målrettede læserbase. Det demonstrerede, hvordan sproget kan bruges til at hjælpe med og automatisere opgaver på tværs af adskillige informationssikkerhedsdiscipliner. Bogen ofrer heller ikke dybden af hensyn til bredden. Selvom det engagerer sig i en lang række emner, går det også ret dybtgående med øvelser på avanceret niveau for hvert emne.
Violent Python Book
Forfatterne
Bogen er primært forfatter af TJ O'Connor, med Mark Baggett som teknisk redaktør og Rob Frost forfatter af et kapitel om Web Reconnaissance. Her er et kig på baggrunden, som hver bidragyder / forfatter bringer:
- TJ O'Connor
En tidligere faldskærm i den amerikanske hær og ekspert i informationssikkerhed for Department of Defense. Han underviste i studiekurser om udnyttelse, kriminalteknologi og informationssikkerhed, mens han var adjunkt ved US Military Academy. Han co-coachede også det vindende hold to gange på den årlige Cyber Defense-øvelse fra National Security Agency. Han uddannede sig med en kandidatgrad i datalogi fra North Carolina State University og en kandidatgrad i informationssikkerhedsteknologi fra SANS Technical Institute.
- Rob Frost
Robert Frost blev bestilt i Army Signal Corps efter uddannelsen fra det amerikanske militærakademi i 2011. Han har en bachelor i naturvidenskab i datalogi med udmærkelser, og hans speciale fokuserede på open source information indsamling. I Cyber Defense-øvelsen i 2011 var han et individuelt anerkendt medlem af det nationale mesterskabsteam for sin evne til at omgå regler.
- Mark Baggett
En certificeret SANS-instruktør, Mark Baggett, underviser i flere kurser i pensumtest-læseplanen. Han er en primær konsulent og grundlægger af In Depth Defense, der leverer penetrationstest og hændelsesrespons. Han er også teknisk rådgiver for SANS til Department of Defense, med fokus på praktisk anvendelse af SANS ressourcer til udvikling af militær kapacitet.
Violent Python - Baggrunden
Python er et højt niveau sprog, og for forfatterne og for mange programmerere derude er det også et hakers sprog. Det tilbyder øget effektivitet, nedsat kompleksitet, ubegrænsede tredjepartsbiblioteker og en lav adgangsbjælke. Dette gør det til en fantastisk udviklingsplatform til bygning af stødende værktøjer. Hvis du kører Linux eller Mac OS X, er chancerne for, at du allerede har det installeret på dit system. At lære Python gennem denne bog kan hjælpe dig med at opnå succes, når andre stødende værktøjer mislykkes.
Violent Python-bog er rettet mod programmerere i alle aldre og færdighedsniveauer, og endda ikke-programmerere, der ønsker at begynde at skrive Python. Violent Python kan endda gælde for avancerede programmerere, der ønsker at lære at anvende for at anvende deres færdigheder i penetrationstest. Som titlen Violent Python muligvis antyder, fokuserer bogen på, hvordan man tapper de offensive aspekter af Python for at forbedre forsvaret. Det dækker 'opskrifter' til penetrationstest, netværksanalyse, webanalyse og udnyttelse af trådløse enheder.
For dem af jer, som ikke kender ressourcer af kogebogtypen, er indholdet af denne Violent Python, en kogebog til hackere, lavet af flere korte, egentlige tempo, manuskripter, der er fokuseret på specifikke opgaver. Det viser i sidste ende, hvor kraftfulde et par linjer af Python kan være. Alvorligt går de længste opskrifter i denne Violent Python-bog næppe 100 linjer.
Husk, at bogen er stærkt fokuseret på 'mørke kunst' i Python, og at du ikke finder direkte materiale til generel programmering med sproget. Du kan dog bestemt lære nogle tricks og tip ved at arbejde øvelserne. Opskrifterne er lavet i et modulopbygget design til genbrugbarhed af koder, og koderne kan bruges til større projekter.
Et nærmere kig på bogen Violent Python
Inden vi kigger nærmere på Violent Python, skal det bemærkes, at kildekodefilerne til opskrifterne findes på dens Syngress-hjemmeside. Det anbefales dog, at du skriver koden lige fra toppen for bedre læring og fastholdelse. Under alle omstændigheder, hvis du vil have koden hurtigt og nemt, ved du, hvor du kan finde den.
Anbefalede kurser
- Program på AJAX
- Online Quick Test Professionel Kursus
- ExtJS-program
- CISSP-program
Her er et kig på hvert kapitel i bogen Violent Python:
-
Introduktion
Det første kapitel giver dig en introduktion til Python generelt, startende med baggrundsinformation om selve sproget. Det hopper hurtigt ind i kødet og introducerer dig til variabler, datatyper, iteration, valg, funktioner og mere. Det viser dig også, hvordan du arbejder med moduler og fører dig gennem nogle enkle programmer.
Hvis du allerede er bekendt med det grundlæggende i Python og er en mellemliggende eller erfaren programmør, kan du stort set springe over hele kapitlet. En af de bedste ting ved Violent Python-bogen er, at de fleste kapitler er temmelig uafhængige af hinanden. Så du kan blot vælge det kapitel, du ønsker, og lære det alene i stedet for at gennemgå alle de foregående kapitler.
-
Penetrationstest med Python
Dette kapitel introducerer dig til ideen om at bruge Python til scriptangreb til penetrationstest. Eksemplerne inkluderer konstruktion af et SSH-botnet, bygning af en port-scanner, skrivning af en udnyttelse, gentagelse af Conficker og masse-kompromis via FTP.
-
Retsmedicinske undersøgelser med Python
Dette kapitel fokuserer på at bruge Python til digitale retsmedicinske undersøgelser. Det giver eksempler på at gendanne slettede genstande, geografisk lokalisere individer, udtrække artefakter fra Windows-registreringsdatabasen, undersøge dokumentmetadata og undersøge mobile enheds- og applikationsartefakter.
-
Netværkstrafikanalyse med Python
Dette kapitel lærer dig at bruge Python til analyse af netværkstrafik. De scripts, der er givet her, fokuserer på geografisk lokalisering af IP-adresser fra pakkeoptagelser, analyse af botnet-trafik, undersøgelse af populære DDoS-værktøjssæt, opdagelse af lokkefederscanninger og foliering af indtrængende detekteringssystemer.
-
Trådløs Mayhem med Python
Dette kapitel fokuserer på Bluetooth og trådløse enheder. Det giver eksempler på, hvordan man parser og sniffrer trådløs trafik, identificerer skjulte trådløse netværk, bygger en trådløs keylogger, fjernstyrer ubemandede luftfartøjer, identificerer ondsindede trådløse værktøjssæt, der bruges, udnytter sårbarhederne i Bluetooth og stjæler Bluetooth-radioer.
-
Webrecon med Python
Dette kapitel undersøger brugen af Python til skrotning af internettet til information, med eksempler, herunder hvordan man anonymt kan surfe på internettet gennem Python, skrabe populære sociale mediewebsteder, arbejde med udvikler-API'er og oprette en spyd-phishing-e-mail.
-
Antivirusunddragelse med Python
Dette sidste kapitel viser dig, hvordan du opretter en malware, der undgår antivirusprogrammer. Det viser dig også, hvordan du bygger et script til at uploade malware mod en online antivirus-scanner. Den bruger ondsindet kode fra Metasploit-rammerne til at generere nogle C-stil shellcode. En simpel Windows-båndskal bruges til at binde cmd.exe-processen til en TCP-port, du vælger, hvilket gør det muligt for dig at oprette forbindelse til en maskine og udstede kommandoer, der interagerer med cmd.exe-processen.
Mere om bogen Violent Python
Som du kan se, dækker Violent Python nogle ret interessante emner for hackere og dem, der er interesseret i informationssikkerhed. Den har snesevis af opskrifter pakket på sine 288 sider, og du vil sandsynligvis blive overrasket over den type resultater, der let opnås med Python.
Desværre er opskrifterne opregnet i detaljer, så du er nødt til at forske lidt på egen hånd for at finde ud af, hvordan og hvorfor nogle af kodningerne fungerer. Ikke desto mindre er dette et godt udgangspunkt for at lære mere om Pythons evner til informationssikkerhed og blive overrasket over sprogens rene dybde. Her er et kig på nogle af de mere interessante opskrifter, som Violent Python-bogen dækker:
- Udvikling af offline og online adgangskode-crackere
- Genskaber Conficker
- Interagerer med Metasploit og Nmap
- Levering af en udnyttelse til en stakebaseret bufferoverløb
- Udnyttelse af SQLite-databaser, Windows-registreringsdatabasen og iTunes-sikkerhedskopier
- Korrelering af netværkstrafik til fysiske placeringer og udvikling af Google Earth-baserede kort
- Bygning af et SSH Botnet
- Undgå antivirussystemer og IDS
- Analysering af websteder, tweets og metadata
- Oprettelse af e-mail-kampagner inden for socialteknik
- Kapring af en drone
- Udførelse af Bluetooth-baserede angreb
- Parring og logning af trådløs trafik
Selve introduktionen viser, hvordan du kan oprette et Python-udviklingsmiljø og fungerer som et fantastisk crashkursus for sproget. Det hjælper dig med at få dit udviklingsmiljø i gang og kan endda tjene som en opfriskning, hvis du allerede har lært sproget, men har mistet dit touch for nylig. Dog for dem af jer, der er helt nye i Python og aldrig har berørt sproget før, kan dette gå over dit hovede. Selvfølgelig ville det være vanskeligt for en enkelt bog at dække Python lige fra det grundlæggende og derefter gå ind i noget som at hacking droner og udnytte trådløse netværk ved hjælp af sproget, alt sammen på under 300 sider.
Derudover diskuterer flere udnyttelser, der er givet i bogen, de mulige handlinger, som en bestemt kode blokerer, snarere end at give en linje-for-linje forklaring af koden. For dem, der kan læse almindelige udsagn i Python, vil det være lettere at hurtigere forstå og implementere kernematerialet. Hvis du dog har lidt eller ingen erfaring med sproget, kan du måske synes, at Violent Python-bogen er lidt overvældende. Hvis du vil have en bedre oplevelse, er det bedst at gå til Googles gratis to-dages kursus eller vælge andre korte praktiske kurser (som generelt er gratis) om Python-grundlæggende.
Nu kan du tænke ud fra det, der er givet indtil videre, at Violent Python er beregnet til programmerere på højere niveau, men det er vigtigt at bemærke, at du ikke har brug for sprogfærdigheder på ekspertniveau for at værdsætte bogmaterialet. Hvis du kan lide at hoppe ind og lære gennem prøve-og-fejl og få dine hænder beskidte, er dette noget bestemt værd at prøve. Du kan faktisk lære generelle anvendelser af Python og også lære det informationssikkerhedsmateriale, der er givet i denne bog på samme tid. Hvad angår koden, er den så enkel og ren som muligt. Koden er velskrevet og velstruktureret, og fortællingen holdes ellers afslappet for at gøre tingene lettere, med jargon-brug holdes på et minimum.
Det meste af indholdet skal være tilgængeligt, selv for begyndere, der har en svag forståelse af jargon og mangler erfaring. På samme tid er den slags materiale, der findes i denne bog, bare for unik og interessant til at blive ignoreret, selv for erfarne Python-udviklere.
Forfatterne har også givet en hel del tanke og omhu til opskrifterne for at gøre dem meningsfulde i stedet for bare at gøre dem alt for prangende. Selvom scripts er struktureret i moduler, er denne bog ikke kun en samling af kopierede og indsatte scripts. I stedet for foregår de fleste opskrifter interessant og ofte underholdende baggrundsinformation, hvilket gør bogen desto sjovere.
The Violent Python-bogen er også blevet skrevet for at oprette scenarier og klare mål, lige fra at løse efterforskningsproblemer til at genskabe ondsindede angreb og endda bare udføre angreb bare for den skyld. Den præsenterede historiske trivia kan også konkurrere med værdien af selve opskrifterne.
Selvom alle opskrifter er meget interessante, er der nogle, der kan virke upraktiske for overfladeværdien. For eksempel har de fleste informationssikkerhedsfolk ikke sandsynligvis brug for at nedtage en drone eller køre et SSN-botnet. Stadig set har disse opskrifter i bunden kernekoncepter, der kan være meget nyttige som at være i stand til at interagere med et antal værter gennem SSH og injicere pakker i trådløs trafik. Disse koncepter kunne anvendes til informationssikkerhedsaktiviteter såsom penetrationstest.
Det eksklusive fokus på Python kan også være en lille ulempe for læseren, i betragtning af at nogle opskrifter kræver viden udefra for virkelig at vide, hvad der sker bag kulisserne. Lad os se på udnyttelsesopskriften, som viser, hvordan man leverer en udnyttelse gennem Python. I sig selv kan denne opskrift være en fantastisk skabelon til udvikling af netværksbaseret proof-of-concept-udnyttelse. Kapitlet starter også med et kort kig på stakebaseret bufferoverløb. Den diskuterer imidlertid ikke identificeringen af sårbarheden, skabelse af shellcode, x86-hukommelsesstyring eller samlingssprog, som alle ligger uden for bogens anvendelsesområde, men relevante for selve udnyttelsen.
En konklusion af Violent Python Book
Som du kan forstå, gør bogen meget, mens den også udelades meget, og forståeligt nok. Det kan være vanskeligt at imødekomme alle læsers behov og enhver viden og færdighedsniveau. Sidebjælkerne har almindelige fejl og tricks, tip og anden information, der hjælper med at løse nogle af huller i viden. Hvert kapitel har også flere henvisninger til yderligere undersøgelser, hvilket anbefales stærkt, hvis du læser denne Violent Python-bog.
Anbefalede artikler
Her er nogle artikler, der hjælper dig med at få flere detaljer om Violent Python Book Review, så bare gå gennem linket.
- Hvad er fordelene og begrænsningerne ved AJAX-interviewspørgsmål?
- 25 TOP Python-interviewspørgsmål og svar
- Kom i gang med Python og Django til webudvikling
- Hvad er fordelene og begrænsningerne ved at bruge Python?
- Python vs Ruby Performance Hvilken teknologi er bedst?