From ec29b5cde0dec32d78a948bf54665143ec3ed631 Mon Sep 17 00:00:00 2001 From: Manuel Vergara Date: Thu, 11 Jan 2024 20:26:58 +0100 Subject: [PATCH] =?UTF-8?q?Update=20Python=20Ofensivo=20-=20Pruebas=20de?= =?UTF-8?q?=20conexi=C3=B3n=20con=20la=20librer=C3=ADa=20socket?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../01_socket/client.py | 23 +++++++++++ .../01_socket/server.py | 39 ++++++++++++++++++ .../02_socket/client.py | 27 ++++++++++++ .../02_socket/server.py | 41 +++++++++++++++++++ 4 files changed, 130 insertions(+) create mode 100644 python-ofensivo/07_conexiones_red_protocolos/01_socket/client.py create mode 100644 python-ofensivo/07_conexiones_red_protocolos/01_socket/server.py create mode 100644 python-ofensivo/07_conexiones_red_protocolos/02_socket/client.py create mode 100644 python-ofensivo/07_conexiones_red_protocolos/02_socket/server.py diff --git a/python-ofensivo/07_conexiones_red_protocolos/01_socket/client.py b/python-ofensivo/07_conexiones_red_protocolos/01_socket/client.py new file mode 100644 index 0000000..a45c062 --- /dev/null +++ b/python-ofensivo/07_conexiones_red_protocolos/01_socket/client.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python3 +""" +Client socket + +Con errores. 02_socket es la versión corregida. +""" + +import socket + +client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) +server_address = ('localhost', 1234) +client_socket.connect(server_address) + +try: + + message = b"Ola k ase servidor" + client_socket.sendall(message) + data = client_socket.recv(1024) + print(f"[i] Mensaje de {server_address}:\n\t{data.decode()}") + +finally: + + client_socket.close() diff --git a/python-ofensivo/07_conexiones_red_protocolos/01_socket/server.py b/python-ofensivo/07_conexiones_red_protocolos/01_socket/server.py new file mode 100644 index 0000000..75bc88c --- /dev/null +++ b/python-ofensivo/07_conexiones_red_protocolos/01_socket/server.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python3 +""" +Servidor socket + +Con errores. 02_socket es la versión corregida. +""" + +import socket + +# Crear un socket TCP/IP +server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) +# Enlazar el socket con el puerto +server_address = ("localhost", 1234) +# Asignar una dirección y un puerto al socket +server_socket.bind(server_address) +# Limitar el número de conexiones entrantes +server_socket.listen(1) + +# Esperar a que lleguen conexiones +while True: + + print(" Esperando conexión...") + # Aceptar una conexión + client_socket, client_address = server_socket.accept() + # Formato de datos recibidos + data = client_socket.recv(1024) + + # Imprimir información de la conexión + print(f"[+] Cliente conectado desde: {client_address}") + # Imprimir datos recibidos + print(f"[i] Mensaje de {client_address}:\n\t{data.decode()}") + + # Enviar datos a cliente + client_socket.sendall(f"Ola k ase client\n".encode()) + + print("[!] Conexión cerrada") + client_socket.close() + + server_socket.close() diff --git a/python-ofensivo/07_conexiones_red_protocolos/02_socket/client.py b/python-ofensivo/07_conexiones_red_protocolos/02_socket/client.py new file mode 100644 index 0000000..719d5e1 --- /dev/null +++ b/python-ofensivo/07_conexiones_red_protocolos/02_socket/client.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python3 +""" +Client socket + +""" + +import socket + + +def start_client(): + + host = 'localhost' + port = 1234 + + with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: + + s.connect((host, port)) + + print(f"[*] Conexión establecida con {host}:{port}") + + s.sendall("Ola k ase server!\n".encode()) + data = s.recv(1024) + + print(f"[i] Mensaje de {host}:{port}:\n\t{data.decode()}") + + +start_client() diff --git a/python-ofensivo/07_conexiones_red_protocolos/02_socket/server.py b/python-ofensivo/07_conexiones_red_protocolos/02_socket/server.py new file mode 100644 index 0000000..680a418 --- /dev/null +++ b/python-ofensivo/07_conexiones_red_protocolos/02_socket/server.py @@ -0,0 +1,41 @@ +#!/usr/bin/env python3 +""" +Server socket +""" + +import socket + + +def start_server(): + + host = 'localhost' + port = 1234 + + with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: + + s.bind((host, port)) + s.listen(1) + print(f"[*] Servidor en escucha en {host}:{port}") + + conn, addr = s.accept() + print(f"[+] {addr} Conectado.") + + with conn: + + print(f"[*] Conexión establecida con {addr}") + + while True: + + data = conn.recv(1024) + + if not data: + break + + conn.sendall(data) + + print(f"[i] Mensaje de {addr}:\n\t{data.decode()}") + + conn.sendall(f"Ola k ase client!\n".encode()) + + +start_server()