Python

Python pre hacking, zostavte portový skener

Python pre hacking, zostavte portový skener

Python pre hacking: Zostavte portový skener v 13 riadkoch pomocou Pythonu

Stať sa testerom penetrácie nie je len schopnosť okamžite využiť určitý cieľ.  Používanie najhorších nástrojov iných ľudí neurobí z niekoho skvelého hackera. Tí, ktorí sa spoliehajú na nástroje, sú v skutočnosti zvyčajne označovaní ako skriptové deti. Každá odborná oblasť musí mať úrovne, hovorí sa jej tiež proces, v neposlednom rade je to oblasť hackerstva. Nasledujúci populárny citát znie: „Žiadne legendy sa nezrodili, legendy sa vytvárajú“. Nejde o talent človeka, ale o danú zručnosť.

V nasledujúcom článku sa dozvieme o implementácii programovacieho jazyka v oblasti hackingu. Kto nevie o programovacom jazyku Python? Áno, samozrejme, už viete. Python je vytváraný na všeobecné účely, ako je vývoj desktopových aplikácií s jeho GUI, vývoj webu, vrátane hackerských testov alebo penetračných testov. Python má aktívnu komunitu (ktorej sú niektorí z nich nepríčetní, a.k.fanatik) a python má tiež bohaté knižničné moduly.

Python sa tiež stal mojím obľúbeným programovacím jazykom, pretože som poznal oblasť penetračného testovania. Nemilujem to len ako samozrejmosť. Avšak z nejakého dôvodu je v podstate python menej zložitý a efektívnejší programovací jazyk. Tým chcem povedať, že je takmer blízko k ľudskému jazyku, však?? Z pohľadu nováčika, ako je ten môj, je miera čitateľnosti Pythonu šialená.

Dobre, dosť na preháňanie pythonu. Teraz vysvetlím zmysel tohto článku. Tu sa naučíme vytvárať jednoduchý portový skener s výrečnosťou iba s 13 riadkami. (páči sa mi 13). Tu nebudeme poraziť „kráľa skenera portov“ NMap, cieľom je naopak pochopiť, ako nástroj funguje tak, aby produkoval to, čo chceme, v tomto prípade zistiť, či sú porty na cieľovej sú otvorené alebo nie. Na druhej strane existujú ďalšie výhody, t.j.e. keď v určitom okamihu čelíme stavu, keď keď chceme robiť skenovanie portov smerovača, ktorý sa nevie pripojiť na internet a nemáme k dispozícii žiadne nástroje. To bude samozrejme jednoduchšie, ak si môžeme sami vyrobiť skener portov. Citát z vyššie uvedeného citátu. Pridal som: „Hackeri nepoužívajú nástroje, ale vytvárajú nástroje“

Poďme na to, otvorte si obľúbený textový editor. Nestrácajte čas používaním vynikajúceho IDE na jednoduché skriptovanie. Len buďte efektívny. Dávam prednosť Geditu pred vopred pripraveným textovým editorom Kali Linux Leafpad. Z jedného dôvodu podporuje Gedit farebné zvýraznenie pre rôzne programovacie jazyky. Zadajte nasledujúci text do textového editora.

dovozná zásuvka
ponožka = zásuvka.zásuvka (zásuvka.AF_INET, socket.SOCK_STREAM)

V riadku 1 musíme importovať modul socket, aby sme mohli používať funkciu socket (). V riadku 2 vytvoríme soketový objekt so syntaxou:

zásuvka.zásuvka (socket_family, socket_kind)

Socket_family može byť: AF_INET, AF_INET6, AF_UNIX, AF_NETLINK, AF_TIPC, AF_BLUETOOTH a AF_ALG.

Socket_kind možnosti sú SOCK_STREAM, SOCK_DGRAM, SOCK_RAW, SOCK_RDM atď. Používame SOCK_STREAM pretože budeme komunikovať cez TCP protokol.

Viac informácií o zásuvkovom module nájdete v oficiálnej dokumentácii zásuvky na https: // docs.pytón.org / 3 / knižnica / zásuvka.html

Pokračujme v programe nasledujúcimi riadkami:
https: // analytika.google.com / analytics / web / # realtime / rt-content / a2559550w156331077p157923904 /

