import socket with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as socket_server: socket_server.connect(("77.222.42.207", 1337)) socket_server.send("get_flag".encode()) server_unswer = (socket_server.recv(1024)).decode() print(server_unswer) while (messsage := input("Я: ")) != "exit": socket_server.send(messsage.encode()) messsage = socket_server.recv(1024) messsage = messsage.decode() print(messsage)
I’m trying to send a string to the server, but I can’t send the data and get a response, what’s the problem, please help.
When I connect to the server via netcat, everything is fine.
Advertisement
Answer
import socket with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as socket_server: socket_server.connect(("77.222.42.207", 1337)) server_unswer = (socket_server.recv(1024)).decode() print(server_unswer) socket_server.send("get_flagn".encode()) server_unswer = (socket_server.recv(1024)).decode() print(server_unswer)
I was finally able to get a response from the server, it was because NetCat automatically adds n when sending text and the command on the server worked, but I did not add this character when sending text 🤦
I had to figure out how to use Wireshark to figure it out)