Socket爬坑日记一

开始总是分分钟都妙不可言,谁都以为热情它永不会减。——《阴天》

前言

  1. 反弹 shell 到服务器。
  2. 客户端连接服务器, 发送 bash 命令。
  3. 客户端发送命令作为数据给服务端时, 需要在末尾添加 ‘\n’, 否则服务端不会将该数据作为命令处理。

上代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import socket
import time

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("192.168.30.169", 8888))

while True:
data = input('> ')
data = data + '\n' # 就是这里,记得加一个换行符啊!
print(data.encode())

if not data:
break

s.send(data.encode())
r = ""

while True:
t = s.recv(1024).decode()
r += t
print('-----')
print(t)
time.sleep(1)