Python

Python uzlaušanai, izveidojiet ostu skeneri

Python uzlaušanai, izveidojiet ostu skeneri

Python hakerēšanai: izveidojiet ostas skeneri 13 rindās ar Python

Kļūšana par iespiešanās testētāju nozīmē ne tikai iespēju uzreiz izmantot noteiktu mērķi.  Izmantojot citu cilvēku neapmierinātos rīkus, kāds netiks padarīts par lielisku hakeri. Patiesībā tie, kuriem ir atkarība no paļaušanās uz rīkiem, parasti tiek apzīmogoti kā skriptu bērni. Katrai ekspertīzes jomai ir jābūt līmeņiem, to sauc arī par procesu, no kuriem mazākais ir hakeru lauks. Šis populārais citāts saka: “Neviena leģenda nav dzimusi, leģendas tiek veidotas”. Runa nav par cilvēka talantu, bet gan par prasmju kopumu.

Šajā rakstā mēs uzzināsim par programmēšanas valodas ieviešanu hakeru jomā. Kas nezina par Python programmēšanas valodu? Jā, protams, jūs jau zināt. Python ir izveidots vispārīgiem mērķiem, piemēram, darbvirsmas lietojumprogrammu izstrādei ar tās GUI, tīmekļa izstrādei, ieskaitot uzlaušanu vai iespiešanās testēšanu. Python ir aktīva kopiena (kuru daži no viņiem ir nenormāli, a.k.fanātam) un pitonam ir arī bagātīgi bibliotēkas moduļi.

Python ir kļuvis arī par manu iecienītāko programmēšanas valodu, jo es zināju iespiešanās testēšanas jomu. Es to nemīlu tikai kā pašsaprotamu. Tomēr nez kāpēc pēc būtības pitons ir mazāk sarežģīta un efektīvāka programmēšanas valoda. Ar to es gribu teikt, ka tā ir gandrīz tuvu cilvēku valodai, vai ne? No tāda iesācēja viedokļa kā mans, Python lasāmības līmenis ir nenormāls.

Labi, pietiekami, lai pārvērtētu pitonu. Tagad es paskaidrošu šī raksta jēgu. Šeit mēs iemācīsimies izveidot vienkāršu portu skeneri ar daudzbalsību tikai ar 13 līnijām. (man patīk 13). Šeit mēs nepārspēsim “portu skeneru karali” NMap, bet tā mērķis ir saprast, kā rīks darbojas tā, lai ražotu vēlamo, šajā gadījumā lai redzētu, vai mērķa ostas ir atvērti vai nē. No otras puses, ir arī citas priekšrocības, t.e. kad kādā brīdī mēs saskaramies ar stāvokli, kad mēs vēlamies veikt maršrutētāja porta skenēšanu, kas nevar izveidot savienojumu ar internetu, un mums nav rīku. Tas, protams, būs vieglāk, ja mēs paši varēsim padarīt ostu skeneri. Citāts no iepriekš minētā citāta. Es piebildu: "Hakeri neizmanto rīkus, viņi rada rīkus"

Ļauj to darīt ar praksi, atveriet savu iecienīto teksta redaktoru. Netērējiet laiku, izmantojot augstas veiktspējas IDE, lai veiktu vienkāršu skriptu izveidi. Esiet efektīvs. Es dodu priekšroku Gedit, nevis iepriekš uzbūvētajam Kali Linux teksta redaktoram Leafpad. Viena iemesla dēļ Gedit atbalsta krāsu izcelšanu dažādām programmēšanas valodām. Teksta redaktorā ierakstiet šo tekstu.

importa ligzda
zeķe = ligzda.kontaktligzda (kontaktligzda.AF_INET, kontaktligzda.SOCK_STREAM)

1. rindā mums jāimportē moduļa ligzda, lai izmantotu funkciju socket (). 2. rindā mēs izveidojam ligzdas objektu ar sintaksi:

kontaktligzda.ligzda (socket_family, socket_kind)

Socket_family varētu būt: AF_INET, AF_INET6, AF_UNIX, AF_NETLINK, AF_TIPC, AF_BLUETOOTH un AF_ALG.

Socket_kind iespējas ir SOCK_STREAM, SOCK_DGRAM, SOCK_RAW, SOCK_RDM utt. Mēs izmantojam SOCK_STREAM jo mēs sazināsimies, izmantojot TCP protokolu.

Lai uzzinātu vairāk par kontaktligzdas moduli, lūdzu, apmeklējiet oficiālo kontaktligzdas dokumentāciju vietnē https: // docs.pitons.org / 3 / library / socket.html