target = vstup („[+] Zadajte cieľovú IP:“)

Požiadame používateľa, aby zadal cieľovú IP, pretože používame AF_INET na vytvorenie zásuvky.

def skener (port):
skúste:
ponožka.pripojiť ((cieľ, port))
návrat Pravda
okrem:
návrat False

V ďalších riadkoch vyššie definujeme skener () funkcia. V skener () používame skús syntax, aby sme zaistili, že nevyhodíme žiadnu chybu, ak sa vyskytnú problémy. Pokúšame sa nadviazať spojenie s cieľovou IP a jej portom. Premenná portu je odovzdaná do funkcie, ako je uvedené nižšie.

pre portNumber v rozsahu (1 100):
tlač ("Skenovací port", číslo portu)
ak skener (portNumber):
print ('[*] Port', portNumber, '/ tcp', 'je otvorený')

Toto pre cyklus vyššie je iterácia cez sériu portov, ktoré ideme skenovať. Syntax súboru rozsah () funkcia je, rozsah (zacat od x, zastavit pred x). V riadku 10 teda skenujeme 100 portov, čo sú porty 1 až 99. Pomocou volania metódy tlače zistíme, aký port sa teraz skutočne skenuje. Potom vrátime boolovský typ, True alebo False. Volá to naše skener () funkcia, ktorá sa pokúša nadviazať spojenie s dodávaným portom; ak je to návrat Falošné (pokus o pripojenie zlyhal).  Ak sa vráti Pravdaže (úspešnosť pripojenia), potom prejdite na ďalší riadok. Ktorá zobrazuje správu označujúcu tento určitý port je Otvorené. Táto slučka sa zastaví, keď naskenujeme port 99.

Zhrnutie, náš 13-riadkový portový skener kódu by mal vyzerať takto:

Teraz je čas to otestovať, pozrime sa, ako to funguje. Uložiť ako skener.py. V prípade, že budeme hľadať vlastný otvorený port routera v rozmedzí od 1 do 99. Verte mi, že to nebude v porovnaní s NMap fantazijné, len sa zamerajte na náš cieľ, ktorý som spomenul vyššie.

Cieľová IP: 192.168.1.1

Syntax na vyvolanie skener.py je:

~ # python3 skener.py

Pretože sme prostredie skriptu nenastavili na prvý riadok, musíme teda zavolať interpreta jazyka Python, použil som radšej python3 ako jeho nižšiu verziu.

A nefalšovaný výstup by mal vyzerať takto:

NA ZÁVER

Áno, podarilo sa nám zostaviť jednoduchý portový skener od nuly pomocou pythonu iba v 13 riadkoch. Darí sa nám dosiahnuť náš cieľ a teraz vieme, ako to funguje, správne?. Ani som ti nepovedal, či existuje človek, ktorý vytvoril modul NMap-python, by si sa nečudoval. Tento modul je v zásade schopný spustiť príkaz NMap pomocou programovacieho jazyka python.

Ach áno, ak vás zaujíma, kde je hackerská časť práve pri skenovaní portov? Hmm ... No, na čo sa zameriava hacker, ak nemá potuchy o samotnom cieli. Pamätáte si fázy alebo cykly testovania prieniku? Ak nie, možno si budete musieť prečítať článok tu:

https: // linuxhint.com / kali-linux-tutorial /

Stredné tlačidlo myši nefunguje v systéme Windows 10
The stredné tlačidlo myši pomáha vám prechádzať dlhé webové stránky a obrazovky s množstvom údajov. Ak sa to zastaví, budete nakoniec používať klávesn...
Ako zmeniť ľavé a pravé tlačidlo myši na počítači so systémom Windows 10
Je úplnou normou, že všetky zariadenia počítačových myší sú ergonomicky navrhnuté pre pravákov. Existujú však dostupné myšacie zariadenia, ktoré sú šp...
Napodobňovanie kliknutí myšou vznášaním sa pomocou myši bez myši vo Windows 10
Používanie myši alebo klávesnice v nesprávnom postoji k nadmernému používaniu môže mať za následok veľa zdravotných problémov vrátane napätia, syndróm...