在网络安全领域,权限维持是渗透测试和安全评估中的重要环节。今天要给大家介绍一款名为 Pkeep 的工具,它是一个用 Python 编写的 Linux 权限维持脚本,旨在帮助安全从业者在合法授权的测试环境中实现高效的权限维持操作。
工具简介
Pkeep 是一款专注于 Linux 系统权限维持的脚本工具,采用 Python3 开发,提供了多种实用功能,帮助测试人员在获取系统权限后进行持久化操作。项目目前托管在 GitHub 上(https://github.com/S-ixpence/Pkeep),具有开源、易用、隐蔽性强等特点。
核心功能
Pkeep 提供了丰富的权限维持手段,主要包括以下功能:
- 添加特权账户:创建具有管理员权限的隐藏账户
- 授予账户 sudo 权限:为指定用户添加无密码 sudo 权限
- 创建隐藏的 SUID shell:生成具有 SUID 权限的隐藏 bash
- SSH 软链接后门:通过软链接创建隐蔽的 SSH 后门
- 定时任务持久化:利用 crontab 创建定时反向 Shell
- SSH 密钥注入:向目标系统注入 SSH 公钥实现免密登录
- systemd 服务持久化:通过系统服务实现持久化反向连接
技术特点
2025 年 3 月,该工具通过深度重构,带来了多项重要改进:
1. 面向对象重构
采用类的方式组织代码,提高了代码的可维护性和扩展性,便于后续功能迭代。
2. 增强的隐蔽性
- 使用更隐蔽的文件名(如
systemd-network.service
) - 实现文件时间戳伪装
- 利用
chattr +i
进行文件属性锁定,防止被意外删除
3. 完善的错误处理
使用
subprocess
替代os.system
,增加了错误检查机制,提高了工具的稳定性。4. 安全性改进
- 使用 openssl 生成安全的密码哈希
- 通过
/etc/sudoers.d/
目录配置 sudo 权限,更符合安全最佳实践
5. 良好的用户体验
- 提供清晰的菜单交互界面
- 支持自定义用户名 / 密码
- 操作提示友好,降低使用门槛
使用方法
- 首先需要确保在 root 权限下运行:
sudo python3 Pkeep.py
- 运行后会显示主菜单,根据需求选择对应的功能编号即可:
_____ _ __ ______ ______ _____
| __ \ | |/ / | ____| | ____| | __ \
| |__) | | ' / | |__ | |__ | |__) |
| ___/ | < | __| | __| | ___/
| | | . \ | |____ | |____ | |
|_| |_|\_\ |______| |______| |_| by fangao
请选择持久化方式:
[1] 添加特权账户
[2] 授予账户sudo权限
[3] 创建隐藏的SUID shell
[4] SSH软链接后门
[5] 定时任务持久化
[6] SSH密钥注入
[7] systemd服务持久化
[q] 退出
- 根据每个功能的提示输入必要的参数(如用户名、端口、IP 等),即可完成相应操作。
注意事项
- 合法使用:本工具仅限在合法授权的测试环境中使用,使用前请确保已获得充分授权,遵守当地法律法规。
- 环境要求:需要 Python3 环境,且必须以 root 权限运行。
- 隐蔽性:工具已针对关键文件做了防删除保护和隐蔽性处理,但在实际使用中仍需结合具体场景进行调整。
- 兼容性:支持多数主流 Linux 发行版,工具会自动处理部分依赖项检查。
总结
Pkeep 作为一款专注于 Linux 权限维持的工具,通过简洁的界面和丰富的功能,为安全测试人员提供了便捷的权限维持解决方案。其面向对象的代码结构和不断优化的隐蔽性设计,使得它在同类工具中具有一定的优势。
当然,权限维持技术本身是一把双刃剑,既可以用于合法的安全测试,也可能被恶意利用。因此,再次强调:请务必在合法授权的前提下使用该工具,共同维护网络安全秩序。
如果你对网络安全、权限维持技术感兴趣,不妨关注这个项目,了解其实现原理,这对于提升自身的安全技能会有所帮助。