Turpināsim programmu ar šādām rindām:
https: // analytics.google.com / analytics / web / # realtime / rt-content / a2559550w156331077p157923904 /

target = input (“[+] Ievadiet mērķa IP:“)

Mēs lūdzam lietotāju ievadīt mērķa IP, jo mēs to izmantojam AF_INET lai izveidotu kontaktligzdu.

def skeneris (ports):
mēģiniet:
zeķe.savienot ((mērķis, ports))
atgriezties True
izņemot:
atgriezties Nepatiesa

Nākamajās iepriekšējās rindās mēs definējam skeneris () funkciju. In skeneris () mēs izmantojam mēģiniet sintakse, lai pārliecinātos, ka mēs neizmetam kļūdas, ja rodas kādas problēmas. Mēs cenšamies izveidot savienojumu ar mērķa IP un tā portu. Porta mainīgais tiek ievadīts funkcijā, kā parādīts zemāk.

portNumber diapazonā (1100):
drukāt ("Skenēšanas ports", portNumber)
ja skeneris (portNumber):
drukāt ('[*] ports', portNumber, '/ tcp', 'ir atvērts')

Šis cilpa iepriekš ir atkārtota, izmantojot vairākas ostas, kuras mēs skenēsim. Sintakse diapazons () funkcija ir diapazons (sākt no x, apstāties pirms x). Tātad 10. rindā mēs skenēsim 100 porti, kas ir no 1. līdz 99. Mēs izmantojam drukas metodes izsaukumu, lai pastāstītu, kāds ports tagad tiek faktiski skenēts. Tad mēs atgriežam Būla tipu Patiesa vai Nepatiesa. Tas sauc mūsu skeneris () funkcija, kas mēģina izveidot savienojumu ar piegādāto portu; ja tas ir atgriežas Nepatiesa (mēģinājums izveidot savienojumu neizdevās).  Ja tas atgriežas Patiesi (savienojuma panākumi), tad pārejiet uz nākamo rindu. Tiek parādīts ziņojums, kas norāda šo portu Atvērt. Šī cilpa apstāsies, kad būsim skenējuši 99. portu.

Tātad, lai pabeigtu, mūsu 13 līniju porta koda skenerim vajadzētu izskatīties šādi:

Labi, tagad ir laiks to pārbaudīt, ļaujiet redzēt, kā tas darbojas. Saglabājiet to kā skeneris.py. Gadījumā, ja mēs meklēsim mūsu pašu atvērtos maršrutētāja portus diapazonā no 1 līdz 99. Ticiet man, ka tas nebūs izdomāts salīdzinājumā ar NMap, vienkārši koncentrējieties uz mūsu iepriekš minēto mērķi.

Mērķa IP: 192.168. lpp.1.1

Sintakse, lai izsauktu skeneris.py ir:

~ # python3 skeneris.py

Tā kā mēs nenosakām skriptu vidi pirmajā rindā, tāpēc mums jāsauc Python tulks, es izmantoju python3, nevis tā apakšējo versiju.

Neizdomātai izejai vajadzētu izskatīties šādi:

NOSLĒGUMĀ

Jā, mums izdodas izveidot vienkāršu portu skeneri no nulles, izmantojot pitonu tikai 13 rindās. Mums izdodas sasniegt savu mērķi, un tagad mēs zinām, kā lietas darbojas, pareizi?. Pat es jums neteicu, ja ir kāds puisis, kurš izgatavoja NMap-python moduli, jūs nebrīnīsieties. Šis modulis būtībā spēj palaist komandu NMap, izmantojot Python programmēšanas valodu.

Ak, jā, ja jūs domājat, kur ir hakeru daļa, vienkārši veicot ostu skenēšanu? Hmm ... Nu, ko tad hakeris mērķē, ja viņiem nav ne jausmas par pašu mērķi. Vai atceraties iespiešanās pārbaudes posmus vai ciklus? Ja nē, jums, iespējams, būs jāizlasa raksts šeit:

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

OpenTTD apmācība
OpenTTD ir viena no populārākajām biznesa simulācijas spēlēm. Šajā spēlē jums ir jāizveido brīnišķīgs transporta bizness. Tomēr jūs sāksit sākumā apmē...
SuperTuxKart operētājsistēmai Linux
SuperTuxKart ir lielisks nosaukums, kas paredzēts, lai sniegtu jums Mario Kart pieredzi bez maksas jūsu Linux sistēmā. Tas ir diezgan izaicinoši un ja...
Cīņa par Vesnota apmācību
Cīņa par Vesnotu ir viena no populārākajām atvērtā koda stratēģijas spēlēm, kuru jūs varat spēlēt šajā laikā. Šī spēle ir izstrādāta ne tikai ļoti ilg...