Files
SimpleRemoter/ReadMe.md

187 lines
8.7 KiB
Markdown
Raw Normal View History

2024-12-29 17:17:52 +08:00
# 项目简介
2024-12-29 17:17:52 +08:00
**原始来源:** [zibility](https://github.com/zibility/Remote)
**功能概述:** 基于gh0st的远程控制器实现了终端管理、进程管理、窗口管理、桌面管理、文件管理、语音管理、视频管理、服务管理、
2025-06-01 15:31:04 +08:00
注册表管理、键盘记录、SOCKS代理、虚拟桌面和执行代码等功能。
2025-01-12 06:00:02 +08:00
如果您热爱研究控制程序喜欢本项目请您对该项目添加星标。Fork、Watch此项目提交Issues发起Pull Request都是受欢迎的。
2025-06-01 15:31:04 +08:00
作者视业余空闲情况,将对所提问题进行修复。
2025-01-12 06:00:02 +08:00
[![Star History Chart](https://api.star-history.com/svg?repos=yuanyuanxiang/SimpleRemoter&type=Date)](https://star-history.com/#yuanyuanxiang/SimpleRemoter&Date)
<span style="color:#FF5722; font-weight:bold;">*此程序仅限于学习和技术交流用途,使用者本人需对自己使用该软件产生的结果进行负责。* </span>
2025-04-21 03:52:10 +08:00
2024-12-29 17:17:52 +08:00
**起始日期**2019.1.1
## 免责声明
本软件以“现状”提供,不附带任何保证。使用本软件的风险由用户自行承担。我们不对任何因使用本软件而引发的非法或恶意用途负责。
用户应遵守相关法律法规,并负责任地使用本软件。开发者对任何因使用本软件产生的损害不承担责任。
2024-12-29 17:17:52 +08:00
## 主控程序
2025-06-01 15:31:04 +08:00
主控程序为**YAMA.exe**是Server端基于IOCP通讯支持上万主机同时在线Release发布版本在单台电脑只能运行一个实例。
2024-12-29 17:17:52 +08:00
下面展示主控程序运行界面,所有功能均可用,程序运行稳定。
某些功能要求受控程序以管理员权限运行。
2025-04-05 21:10:46 +08:00
![主界面](./images/Yama.jpg)
2024-12-29 17:17:52 +08:00
主界面以列表形式展示连接到本机的受控程序。
2025-06-01 15:31:04 +08:00
选中某个主机以便进行远程控制,例如修改备注、代理映射、执行代码等。
2024-12-29 17:17:52 +08:00
2025-04-05 21:10:46 +08:00
![终端管理](./images/Console.jpg)
2024-12-29 17:17:52 +08:00
2025-04-21 03:52:10 +08:00
终端管理打开命令行窗口,可以执行远程命令。有一个[极简版本](./linux/main.cpp)已经支持Linux客户端供Linux开发者研究使用。
2024-12-29 17:17:52 +08:00
2025-04-05 21:10:46 +08:00
![进程管理](./images/Process.jpg)
2024-12-29 17:17:52 +08:00
2025-06-01 15:31:04 +08:00
进程管理显示受控机器上面正在运行的进程,可对普通进程进行启停操作(无法操作高权限进程)。
2024-12-29 17:17:52 +08:00
2025-04-05 21:10:46 +08:00
![窗口管理](./images/Window.jpg)
2024-12-29 17:17:52 +08:00
2025-06-01 15:31:04 +08:00
窗口管理显示受控机器上面打开的窗口或程序,可对其进行操作,隐藏或显示窗口。
2024-12-29 17:17:52 +08:00
2025-04-05 21:10:46 +08:00
![桌面管理](./images/Remote.jpg)
![桌面管理](./images/RemoteSet.jpg)
2024-12-29 17:17:52 +08:00
2025-04-05 21:10:46 +08:00
桌面管理即"远程桌面",控制远程机器。可以通过菜单设置远程桌面的参数:
2025-06-01 15:31:04 +08:00
屏幕截图方法支持GDI、DXGI或VIRTUAL图像压缩方法支持灰度图像传输、屏幕差异算法和H264压缩。
值得一提的是VIRTUAL即虚拟桌面可以在被控计算机后台运行远程桌面程序对操作的流畅度进行了优化。
另外,支持上报活动窗口和检测指定软件。
2024-12-29 17:17:52 +08:00
2025-04-05 21:10:46 +08:00
![文件管理](./images/FileManage.jpg)
2024-12-29 17:17:52 +08:00
文件管理即在本机和受控机器之间传输文件。
2025-04-05 21:10:46 +08:00
![语音管理](./images/Voice.jpg)
2024-12-29 17:17:52 +08:00
2025-06-01 15:31:04 +08:00
语音管理即监听受控机器的声音,也可以向受控计算机发送语音,需受控机器有音频设备。
2024-12-29 17:17:52 +08:00
2025-04-05 21:10:46 +08:00
![视频管理](./images/Video.jpg)
2024-12-29 17:17:52 +08:00
2025-06-01 15:31:04 +08:00
视频管理即打开受控机器的摄像头。在设置中默认勾选了检测摄像头,主机列表会显示是否有摄像头。
2024-12-29 17:17:52 +08:00
2025-04-05 21:10:46 +08:00
![服务管理](./images/Service.jpg)
2024-12-29 17:17:52 +08:00
2025-06-01 15:31:04 +08:00
服务管理即打开受控机器上面的服务列表,如果有权限,亦可对服务进行启动、停止等操作。
2024-12-29 17:17:52 +08:00
2025-04-05 21:10:46 +08:00
![注册表管理](./images/Register.jpg)
2024-12-29 17:17:52 +08:00
2025-06-01 15:31:04 +08:00
注册表管理即打开受控机器上面的注册表,只能查看注册表,不支持修改。
2024-12-29 17:17:52 +08:00
2025-04-21 03:52:10 +08:00
## Linux 客户端
![LinuxClient](./images/LinuxClient.png)
在[v1.0.8](./Releases/v1.0.8/ghost)目录下实现了一个Linux端受控程序当前只支持远程终端窗口。
![BuildDlg](./images/BuildDlg.jpg)
请在Linux环境编译得到客户端然后在生成服务端对话框选择该文件填写上线地址生成Linux端程序。
## 关于授权
![AuthDlg](./images/AuthDlg.jpg)
![PasswordGen](./images/PasswordGen.jpg)
自v1.0.8起操作主控程序需要获得授权。给新编译的程序14天试用期过期之后生成服务端需要凭借"序列号"申请口令;
如果要屏蔽该授权逻辑,请参考`OnOnlineBuildClient`函数,重新编译程序,参看:
[#91](https://github.com/yuanyuanxiang/SimpleRemoter/issues/91)。
“口令”包含授权日期范围,确保一机一码;授权逻辑会检测计算机日期未被篡改。生成口令需使用密码。
2025-04-21 03:52:10 +08:00
2024-12-29 17:17:52 +08:00
## 受控程序
2025-04-05 21:10:46 +08:00
![主界面](./images/TestRun.jpg)
2024-12-29 17:17:52 +08:00
受控程序是Client端分为2种运行形式"类型"):单个程序 **1** ghost.exe和 **2** TestRun.exe+ServerDll.dll形式。
1单个程序运行时不依赖其他动态链接库而第2种情况运行时由EXE程序调用核心动态链接库。
2025-04-21 03:52:10 +08:00
注意:自[v1.0.8](https://github.com/yuanyuanxiang/SimpleRemoter/releases/tag/v1.0.0.8)起,
`TestRun.exe`将采取内存加载DLL运行方式向主控程序请求DLL并在内存中执行这有利于代码的热更新。
2024-12-29 17:17:52 +08:00
# 更新日志
2025-04-05 21:10:46 +08:00
2025年以前的变更记录参看[history](./history.md)
2024-12-29 01:09:06 +08:00
2025-01-12 06:00:02 +08:00
2025.01.12
修复被控程序关于远程桌面相关可能的2处问题#28 #29)。增加对主控端列表窗口的排序功能(#26 #27),以便快速定位窗口、服务或进程。
2025-01-12 06:00:02 +08:00
发布一个运行**非常稳定**的版本v1.0.6该版本不支持在较老的Windows XP系统运行VS2019及以后版本已不支持XP工具集为此需要更早的VS
您可以从GitHub下载最新的Release也可以clone该项目在相关目录找到。如果杀毒软件报告病毒这是正常现象请信任即可或者您可以亲自编译。
2025-01-31 22:22:16 +08:00
2025.02.01
参考[Gh0st](https://github.com/yuanyuanxiang/Gh0st/pull/2),增加键盘记录功能。实质上就是拷贝如下四个文件:
*KeyboardManager.h、KeyboardManager.cpp、KeyBoardDlg.h、KeyBoardDlg.cpp*
2024-12-29 01:09:06 +08:00
2025-04-05 21:10:46 +08:00
**2025.04.05**
Release v1.0.7, mainly fix or add new feature:
- Update third-party libraries and switch zlib to zstd, old version v1.0.6 is compatible;
- Support compile with Win64;
- Fix buges and make the program more stable;
- Improve remote control efficiency and support more bitmap compressing method;
- Some code reorganization.
**2025.04.12**
Since v1.0.7 released in April 5:
- Improvement: Make sure that the input command is always at the end of `Shelldlg`, and build a **simple Linux client**;
- Fix bugs: #62, #74, #75 ;
- Change the flag 0x1234567 to a more readable string; and improve building service and allow chosing other files to build;
- Showing the user's activities and monitoring specified software;
- Clean up global variables and make it easy to create multiple clients in one program, which is useful for testing the master's capacity;
- Implement loading DLL in memory, make it easy to update client program;
2025-04-21 03:52:10 +08:00
**2025.04.21**
Release v1.0.8:
- Support to share online host with other masters;
- Implement service-generated authorization capability, and add a serial number generation menu;
- Add `HPSocket` libraries which may be used in the future, and add static ffmpeg libraries to build Win64 master;
- Implement a memory DLL runner: the `TestRun` program request DLL from master and execute in memory.
**2025.04.30**
Release v1.0.9
- Update client building feature / All in one; The master will only accept the clients built by itself.
- Improve authorization feature.
2025-06-01 15:31:04 +08:00
**2025.06.01**
Release v1.1.0:
* fix: IOCPClient clear buffer when disconnect
* Implement SOCKS proxy feature
* Add menus and modify list style, add log
* feature: Add a C program to execute shell code
* feature: Encrypt for server address
* feat: Support virtual remote desktop monitoring
* feature: Add command to execute DLL
# 其他项目
- [HoldingHands](https://github.com/yuanyuanxiang/HoldingHands):此远控程序界面为全英文,采用不同的架构设计。
- [BGW RAT](https://github.com/yuanyuanxiang/BGW_RAT): 一款功能全面的远程控制程序即大灰狼9.5.
- [Gh0st](https://github.com/yuanyuanxiang/Gh0st): 也是一款基于Gh0st的远程控制程序。
2024-12-29 17:17:52 +08:00
# 沟通反馈
2024-12-29 01:09:06 +08:00
QQ962914132
2024-12-29 17:17:52 +08:00
联系方式: [Telegram](https://t.me/doge_grandfather), [Email](mailto:yuanyuanxiang163@gmail.com), [LinkedIn](https://www.linkedin.com/in/wishyuanqi)
问题报告: [Issues](https://github.com/yuanyuanxiang/SimpleRemoter/issues)
欢迎提交: [Merge requests](https://github.com/yuanyuanxiang/SimpleRemoter/pulls)
2025-04-05 21:10:46 +08:00
赞助方式 / Sponsor该项目的研究出自技术学习和兴趣爱好本人视业余情况不定期更新项目。
**如果该项目对你有益,请通过赞助图标对本项目进行支持。**
2025-06-01 15:31:04 +08:00
如果你希望采用其他方式(如微信、支付宝)对本项目进行赞助,请点击
[这里](https://github.com/yuanyuanxiang/yuanyuanxiang/blob/main/images/QR_Codes.jpg)。