Taula de continguts:
- Pas 1: Com comencem?
- Pas 2: Comencem
- Pas 3: crear una connexió
- Pas 4: permet enviar contingut
- Pas 5: Permet tenir una connexió oberta
- Pas 6: Conclusió
Vídeo: Netcat a Python: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:15
Què és netcat? La pàgina del manual de netcat diu el següent: "la utilitat nc (o netcat) s'utilitza per a qualsevol cosa que impliqui sòcols de domini TCP, UDP o UNIX. Pot obrir connexions TCP, enviar paquets UDP, escoltar arbitràriament Els ports TCP i UDP fan escaneig de ports i tracten tant IPv4 com IPv6. A diferència de telnet (1), els scripts nc separen els missatges d’error en errors estàndard en lloc d’enviar-los a la sortida estàndard, tal com fa telnet (1) amb alguns"
En essència, netcat us permet connectar-vos a altres servidors mitjançant el protocol TCP o UDP. TCP significa Protocol de control de transmissió i està orientat a la connexió. UDP significa Universal Datagram Protocol i no té connexió. El TCP s’utilitza habitualment per a aplicacions d’Internet, mentre que UDP s’utilitza per a transmissions multimèdia o VPN.
Pas 1: Com comencem?
A dalt es mostra com es diu netcat. Podeu veure que al final hi ha dos arguments anomenats "destinació" i "port". La destinació fa referència a un nom d’amfitrió o una adreça IP del servidor al qual estem intentant connectar-nos, mentre que el port fa referència al port del servidor al qual estem intentant connectar-nos.
Pas 2: Comencem
A la part superior hi ha un codi Python inicial. Com podeu veure, volem processar els arguments del programa de manera similar a com ho fa la utilitat real. El nom d'amfitrió serà el primer argument després del nom de l'executable, mentre que el port serà el segon argument després del nom de l'executable a la línia d'ordres.
Pas 3: crear una connexió
Creem una funció netcat que podem utilitzar. El que bàsicament fem aquí és crear un sòcol i connectar-nos al servidor mitjançant els paràmetres indicats. Per a l'ordre netcat, els paràmetres actuals són el nom d'amfitrió i el port del servidor al qual estem intentant connectar-nos. El sòcol conté els paràmetres "socket. AF_INET" i "socket. SOCK_STREAM" perquè estem predeterminats a una connexió TCP per a aquest tutorial.
Pas 4: permet enviar contingut
Hem ampliat la nostra funció netcat per adoptar un tercer paràmetre, el "contingut". Aquí hi ha molt de contingut, així que desglossem-lo per número de línia.
Línia 14-16: enviem tot el contingut a través del sòcol, esperem una mica i, a continuació, tanquem el sòcol a qualsevol dada de sortida perquè el sòcol sàpiga que no hi arribaran més dades.
Línia 18-26: creem una memòria intermèdia per emmagatzemar la resposta del servidor i, mentre el sòcol rep dades, afegim fins a 1024 bytes de dades al resultat sempre que hi hagi dades per llegir.
Línia 28-29: volem que aquesta connexió netcat sigui una connexió única, de manera que declarem la connexió tancada i després la tanquem.
Línia 31: es tracta d'una sol·licitud HTTP estàndard. Si executeu el codi amb els arguments de la línia d'ordres "google.com" i "80", veureu una resposta HTTP adequada
Pas 5: Permet tenir una connexió oberta
El codi anterior (que es troba a sota del codi de la secció anterior) simplement ens permet executar ordres multcat netcat mitjançant una connexió pseudoberta. (En realitat, cada vegada que executeu una ordre, s'obre i tanca una nova connexió TCP, de manera que no emula realment el comportament de netcat, simplement ho fem amb finalitats d'aprenentatge). Anem a desglossar aquesta línia també per línia:
Línia 31: volem llegir ordres de manera indefinida per mantenir la "interactivitat"
Línia 32: aquest és el nostre buffer que emmagatzemarà el contingut de la nostra sol·licitud
Línia 36-45: llegirem a la memòria intermèdia fins que llegim una línia buida
Línia 48: simplement anomenem la nostra funció netcat amb el nom d'amfitrió, el port i el contingut de nova creació (que està codificat correctament)
Línia 50: si el contingut del nostre buffer mai conté "Connection: Close" (que indica que volem tancar la connexió), simplement sortim del bucle
Pas 6: Conclusió
Al final d'aquest tutorial, hauríeu de tenir una implementació de netcat mínima de treball. Deixaré com a exercici a l’usuari implementar funcions com:
1. suportant altres protocols
2. corregint el codi per no tancar la connexió cada vegada
3. afegint indicadors que Netcat ja té per modificar el comportament
Recomanat:
Sincronització de carpetes amb Python: 5 passos
Sincronització de carpetes amb Python: aquest instructiu us mostrarà com mantenir sincronitzades dues carpetes (i totes les carpetes que contenen) perquè una sigui una còpia directa de l’altra. Ideal per fer còpies de seguretat de treballs tant a nivell local, com a servidor de núvol / xarxa o una unitat USB. No hi ha experiència amb la programació
Joc Python Tic Tac Toe: 4 passos
Joc Python Tic Tac Toe: joc Python tic tac toe, aquest joc està fet en python que és un llenguatge informàtic, he utilitzat un editor Python anomenat: pycharm, també podeu utilitzar un editor normal de codi Python
Atendente Automático Com Python No Google Colab: 5 Passos
Atendente Automático Com Python No Google Colab: Olà pessoal! Tudo bem? Meu nome é Guilherme, Nesse projecto we vamos learn as criar um ChatBot using a Linguagem de programação Python e o Google Colab! Sou aluno da https://orbe.ai/ - Escola d'Inteligencia Artificial Infinita e esse projeto
Netcat Fun !: 5 passos
Netcat Fun !: Aquest instructiu us mostra com crear una porta posterior en un ordinador amb netcat. Us mostraré dues maneres de fer-ho, amb i sense el meu fitxer per lots que us ho automatitzi. Aquesta instrucció ja suposa que ja teniu permisos d'arrel
Més diversió amb Netcat !!: 4 passos
Més diversió amb Netcat !!: Ara, si no heu llegit la guia de la cinta conductora de Netcat Backdoors, llegiu-la i vingueu aquí. Aquest instructable repassa les ordres bàsiques del netcat i com utilitzar-les. També repassa algunes ordres bàsiques per lots