mirror of
https://github.com/yuanyuanxiang/SimpleRemoter.git
synced 2026-01-21 23:13:08 +08:00
style: Change files encoding format to UTF8-BOM
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
#pragma once
|
||||
#pragma once
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <iosfwd>
|
||||
@@ -17,7 +17,7 @@
|
||||
#include <corecrt_io.h>
|
||||
#define MVirtualFree(a1, a2, a3) VirtualFree(a1, a2, a3)
|
||||
#define MVirtualAlloc(a1, a2, a3, a4) VirtualAlloc(a1, a2, a3, a4)
|
||||
#else // ʹ<EFBFBD>ø<EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> LINUX <20><><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
|
||||
#else // 使得该头文件在 LINUX 正常使用
|
||||
#include <thread>
|
||||
#define strcat_s strcat
|
||||
#define sprintf_s sprintf
|
||||
@@ -67,7 +67,7 @@ typedef void* LPVOID, * HANDLE;
|
||||
#define _MAX_PATH 260
|
||||
#endif
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD>Ψһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɷ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 以下2个数字需全局唯一,否则在生成服务时会出问题
|
||||
|
||||
#define FLAG_FINDEN "Hello, World!"
|
||||
|
||||
@@ -100,12 +100,12 @@ inline int isValid_10s()
|
||||
return span <= 10;
|
||||
}
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Է<EFBFBD><EFBFBD><EFBFBD><EFBFBD>仯ʱ<EFBFBD><EFBFBD>Ӧ<EFBFBD>ø<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD>س<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define DLL_VERSION __DATE__ // DLL<EFBFBD>汾
|
||||
// 当程序功能明显发生变化时,应该更新这个值,以便对被控程序进行区分
|
||||
#define DLL_VERSION __DATE__ // DLL版本
|
||||
|
||||
#define TALK_DLG_MAXLEN 1024 // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define TALK_DLG_MAXLEN 1024 // 最大输入字符长度
|
||||
|
||||
// <EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD>״̬: 1-<2D><><EFBFBD>ض<EFBFBD><D8B6>˳<EFBFBD> 2-<2D><><EFBFBD>ض<EFBFBD><D8B6>˳<EFBFBD>
|
||||
// 客户端状态: 1-被控端退出 2-主控端退出
|
||||
enum State {
|
||||
S_CLIENT_NORMAL = 0,
|
||||
S_CLIENT_EXIT = 1,
|
||||
@@ -113,165 +113,165 @@ enum State {
|
||||
S_CLIENT_UPDATE = 3,
|
||||
};
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
// 命令枚举列表
|
||||
enum {
|
||||
// <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>䷽ʽ
|
||||
TRANSFER_MODE_NORMAL = 0x00, // һ<EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD><D8BB><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD>Ѿ<EFBFBD><D1BE>У<EFBFBD>ȡ<EFBFBD><C8A1>
|
||||
TRANSFER_MODE_ADDITION, // <EFBFBD><EFBFBD>
|
||||
TRANSFER_MODE_ADDITION_ALL, // ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TRANSFER_MODE_OVERWRITE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TRANSFER_MODE_OVERWRITE_ALL, // ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TRANSFER_MODE_JUMP, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TRANSFER_MODE_JUMP_ALL, // ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TRANSFER_MODE_CANCEL, // ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 文件传输方式
|
||||
TRANSFER_MODE_NORMAL = 0x00, // 一般,如果本地或者远程已经有,取消
|
||||
TRANSFER_MODE_ADDITION, // 追加
|
||||
TRANSFER_MODE_ADDITION_ALL, // 全部追加
|
||||
TRANSFER_MODE_OVERWRITE, // 覆盖
|
||||
TRANSFER_MODE_OVERWRITE_ALL, // 全部覆盖
|
||||
TRANSFER_MODE_JUMP, // 覆盖
|
||||
TRANSFER_MODE_JUMP_ALL, // 全部覆盖
|
||||
TRANSFER_MODE_CANCEL, // 取消传送
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD>ƶ˷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_ACTIVED = 0x00, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_LIST_DRIVE, // <EFBFBD>г<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ¼
|
||||
COMMAND_LIST_FILES, // <EFBFBD>г<EFBFBD>Ŀ¼<EFBFBD>е<EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
COMMAND_DOWN_FILES, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
COMMAND_FILE_SIZE, // <EFBFBD>ϴ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>С
|
||||
COMMAND_FILE_DATA, // <EFBFBD>ϴ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_EXCEPTION, // <EFBFBD><EFBFBD><EFBFBD>䷢<EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>´<EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_CONTINUE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_STOP, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹ
|
||||
COMMAND_DELETE_FILE, // ɾ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
COMMAND_DELETE_DIRECTORY, // ɾ<EFBFBD><EFBFBD>Ŀ¼
|
||||
COMMAND_SET_TRANSFER_MODE, // <EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><EFBFBD>䷽ʽ
|
||||
COMMAND_CREATE_FOLDER, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_RENAME_FILE, // <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_OPEN_FILE_SHOW, // <EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
COMMAND_OPEN_FILE_HIDE, // <EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
// 控制端发出的命令
|
||||
COMMAND_ACTIVED = 0x00, // 服务端可以激活开始工作
|
||||
COMMAND_LIST_DRIVE, // 列出磁盘目录
|
||||
COMMAND_LIST_FILES, // 列出目录中的文件
|
||||
COMMAND_DOWN_FILES, // 下载文件
|
||||
COMMAND_FILE_SIZE, // 上传时的文件大小
|
||||
COMMAND_FILE_DATA, // 上传时的文件数据
|
||||
COMMAND_EXCEPTION, // 传输发生异常,需要重新传输
|
||||
COMMAND_CONTINUE, // 传输正常,请求继续发送数据
|
||||
COMMAND_STOP, // 传输中止
|
||||
COMMAND_DELETE_FILE, // 删除文件
|
||||
COMMAND_DELETE_DIRECTORY, // 删除目录
|
||||
COMMAND_SET_TRANSFER_MODE, // 设置传输方式
|
||||
COMMAND_CREATE_FOLDER, // 创建文件夹
|
||||
COMMAND_RENAME_FILE, // 文件或文件改名
|
||||
COMMAND_OPEN_FILE_SHOW, // 显示打开文件
|
||||
COMMAND_OPEN_FILE_HIDE, // 隐藏打开文件
|
||||
|
||||
COMMAND_SCREEN_SPY, // <EFBFBD><EFBFBD>Ļ<EFBFBD>鿴
|
||||
COMMAND_SCREEN_RESET, // <EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_ALGORITHM_RESET, // <EFBFBD>ı<EFBFBD><EFBFBD>㷨
|
||||
COMMAND_SCREEN_CTRL_ALT_DEL, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ctrl+Alt+Del
|
||||
COMMAND_SCREEN_CONTROL, // <EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SCREEN_BLOCK_INPUT, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SCREEN_BLANK, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SCREEN_CAPTURE_LAYER, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SCREEN_GET_CLIPBOARD, // <EFBFBD><EFBFBD>ȡԶ<EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SCREEN_SET_CLIPBOARD, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SCREEN_SPY, // 屏幕查看
|
||||
COMMAND_SCREEN_RESET, // 改变屏幕深度
|
||||
COMMAND_ALGORITHM_RESET, // 改变算法
|
||||
COMMAND_SCREEN_CTRL_ALT_DEL, // 发送Ctrl+Alt+Del
|
||||
COMMAND_SCREEN_CONTROL, // 屏幕控制
|
||||
COMMAND_SCREEN_BLOCK_INPUT, // 锁定服务端键盘鼠标输入
|
||||
COMMAND_SCREEN_BLANK, // 服务端黑屏
|
||||
COMMAND_SCREEN_CAPTURE_LAYER, // 捕捉层
|
||||
COMMAND_SCREEN_GET_CLIPBOARD, // 获取远程剪贴版
|
||||
COMMAND_SCREEN_SET_CLIPBOARD, // 设置远程剪帖版
|
||||
|
||||
COMMAND_WEBCAM, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
|
||||
COMMAND_WEBCAM_ENABLECOMPRESS, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>H263ѹ<EFBFBD><EFBFBD>
|
||||
COMMAND_WEBCAM_DISABLECOMPRESS, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ԭʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
|
||||
COMMAND_WEBCAM_RESIZE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>ʣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>INT<EFBFBD>͵Ŀ<EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_NEXT, // <EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>(<28><><EFBFBD>ƶ<EFBFBD><C6B6>Ѿ<EFBFBD><D1BE>Ի<F2BFAAB6><D4BB><EFBFBD>)
|
||||
COMMAND_WEBCAM, // 摄像头
|
||||
COMMAND_WEBCAM_ENABLECOMPRESS, // 摄像头数据要求经过H263压缩
|
||||
COMMAND_WEBCAM_DISABLECOMPRESS, // 摄像头数据要求原始高清模式
|
||||
COMMAND_WEBCAM_RESIZE, // 摄像头调整分辩率,后面跟两个INT型的宽高
|
||||
COMMAND_NEXT, // 下一步(控制端已经打开对话框)
|
||||
|
||||
COMMAND_KEYBOARD, // <EFBFBD><EFBFBD><EFBFBD>̼<EFBFBD>¼
|
||||
COMMAND_KEYBOARD_OFFLINE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̼<EFBFBD>¼
|
||||
COMMAND_KEYBOARD_CLEAR, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̼<EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_KEYBOARD, // 键盘记录
|
||||
COMMAND_KEYBOARD_OFFLINE, // 开启离线键盘记录
|
||||
COMMAND_KEYBOARD_CLEAR, // 清除键盘记录内容
|
||||
|
||||
COMMAND_AUDIO, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_AUDIO, // 语音监听
|
||||
|
||||
COMMAND_SYSTEM, // ϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>....<EFBFBD><EFBFBD>
|
||||
COMMAND_PSLIST, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
COMMAND_WSLIST, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
COMMAND_DIALUPASS, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_KILLPROCESS, // <EFBFBD>رս<EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SYSTEM, // 系统管理(进程,窗口....)
|
||||
COMMAND_PSLIST, // 进程列表
|
||||
COMMAND_WSLIST, // 窗口列表
|
||||
COMMAND_DIALUPASS, // 拨号密码
|
||||
COMMAND_KILLPROCESS, // 关闭进程
|
||||
COMMAND_SHELL, // cmdshell
|
||||
COMMAND_SESSION, // <EFBFBD>Ự<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>, ж<>أ<EFBFBD>
|
||||
COMMAND_REMOVE, // ж<EFBFBD>غ<EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_DOWN_EXEC, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4>
|
||||
COMMAND_UPLOAD_EXEC, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20>ϴ<EFBFBD>ִ<EFBFBD><D6B4>
|
||||
COMMAND_CLEAN_EVENT, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>־
|
||||
COMMAND_OPEN_URL_HIDE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD>ҳ
|
||||
COMMAND_OPEN_URL_SHOW, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ
|
||||
COMMAND_RENAME_REMARK, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע
|
||||
COMMAND_REPLAY_HEARTBEAT, // <EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SERVICES, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SESSION, // 会话管理(关机,重启,注销, 卸载)
|
||||
COMMAND_REMOVE, // 卸载后门
|
||||
COMMAND_DOWN_EXEC, // 其它功能 - 下载执行
|
||||
COMMAND_UPLOAD_EXEC, // 其它功能 - 上传执行
|
||||
COMMAND_CLEAN_EVENT, // 其它管理 - 清除系统日志
|
||||
COMMAND_OPEN_URL_HIDE, // 其它管理 - 隐藏打开网页
|
||||
COMMAND_OPEN_URL_SHOW, // 其它管理 - 显示打开网页
|
||||
COMMAND_RENAME_REMARK, // 重命名备注
|
||||
COMMAND_REPLAY_HEARTBEAT, // 回复心跳包
|
||||
COMMAND_SERVICES, // 服务管理
|
||||
COMMAND_REGEDIT,
|
||||
COMMAND_TALK, // <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>֤
|
||||
COMMAND_UPDATE = 53, // <EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SHARE = 59, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_PROXY = 60, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>
|
||||
TOKEN_SYSINFOLIST = 61, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_CHAT_START = 62, // Զ<EFBFBD>̽<EFBFBD≯
|
||||
TOKEN_UNINSTALL = 63, // ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_PRIVATESCREEN = 64, // <EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD>Ļ
|
||||
TOKEN_MACHINE_MANAGE = 65, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_GET_FOLDER = 66, // <EFBFBD><EFBFBD>ȡĿ¼
|
||||
COMMAND_GET_FILE = 67, // <EFBFBD><EFBFBD>ȡ<EFBFBD>ļ<EFBFBD>
|
||||
COMMAND_SEND_FILE = 68, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
COMMAND_TALK, // 即时消息验证
|
||||
COMMAND_UPDATE = 53, // 客户端升级
|
||||
COMMAND_SHARE = 59, // 分享主机
|
||||
COMMAND_PROXY = 60, // 代理映射
|
||||
TOKEN_SYSINFOLIST = 61, // 主机管理
|
||||
TOKEN_CHAT_START = 62, // 远程交谈
|
||||
TOKEN_UNINSTALL = 63, // 卸载主机
|
||||
TOKEN_PRIVATESCREEN = 64, // 隐私屏幕
|
||||
TOKEN_MACHINE_MANAGE = 65, // 机器管理
|
||||
COMMAND_GET_FOLDER = 66, // 获取目录
|
||||
COMMAND_GET_FILE = 67, // 获取文件
|
||||
COMMAND_SEND_FILE = 68, // 发送文件
|
||||
COMMAND_SWITCH_SCREEN = 69,
|
||||
CMD_MULTITHREAD_COMPRESS = 70,
|
||||
CMD_FPS = 71,
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˷<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>ʶ
|
||||
TOKEN_AUTH = 100, // Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤
|
||||
TOKEN_HEARTBEAT, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_LOGIN, // <EFBFBD><EFBFBD><EFBFBD>߰<EFBFBD>
|
||||
TOKEN_DRIVE_LIST, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
TOKEN_FILE_LIST, // <EFBFBD>ļ<EFBFBD><EFBFBD>б<EFBFBD>
|
||||
TOKEN_FILE_SIZE, // <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ʱ<EFBFBD><EFBFBD>
|
||||
TOKEN_FILE_DATA, // <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_TRANSFER_FINISH, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_DELETE_FINISH, // ɾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_GET_TRANSFER_MODE, // <EFBFBD>õ<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>䷽ʽ
|
||||
TOKEN_GET_FILEDATA, // Զ<EFBFBD>̵õ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_CREATEFOLDER_FINISH, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_DATA_CONTINUE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_RENAME_FINISH, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_EXCEPTION, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣
|
||||
// 服务端发出的标识
|
||||
TOKEN_AUTH = 100, // 要求验证
|
||||
TOKEN_HEARTBEAT, // 心跳包
|
||||
TOKEN_LOGIN, // 上线包
|
||||
TOKEN_DRIVE_LIST, // 驱动器列表
|
||||
TOKEN_FILE_LIST, // 文件列表
|
||||
TOKEN_FILE_SIZE, // 文件大小,传输文件时用
|
||||
TOKEN_FILE_DATA, // 文件数据
|
||||
TOKEN_TRANSFER_FINISH, // 传输完毕
|
||||
TOKEN_DELETE_FINISH, // 删除完毕
|
||||
TOKEN_GET_TRANSFER_MODE, // 得到文件传输方式
|
||||
TOKEN_GET_FILEDATA, // 远程得到本地文件数据
|
||||
TOKEN_CREATEFOLDER_FINISH, // 创建文件夹任务完成
|
||||
TOKEN_DATA_CONTINUE, // 继续传输数据
|
||||
TOKEN_RENAME_FINISH, // 改名操作完成
|
||||
TOKEN_EXCEPTION, // 操作发生异常
|
||||
|
||||
TOKEN_BITMAPINFO, // <EFBFBD><EFBFBD>Ļ<EFBFBD>鿴<EFBFBD><EFBFBD>BITMAPINFO
|
||||
TOKEN_FIRSTSCREEN, // <EFBFBD><EFBFBD>Ļ<EFBFBD>鿴<EFBFBD>ĵ<EFBFBD>һ<EFBFBD><EFBFBD>ͼ
|
||||
TOKEN_NEXTSCREEN, // <EFBFBD><EFBFBD>Ļ<EFBFBD>鿴<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>ͼ
|
||||
TOKEN_CLIPBOARD_TEXT, // <EFBFBD><EFBFBD>Ļ<EFBFBD>鿴ʱ<EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_BITMAPINFO, // 屏幕查看的BITMAPINFO
|
||||
TOKEN_FIRSTSCREEN, // 屏幕查看的第一张图
|
||||
TOKEN_NEXTSCREEN, // 屏幕查看的下一张图
|
||||
TOKEN_CLIPBOARD_TEXT, // 屏幕查看时发送剪帖版内容
|
||||
|
||||
TOKEN_WEBCAM_BITMAPINFO, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD>BITMAPINFOHEADER
|
||||
TOKEN_WEBCAM_DIB, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_WEBCAM_BITMAPINFO, // 摄像头的BITMAPINFOHEADER
|
||||
TOKEN_WEBCAM_DIB, // 摄像头的图像数据
|
||||
|
||||
TOKEN_AUDIO_START, // <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_AUDIO_DATA, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_AUDIO_START, // 开始语音监听
|
||||
TOKEN_AUDIO_DATA, // 语音监听数据
|
||||
|
||||
TOKEN_KEYBOARD_START, // <EFBFBD><EFBFBD><EFBFBD>̼<EFBFBD>¼<EFBFBD><EFBFBD>ʼ
|
||||
TOKEN_KEYBOARD_DATA, // <EFBFBD><EFBFBD><EFBFBD>̼<EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_KEYBOARD_START, // 键盘记录开始
|
||||
TOKEN_KEYBOARD_DATA, // 键盘记录的数据
|
||||
|
||||
TOKEN_PSLIST, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
TOKEN_WSLIST, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
TOKEN_DIALUPASS, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_SHELL_START, // Զ<EFBFBD><EFBFBD><EFBFBD>ն˿<EFBFBD>ʼ
|
||||
TOKEN_SERVERLIST, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
COMMAND_SERVICELIST, // ˢ<EFBFBD>·<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
COMMAND_SERVICECONFIG, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˷<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>ʶ
|
||||
TOKEN_TALK_START, // <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>ʼ
|
||||
TOKEN_TALKCMPLT, // <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD>
|
||||
TOKEN_KEYFRAME=134, // <EFBFBD>ؼ<EFBFBD>֡
|
||||
TOKEN_BITMAPINFO_HIDE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ
|
||||
TOKEN_SCREEN_SIZE, // <EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD>С
|
||||
TOKEN_DRIVE_LIST_PLUGIN = 150, // <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>)
|
||||
TOKEN_DRAWING_BOARD=151, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_PSLIST, // 进程列表
|
||||
TOKEN_WSLIST, // 窗口列表
|
||||
TOKEN_DIALUPASS, // 拨号密码
|
||||
TOKEN_SHELL_START, // 远程终端开始
|
||||
TOKEN_SERVERLIST, // 服务列表
|
||||
COMMAND_SERVICELIST, // 刷新服务列表
|
||||
COMMAND_SERVICECONFIG, // 服务端发出的标识
|
||||
TOKEN_TALK_START, // 即时消息开始
|
||||
TOKEN_TALKCMPLT, // 即时消息可重发
|
||||
TOKEN_KEYFRAME=134, // 关键帧
|
||||
TOKEN_BITMAPINFO_HIDE, // 虚拟屏幕
|
||||
TOKEN_SCREEN_SIZE, // 屏幕大小
|
||||
TOKEN_DRIVE_LIST_PLUGIN = 150, // 文件管理(插件)
|
||||
TOKEN_DRAWING_BOARD=151, // 画板
|
||||
|
||||
TOKEN_DECRYPT = 199,
|
||||
TOKEN_REGEDIT = 200, // ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_REG_FIND, // ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ
|
||||
TOKEN_REGEDIT = 200, // 注册表
|
||||
COMMAND_REG_FIND, // 注册表 管理标识
|
||||
TOKEN_REG_KEY,
|
||||
TOKEN_REG_PATH,
|
||||
COMMAND_BYE, // <EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD>˳<EFBFBD>
|
||||
SERVER_EXIT=205, // <EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD>˳<EFBFBD>
|
||||
COMMAND_BYE, // 被控端退出
|
||||
SERVER_EXIT=205, // 主控端退出
|
||||
|
||||
COMMAND_CC, // CC
|
||||
COMMAND_ASSIGN_MASTER, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_FILE_DETECT, // <EFBFBD>ļ<EFBFBD>̽<EFBFBD><EFBFBD>
|
||||
COMMAND_FILE_REPORT, // <EFBFBD>ļ<EFBFBD><EFBFBD>ϱ<EFBFBD>
|
||||
COMMAND_ASSIGN_MASTER, // 分配主控
|
||||
COMMAND_FILE_DETECT, // 文件探测
|
||||
COMMAND_FILE_REPORT, // 文件上报
|
||||
|
||||
SOCKET_DLLLOADER=210, // <EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DLL
|
||||
CMD_DLLDATA, // <EFBFBD><EFBFBD>ӦDLL<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CMD_RUNASADMIN=214, // ADMIN <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CMD_MASTERSETTING = 215, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CMD_HEARTBEAT_ACK = 216, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
|
||||
SOCKET_DLLLOADER=210, // 客户端请求DLL
|
||||
CMD_DLLDATA, // 响应DLL数据
|
||||
CMD_RUNASADMIN=214, // ADMIN 运行
|
||||
CMD_MASTERSETTING = 215, // 主控设置
|
||||
CMD_HEARTBEAT_ACK = 216, // 心跳回应
|
||||
CMD_PADDING =217,
|
||||
CMD_AUTHORIZATION = 222, // <EFBFBD><EFBFBD>Ȩ
|
||||
CMD_SERVER_ADDR = 229, // <EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>ַ
|
||||
TOKEN_ERROR = 230, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
||||
TOKEN_SHELL_DATA = 231, // <EFBFBD>ն˽<EFBFBD><EFBFBD><EFBFBD>
|
||||
CMD_EXECUTE_DLL = 240, // ִ<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD>
|
||||
TOKEN_CLIENT_MSG = 241, // <EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
CMD_SET_GROUP = 242, // <EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD>
|
||||
CMD_EXECUTE_DLL_NEW = 243, // ִ<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD>
|
||||
CMD_AUTHORIZATION = 222, // 授权
|
||||
CMD_SERVER_ADDR = 229, // 主控地址
|
||||
TOKEN_ERROR = 230, // 错误提示
|
||||
TOKEN_SHELL_DATA = 231, // 终端结果
|
||||
CMD_EXECUTE_DLL = 240, // 执行代码
|
||||
TOKEN_CLIENT_MSG = 241, // 客户端消息
|
||||
CMD_SET_GROUP = 242, // 修改分组
|
||||
CMD_EXECUTE_DLL_NEW = 243, // 执行代码
|
||||
};
|
||||
|
||||
enum MachineCommand {
|
||||
@@ -291,15 +291,15 @@ enum ProxyManager {
|
||||
COMMAND_PROXY_CONNECT_HOSTNAME,
|
||||
};
|
||||
|
||||
// <EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 后台屏幕其他命令
|
||||
enum HideScreenSpy {
|
||||
COMMAND_FLUSH_HIDE, // ˢ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ
|
||||
COMMAND_SCREEN_SETSCREEN_HIDE, // <EFBFBD><EFBFBD><EFBFBD>÷ֱ<EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_HIDE_USER, // <EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_HIDE_CLEAR, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨
|
||||
COMMAND_COMMAND_SCREENUALITY60_HIDE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_COMMAND_SCREENUALITY85_HIDE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_COMMAND_SCREENUALITY100_HIDE, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_FLUSH_HIDE, // 刷新屏幕
|
||||
COMMAND_SCREEN_SETSCREEN_HIDE, // 重置分辨率
|
||||
COMMAND_HIDE_USER, // 自定义命令
|
||||
COMMAND_HIDE_CLEAR, // 清理后台
|
||||
COMMAND_COMMAND_SCREENUALITY60_HIDE, // 清晰度
|
||||
COMMAND_COMMAND_SCREENUALITY85_HIDE, // 清晰度
|
||||
COMMAND_COMMAND_SCREENUALITY100_HIDE, // 清晰度
|
||||
|
||||
IDM_OPEN_Explorer = 33,
|
||||
IDM_OPEN_run,
|
||||
@@ -328,7 +328,7 @@ struct ZdyCmd {
|
||||
char cmdline[_MAX_PATH];
|
||||
};
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 解密数据
|
||||
enum DecryptCommand {
|
||||
COMMAND_LLQ_GetChromePassWord,
|
||||
COMMAND_LLQ_GetEdgePassWord,
|
||||
@@ -341,11 +341,11 @@ enum DecryptCommand {
|
||||
|
||||
typedef DecryptCommand BroType;
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD>
|
||||
#define CMD_WINDOW_CLOSE 0 // <EFBFBD>رմ<EFBFBD><EFBFBD><EFBFBD>
|
||||
#define CMD_WINDOW_TEST 1 // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 这是服务管理页面既有定义
|
||||
#define CMD_WINDOW_CLOSE 0 // 关闭窗口
|
||||
#define CMD_WINDOW_TEST 1 // 操作窗口
|
||||
|
||||
// MachineManager ϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>, ǰ<><C7B0><EFBFBD><EFBFBD>ö<EFBFBD><C3B6>ֵ˳<D6B5><EFBFBD><F2B2BBB5><EFBFBD>
|
||||
// MachineManager 系统管理, 前几个枚举值顺序不得修改
|
||||
enum MachineManager {
|
||||
COMMAND_MACHINE_PROCESS,
|
||||
COMMAND_MACHINE_WINDOWS,
|
||||
@@ -356,16 +356,16 @@ enum MachineManager {
|
||||
COMMAND_MACHINE_WIN32SERVICE,
|
||||
COMMAND_MACHINE_DRIVERSERVICE,
|
||||
COMMAND_MACHINE_TASK,
|
||||
COMMAND_MACHINE_HOSTS, //<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_MACHINE_HOSTS, //不能乱序号
|
||||
|
||||
COMMAND_APPUNINSTALL,//ж<EFBFBD><EFBFBD>
|
||||
COMMAND_WINDOW_OPERATE,//<EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_WINDOW_CLOSE,//<EFBFBD>ر<EFBFBD>
|
||||
COMMAND_PROCESS_KILL,//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_PROCESS_KILLDEL,//<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>----ɾ<EFBFBD><EFBFBD>
|
||||
COMMAND_PROCESS_DEL,//ǿ<EFBFBD><EFBFBD>ɾ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_PROCESS_FREEZING,//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_PROCESS_THAW,//<EFBFBD>ⶳ
|
||||
COMMAND_APPUNINSTALL,//卸载
|
||||
COMMAND_WINDOW_OPERATE,//窗口控制
|
||||
COMMAND_WINDOW_CLOSE,//关闭
|
||||
COMMAND_PROCESS_KILL,//结束进程
|
||||
COMMAND_PROCESS_KILLDEL,//结束进程----删除
|
||||
COMMAND_PROCESS_DEL,//强制删除 不需要结束进程
|
||||
COMMAND_PROCESS_FREEZING,//冻结
|
||||
COMMAND_PROCESS_THAW,//解冻
|
||||
COMMAND_HOSTS_SET,//hosts
|
||||
|
||||
COMMAND_SERVICE_LIST_WIN32,
|
||||
@@ -407,7 +407,7 @@ struct WINDOWSINFO {
|
||||
int h;
|
||||
};
|
||||
|
||||
// Զ<EFBFBD>̽<EFBFBD≯
|
||||
// 远程交谈
|
||||
enum ChatManager {
|
||||
COMMAND_NEXT_CHAT,
|
||||
COMMAND_CHAT_CLOSE,
|
||||
@@ -415,7 +415,7 @@ enum ChatManager {
|
||||
COMMAND_CHAT_SCREEN_UNLOCK,
|
||||
};
|
||||
|
||||
// <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 文件管理
|
||||
enum FileManager {
|
||||
COMMAND_COMPRESS_FILE_PARAM=220,
|
||||
COMMAND_FILES_SEARCH_START,
|
||||
@@ -458,7 +458,7 @@ enum FileManager {
|
||||
TOKEN_FILE_SEARCHPLUS_NUMBER,
|
||||
};
|
||||
|
||||
// Զ<EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD>
|
||||
// 远程画板
|
||||
enum RemoteDraw {
|
||||
CMD_DRAW_POINT = 0,
|
||||
CMD_DRAW_END = 1,
|
||||
@@ -471,19 +471,19 @@ enum RemoteDraw {
|
||||
};
|
||||
|
||||
enum {
|
||||
CLIENT_TYPE_DLL = 0, // <EFBFBD>ͻ<EFBFBD><EFBFBD>˴<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DLL<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CLIENT_TYPE_ONE = 1, // <EFBFBD>ͻ<EFBFBD><EFBFBD>˴<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD><EFBFBD><EFBFBD>EXE<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CLIENT_TYPE_MEMEXE = -1, // <EFBFBD>ڴ<EFBFBD>EXE<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CLIENT_TYPE_MODULE = 2, // DLL<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ⲿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CLIENT_TYPE_DLL = 0, // 客户端代码以DLL运行
|
||||
CLIENT_TYPE_ONE = 1, // 客户端代码以单个EXE运行
|
||||
CLIENT_TYPE_MEMEXE = -1, // 内存EXE运行
|
||||
CLIENT_TYPE_MODULE = 2, // DLL需由外部程序调用
|
||||
CLIENT_TYPE_SHELLCODE = 4, // Shellcode
|
||||
CLIENT_TYPE_MEMDLL = 5, // <EFBFBD>ڴ<EFBFBD>DLL<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CLIENT_TYPE_LINUX = 6, // LINUX <EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD>
|
||||
CLIENT_TYPE_MEMDLL = 5, // 内存DLL运行
|
||||
CLIENT_TYPE_LINUX = 6, // LINUX 客户端
|
||||
};
|
||||
|
||||
enum {
|
||||
SHARE_TYPE_YAMA = 0, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
SHARE_TYPE_HOLDINGHANDS = 1, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> HoldingHands: https://github.com/yuanyuanxiang/HoldingHands
|
||||
SHARE_TYPE_YAMA_FOREVER = 100, // <EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><EFBFBD><EFBFBD>
|
||||
SHARE_TYPE_YAMA = 0, // 分享给同类程序
|
||||
SHARE_TYPE_HOLDINGHANDS = 1, // 分享给 HoldingHands: https://github.com/yuanyuanxiang/HoldingHands
|
||||
SHARE_TYPE_YAMA_FOREVER = 100, // 永久分享
|
||||
};
|
||||
|
||||
inline const char* GetClientType(int typ)
|
||||
@@ -534,21 +534,21 @@ inline int compareDates(const std::string& date1, const std::string& date2)
|
||||
return 0;
|
||||
} catch (const std::exception& e) {
|
||||
std::cerr << "Date parse error: " << e.what() << std::endl;
|
||||
return -2; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
return -2; // 返回特殊值表示出错
|
||||
}
|
||||
}
|
||||
|
||||
// <EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ClientType<EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫһ<EFBFBD>£<EFBFBD>רΪ`TestRun`<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`ServerDll`<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
|
||||
// `TestRun` ֻ<EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>о<EFBFBD>Ŀ<EFBFBD><EFBFBD>
|
||||
// 此枚举值和ClientType相似,但又不是完全一致,专为`TestRun`定制
|
||||
// 指本质上运行`ServerDll`的形式
|
||||
// `TestRun` 只用于技术研究目的
|
||||
enum TestRunType {
|
||||
Startup_DLL, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>DLL
|
||||
Startup_MEMDLL, // <EFBFBD>ڴ<EFBFBD>DLL<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>
|
||||
Startup_InjDLL, // Զ<EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD> DLL<4C><4C>ע<EFBFBD><D7A2>DLL·<4C><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DLL<EFBFBD><EFBFBD>
|
||||
Startup_Shellcode, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Shell code <EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>shell code <EFBFBD><EFBFBD>
|
||||
Startup_InjSC, // Զ<EFBFBD><EFBFBD> Shell code <EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>shell code <EFBFBD><EFBFBD>
|
||||
Startup_GhostMsc, // Windows <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
Startup_TestRunMsc, // Windows <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
Startup_DLL, // 磁盘DLL
|
||||
Startup_MEMDLL, // 内存DLL(无磁盘文件)
|
||||
Startup_InjDLL, // 远程注入 DLL(注入DLL路径,仍依赖磁盘DLL)
|
||||
Startup_Shellcode, // 本地 Shell code (在当前程序执行shell code )
|
||||
Startup_InjSC, // 远程 Shell code (注入其他程序执行shell code )
|
||||
Startup_GhostMsc, // Windows 服务
|
||||
Startup_TestRunMsc, // Windows 服务
|
||||
};
|
||||
|
||||
inline int MemoryFind(const char* szBuffer, const char* Key, int iBufferSize, int iKeySize)
|
||||
@@ -565,7 +565,7 @@ enum ProtoType {
|
||||
PROTO_TCP = 0, // TCP
|
||||
PROTO_UDP = 1, // UDP
|
||||
PROTO_HTTP = 2, // HTTP
|
||||
PROTO_RANDOM = 3, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
PROTO_RANDOM = 3, // 随机
|
||||
PROTO_KCP = 4, // KCP
|
||||
PROTO_HTTPS = 5, // HTTPS
|
||||
};
|
||||
@@ -573,8 +573,8 @@ enum ProtoType {
|
||||
#define KCP_SESSION_ID 666
|
||||
|
||||
enum RunningType {
|
||||
RUNNING_RANDOM = 0, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
RUNNING_PARALLEL = 1, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
RUNNING_RANDOM = 0, // 随机上线
|
||||
RUNNING_PARALLEL = 1, // 并发上线
|
||||
};
|
||||
|
||||
enum ProtocolEncType {
|
||||
@@ -590,27 +590,27 @@ enum ClientCompressType {
|
||||
};
|
||||
|
||||
#pragma pack(push, 4)
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>س<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// 所连接的主控程序信息
|
||||
typedef struct CONNECT_ADDRESS {
|
||||
public:
|
||||
char szFlag[32]; // <EFBFBD><EFBFBD>ʶ
|
||||
char szServerIP[100]; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP
|
||||
char szPort[8]; // <EFBFBD><EFBFBD><EFBFBD>ض˿<EFBFBD>
|
||||
int iType; // <EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
bool bEncrypt; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char szBuildDate[12]; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>汾)
|
||||
int iMultiOpen; // ֧<EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD>
|
||||
int iStartup; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
|
||||
int iHeaderEnc; // <EFBFBD><EFBFBD><EFBFBD>ݼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char protoType; // Э<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char runningType; // <EFBFBD><EFBFBD><EFBFBD>з<EFBFBD>ʽ
|
||||
char szGroupName[24]; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char runasAdmin; // <EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char szReserved[11]; // ռλ<EFBFBD><EFBFBD>ʹ<EFBFBD>ṹ<EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>300<EFBFBD>ֽ<EFBFBD>
|
||||
uint64_t clientID; // <EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD>Ψһ<EFBFBD><EFBFBD>ʶ
|
||||
uint64_t parentHwnd; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̴<EFBFBD><EFBFBD>ھ<EFBFBD><EFBFBD><EFBFBD>
|
||||
uint64_t superAdmin; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
||||
char pwdHash[64]; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ
|
||||
char szFlag[32]; // 标识
|
||||
char szServerIP[100]; // 主控IP
|
||||
char szPort[8]; // 主控端口
|
||||
int iType; // 客户端类型
|
||||
bool bEncrypt; // 上线信息是否加密
|
||||
char szBuildDate[12]; // 构建日期(版本)
|
||||
int iMultiOpen; // 支持打开多个
|
||||
int iStartup; // 启动方式
|
||||
int iHeaderEnc; // 数据加密类型
|
||||
char protoType; // 协议类型
|
||||
char runningType; // 运行方式
|
||||
char szGroupName[24]; // 分组名称
|
||||
char runasAdmin; // 是否提升权限运行
|
||||
char szReserved[11]; // 占位,使结构体占据300字节
|
||||
uint64_t clientID; // 客户端唯一标识
|
||||
uint64_t parentHwnd; // 父进程窗口句柄
|
||||
uint64_t superAdmin; // 管理员主控ID
|
||||
char pwdHash[64]; // 密码哈希
|
||||
|
||||
public:
|
||||
void SetType(int typ)
|
||||
@@ -715,8 +715,8 @@ public:
|
||||
|
||||
#define FOREVER_RUN 2
|
||||
|
||||
// <EFBFBD>ͻ<EFBFBD><EFBFBD>˳<EFBFBD><EFBFBD><EFBFBD><EFBFBD>߳<EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ṹ<EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD>5<EFBFBD><35><EFBFBD><EFBFBD>Ա:
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬(run)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(h)<29><>ͨѶ<CDA8>ͻ<EFBFBD><CDBB><EFBFBD>(p)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߲<EFBFBD><DFB2><EFBFBD>(user)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ(conn).
|
||||
// 客户端程序线程信息结构体, 包含5个成员:
|
||||
// 运行状态(run)、句柄(h)、通讯客户端(p)、调用者参数(user)和连接信息(conn).
|
||||
struct ThreadInfo {
|
||||
int run;
|
||||
HANDLE h;
|
||||
@@ -740,27 +740,27 @@ struct ThreadInfo {
|
||||
};
|
||||
|
||||
struct PluginParam {
|
||||
char IP[100]; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP
|
||||
int Port; // <EFBFBD><EFBFBD><EFBFBD>ض˿<EFBFBD>
|
||||
const State *Exit; // <EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD>״̬
|
||||
const void* User; // CONNECT_ADDRESS* ָ<EFBFBD><EFBFBD>
|
||||
char IP[100]; // 主控IP
|
||||
int Port; // 主控端口
|
||||
const State *Exit; // 客户端状态
|
||||
const void* User; // CONNECT_ADDRESS* 指针
|
||||
PluginParam(const char*ip, int port, const State *s, const void* u=0) : Port(port), Exit(s), User(u)
|
||||
{
|
||||
strcpy_s(IP, ip);
|
||||
}
|
||||
};
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD>ָ<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 将字符串按指定字符分隔为向量
|
||||
inline std::vector<std::string> StringToVector(const std::string& str, char ch, int reserved = 1)
|
||||
{
|
||||
// ʹ<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>
|
||||
// 使用字符串流来分隔字符串
|
||||
std::istringstream stream(str);
|
||||
std::string item;
|
||||
std::vector<std::string> result;
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD>ֺŷָ<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>
|
||||
// 按分号分隔字符串
|
||||
while (std::getline(stream, item, ch)) {
|
||||
result.push_back(item); // <EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
result.push_back(item); // 将分隔出来的子字符串添加到结果向量中
|
||||
}
|
||||
while (result.size() < reserved)
|
||||
result.push_back("");
|
||||
@@ -769,40 +769,40 @@ inline std::vector<std::string> StringToVector(const std::string& str, char ch,
|
||||
}
|
||||
|
||||
enum LOGIN_RES {
|
||||
RES_CLIENT_TYPE = 0, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
RES_SYSTEM_BITS = 1, // ϵͳλ<EFBFBD><EFBFBD>
|
||||
RES_SYSTEM_CPU = 2, // CPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
RES_SYSTEM_MEM = 3, // ϵͳ<EFBFBD>ڴ<EFBFBD>
|
||||
RES_FILE_PATH = 4, // <EFBFBD>ļ<EFBFBD>·<EFBFBD><EFBFBD>
|
||||
RES_CLIENT_TYPE = 0, // 类型
|
||||
RES_SYSTEM_BITS = 1, // 系统位数
|
||||
RES_SYSTEM_CPU = 2, // CPU核数
|
||||
RES_SYSTEM_MEM = 3, // 系统内存
|
||||
RES_FILE_PATH = 4, // 文件路径
|
||||
RES_RESVERD = 5, // ?
|
||||
RES_INSTALL_TIME = 6, // <EFBFBD><EFBFBD>װʱ<EFBFBD><EFBFBD>
|
||||
RES_INSTALL_INFO = 7, // <EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD>Ϣ
|
||||
RES_PROGRAM_BITS = 8, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>
|
||||
RES_EXPIRED_DATE = 9, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
RES_CLIENT_LOC = 10, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>
|
||||
RES_CLIENT_PUBIP = 11, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
|
||||
RES_EXE_VERSION = 12, // EXE<EFBFBD>汾
|
||||
RES_USERNAME = 13, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
RES_ISADMIN = 14, // <EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD>ԱȨ<EFBFBD><EFBFBD>
|
||||
RES_INSTALL_TIME = 6, // 安装时间
|
||||
RES_INSTALL_INFO = 7, // 安装信息
|
||||
RES_PROGRAM_BITS = 8, // 程序位数
|
||||
RES_EXPIRED_DATE = 9, // 到期日期
|
||||
RES_CLIENT_LOC = 10, // 地理位置
|
||||
RES_CLIENT_PUBIP = 11, // 公网地址
|
||||
RES_EXE_VERSION = 12, // EXE版本
|
||||
RES_USERNAME = 13, // 电脑用户名称
|
||||
RES_ISADMIN = 14, // 是否具有管理员权限
|
||||
RES_MAX,
|
||||
};
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// <EFBFBD>˽ṹ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>仯<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>汾<EFBFBD>Ŀͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>°<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
// <EFBFBD>°<EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ汾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>س<EFBFBD><EFBFBD><EFBFBD>.
|
||||
// Ϊ<EFBFBD>ˣ<EFBFBD><EFBFBD><EFBFBD>20241228<EFBFBD>ύ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD>ֶΣ<EFBFBD><EFBFBD>Ա<EFBFBD>δ<EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ʱ֮<EFBFBD><EFBFBD>
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ˽ṹ<EFBFBD>壬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ټ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 服务上线后发送的计算机信息
|
||||
// 此结构体一旦发生变化(比如大小),则以前版本的客户端无法连接新版主控.
|
||||
// 新版客户端也无法连接老版本的主控程序.
|
||||
// 为此,自20241228提交以来,为这个结构体预留字段,以便未来之不时之需
|
||||
// 请勿再修改此结构体,除非你决定不再兼容以前的程序或者单独编写代码来兼容
|
||||
typedef struct LOGIN_INFOR {
|
||||
unsigned char bToken; // 1.<EFBFBD><EFBFBD>½<EFBFBD><EFBFBD>Ϣ
|
||||
char OsVerInfoEx[156]; // 2.<EFBFBD>汾<EFBFBD><EFBFBD>Ϣ
|
||||
unsigned int dwCPUMHz; // 3.CPU<EFBFBD><EFBFBD>Ƶ
|
||||
char moduleVersion[24]; // 4.DLLģ<EFBFBD><EFBFBD><EFBFBD>汾
|
||||
char szPCName[240]; // 5.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char szMasterID[20]; // 5.1 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
||||
int bWebCamIsExist; // 6.<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
|
||||
unsigned int dwSpeed; // 7.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char szStartTime[20]; // 8.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>
|
||||
char szReserved[512]; // 9.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>
|
||||
unsigned char bToken; // 1.登陆信息
|
||||
char OsVerInfoEx[156]; // 2.版本信息
|
||||
unsigned int dwCPUMHz; // 3.CPU主频
|
||||
char moduleVersion[24]; // 4.DLL模块版本
|
||||
char szPCName[240]; // 5.主机名
|
||||
char szMasterID[20]; // 5.1 主控ID
|
||||
int bWebCamIsExist; // 6.是否有摄像头
|
||||
unsigned int dwSpeed; // 7.网速
|
||||
char szStartTime[20]; // 8.启动时间
|
||||
char szReserved[512]; // 9.保留字段
|
||||
|
||||
LOGIN_INFOR()
|
||||
{
|
||||
@@ -854,7 +854,7 @@ inline uint64_t GetUnixMs()
|
||||
return system_ms.time_since_epoch().count();
|
||||
}
|
||||
|
||||
// <EFBFBD>̶<EFBFBD>1024<EFBFBD>ֽ<EFBFBD>
|
||||
// 固定1024字节
|
||||
typedef struct Heartbeat {
|
||||
uint64_t Time;
|
||||
char ActiveWnd[512];
|
||||
@@ -888,13 +888,13 @@ typedef struct HeartbeatACK {
|
||||
char Reserved[23];
|
||||
} HeartbeatACK;
|
||||
|
||||
// <EFBFBD>̶<EFBFBD>500<EFBFBD>ֽ<EFBFBD>
|
||||
// 固定500字节
|
||||
typedef struct MasterSettings {
|
||||
int ReportInterval; // <EFBFBD>ϱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
int Is64Bit; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>64λ
|
||||
char MasterVersion[12]; // <EFBFBD><EFBFBD><EFBFBD>ذ汾
|
||||
int DetectSoftware; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
int UsingFRPProxy; // <EFBFBD>Ƿ<EFBFBD>ʹ<EFBFBD><EFBFBD>FRP<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
int ReportInterval; // 上报间隔
|
||||
int Is64Bit; // 主控是否64位
|
||||
char MasterVersion[12]; // 主控版本
|
||||
int DetectSoftware; // 检测软件
|
||||
int UsingFRPProxy; // 是否使用FRP代理
|
||||
char WalletAddress[472]; // Wallets
|
||||
int EnableKBLogger; // Since 2025-11-27
|
||||
int EnableLog; // Since 2025-12-17
|
||||
@@ -904,26 +904,26 @@ typedef struct MasterSettings {
|
||||
#define MasterSettingsOldSize 500
|
||||
|
||||
#pragma pack(push, 1)
|
||||
// 100<EFBFBD>ֽ<EFBFBD>: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + <20><>С + <20><><EFBFBD>÷<EFBFBD>ʽ + DLL<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 100字节: 运行类型 + 大小 + 调用方式 + DLL名称
|
||||
typedef struct DllExecuteInfo {
|
||||
int RunType; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
int Size; // DLL <EFBFBD><EFBFBD>С
|
||||
int CallType; // <EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD>ʽ
|
||||
char Name[32]; // DLL <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
int RunType; // 运行类型
|
||||
int Size; // DLL 大小
|
||||
int CallType; // 调用方式
|
||||
char Name[32]; // DLL 名称
|
||||
char Md5[33]; // DLL MD5
|
||||
int Pid; // <EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
||||
char Is32Bit; // <EFBFBD>Ƿ<EFBFBD>32λDLL
|
||||
int Pid; // 被注入进程ID
|
||||
char Is32Bit; // 是否32位DLL
|
||||
char Reseverd[18];
|
||||
} DllExecuteInfo;
|
||||
|
||||
typedef struct DllExecuteInfoNew {
|
||||
int RunType; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
int Size; // DLL <EFBFBD><EFBFBD>С
|
||||
int CallType; // <EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD>ʽ
|
||||
char Name[32]; // DLL <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
int RunType; // 运行类型
|
||||
int Size; // DLL 大小
|
||||
int CallType; // 调用方式
|
||||
char Name[32]; // DLL 名称
|
||||
char Md5[33]; // DLL MD5
|
||||
int Pid; // <EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
||||
char Is32Bit; // <EFBFBD>Ƿ<EFBFBD>32λDLL
|
||||
int Pid; // 被注入进程ID
|
||||
char Is32Bit; // 是否32位DLL
|
||||
char Reseverd[18];
|
||||
char Parameters[400];
|
||||
} DllExecuteInfoNew;
|
||||
@@ -956,9 +956,9 @@ enum {
|
||||
SHELLCODE = 0,
|
||||
MEMORYDLL = 1,
|
||||
|
||||
CALLTYPE_DEFAULT = 0, // Ĭ<EFBFBD>ϵ<EFBFBD><EFBFBD>÷<EFBFBD>ʽ: ֻ<>Ǽ<EFBFBD><C7BC><EFBFBD>DLL,<2C><>Ҫ<EFBFBD><D2AA>DLL<4C><4C><EFBFBD><EFBFBD>ʱִ<CAB1>д<EFBFBD><D0B4><EFBFBD>
|
||||
CALLTYPE_IOCPTHREAD = 1, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>run<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߳<EFBFBD>: DWORD (__stdcall *run)(void* lParam)
|
||||
CALLTYPE_FRPC_CALL = 2, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>FRPC
|
||||
CALLTYPE_DEFAULT = 0, // 默认调用方式: 只是加载DLL,需要在DLL加载时执行代码
|
||||
CALLTYPE_IOCPTHREAD = 1, // 调用run函数启动线程: DWORD (__stdcall *run)(void* lParam)
|
||||
CALLTYPE_FRPC_CALL = 2, // 调用FRPC
|
||||
};
|
||||
|
||||
typedef DWORD(__stdcall* PidCallback)(void);
|
||||
@@ -985,26 +985,26 @@ inline void xor_encrypt_decrypt(unsigned char *data, int len, const std::vector<
|
||||
|
||||
inline std::tm ToPekingTime(const time_t* t)
|
||||
{
|
||||
// <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ǰʱ<EFBFBD>䣨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>
|
||||
// 获取当前时间(如果传入的指针为空)
|
||||
std::time_t now = (t == nullptr) ? std::time(nullptr) : *t;
|
||||
|
||||
// <EFBFBD>̰߳<EFBFBD>ȫ<EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>Ϊ UTC ʱ<EFBFBD><EFBFBD>
|
||||
// 线程安全地转换为 UTC 时间
|
||||
std::tm utc_time{};
|
||||
|
||||
#ifdef _WIN32 // Windows ʹ<EFBFBD><EFBFBD> gmtime_s
|
||||
#ifdef _WIN32 // Windows 使用 gmtime_s
|
||||
if (gmtime_s(&utc_time, &now) != 0) {
|
||||
return { 0, 0, 0, 1, 0, 100 }; // ʧ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2000-01-01 00:00:00
|
||||
return { 0, 0, 0, 1, 0, 100 }; // 失败时返回 2000-01-01 00:00:00
|
||||
}
|
||||
#else // Linux / macOS ʹ<EFBFBD><EFBFBD> gmtime_r
|
||||
#else // Linux / macOS 使用 gmtime_r
|
||||
if (gmtime_r(&now, &utc_time) == nullptr) {
|
||||
return { 0, 0, 0, 1, 0, 100 };
|
||||
}
|
||||
#endif
|
||||
|
||||
// ת<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣨UTC+8<EFBFBD><EFBFBD>
|
||||
// 转换为北京时间(UTC+8)
|
||||
utc_time.tm_hour += 8;
|
||||
|
||||
// <EFBFBD>淶<EFBFBD><EFBFBD>ʱ<EFBFBD>䣨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>죩
|
||||
// 规范化时间(处理溢出,如跨天)
|
||||
std::mktime(&utc_time);
|
||||
|
||||
return utc_time;
|
||||
@@ -1027,11 +1027,11 @@ inline std::string ToPekingDateTime(const time_t* t)
|
||||
}
|
||||
|
||||
typedef struct Validation {
|
||||
char From[20]; // <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char To[20]; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char Admin[100]; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>صĹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD>
|
||||
int Port; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>˿ڣ<EFBFBD>Ĭ<EFBFBD>ϵ<EFBFBD>ǰ<EFBFBD>˿ڣ<EFBFBD>
|
||||
char Checksum[16]; // Ԥ<EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>
|
||||
char From[20]; // 开始日期
|
||||
char To[20]; // 结束日期
|
||||
char Admin[100]; // 管理员地址(当前主控的公网地址)
|
||||
int Port; // 管理员端口(默认当前端口)
|
||||
char Checksum[16]; // 预留字段
|
||||
Validation(float days, const char* admin, int port, const char* id="")
|
||||
{
|
||||
time_t from = time(NULL), to = from + time_t(86400 * days);
|
||||
@@ -1052,7 +1052,7 @@ typedef struct Validation {
|
||||
} Validation;
|
||||
|
||||
#ifdef _DEBUG
|
||||
// Ϊ<EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĺ꣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʹ<EFBFBD>ã<EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD>汾û<EFBFBD><EFBFBD>
|
||||
// 为了解决远程桌面屏幕花屏问题而定义的宏,仅调试时使用,正式版本没有
|
||||
#define SCREENYSPY_IMPROVE 0
|
||||
#define SCREENSPY_WRITE 0
|
||||
#endif
|
||||
@@ -1066,7 +1066,7 @@ typedef struct Validation {
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD>е<EFBFBD>λͼд<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
// 将内存中的位图写入文件
|
||||
inline bool WriteBitmap(LPBITMAPINFO bmpInfo, const void* bmpData, const std::string& filePrefix, int index = -1)
|
||||
{
|
||||
char path[_MAX_PATH];
|
||||
@@ -1091,7 +1091,7 @@ inline bool WriteBitmap(LPBITMAPINFO bmpInfo, const void* bmpData, const std::st
|
||||
return false;
|
||||
}
|
||||
|
||||
class MSG32 // <EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ(32λ)
|
||||
class MSG32 // 自定义控制消息(32位)
|
||||
{
|
||||
public:
|
||||
uint32_t hwnd;
|
||||
@@ -1126,9 +1126,9 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
// Windows <EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϢMSG<EFBFBD><EFBFBD>32λ<EFBFBD><EFBFBD>64λϵͳ<EFBFBD>´<EFBFBD>С<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD>ƽ̨<EFBFBD>ܹ<EFBFBD>Զ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣
|
||||
// <EFBFBD><EFBFBD>Ҫʹ<EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ(ͳһ<CDB3><D2BB><EFBFBD><EFBFBD>64λwindows <EFBFBD><EFBFBD>MSG<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
class MSG64 // <EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ(64λ)
|
||||
// Windows 自定义的消息MSG在32位和64位系统下大小不同,导致跨平台架构远程控制异常
|
||||
// 需要使用自定义的消息(统一采用64位windows 的MSG定义)
|
||||
class MSG64 // 自定义控制消息(64位)
|
||||
{
|
||||
public:
|
||||
uint64_t hwnd;
|
||||
@@ -1203,7 +1203,7 @@ typedef struct ClientMsg {
|
||||
ClientMsg(const char* title, const char* text)
|
||||
{
|
||||
cmd = TOKEN_CLIENT_MSG;
|
||||
strcpy_s(this->title, title ? title : "<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>Ϣ");
|
||||
strcpy_s(this->title, title ? title : "提示信息");
|
||||
strcpy_s(this->text, text ? text : "");
|
||||
}
|
||||
} ClientMsg;
|
||||
|
||||
Reference in New Issue
Block a user