该脚本旨在本地Linux系统上执行,以枚举基本系统信息并搜索常见的权限提升向量,例如全局可写文件、配置错误、明文密码以及适用的漏洞利用。
Linuxprivchecker旨在识别需要进一步调查的潜在区域,而非提供直接的操作或利用。这是为了帮助用户进一步了解这些权限提升的工作原理,并遵循为OSCP、HTB及其他CTF/考试所设定的规则,进行自主探索性利用。
我们将尽最大努力在可能的地方提供附加信息和参考。作为当前维护者,我还计划在新功能添加的同时,在我的博客(hackersvanguard.com)上发表文章,进一步解释每个潜在的权限提升区域以及所需的条件。
要在旧版Python>2.6系统上运行,只需获取全部一体的Python脚本并运行即可。
wget https://raw.githubusercontent.com/sleventyeleven/linuxprivchecker/master/linuxprivchecker.py
python linuxprivchecker.py -w -o linuxprivchecker.log
目前,适用于Python 3.X的Linuxprivchecker应被视为稳定的测试版。脚本可能会出现问题,并且肯定会遗漏可能的漏洞(请提出问题或PR)。
要运行Python 3版本,只需使用pip。
pip install linuxprivchecker
然后,如果runpy可用,只需通过命令行运行。
linuxprivchecker -w -o linuxprivchecker.log
或者,如果runpy未能将脚本添加到你的路径中
python3 -m linuxprivchecker -w -o linuxprivchecker.log
如果你测试的系统安装了Python 2.6或更高版本以及/或argparser,你可以使用以下选项。如果导入argparser失败,则将运行所有检查并且不会写入日志文件。不过,你仍然可以使用终端重定向来创建日志,例如'python linuxprivchecker.py > linuxprivchecker.log'。
usage: linuxprivchecker.py [-h] [-s] [-w] [-o OUTFILE]
尝试收集系统信息并找到可能的漏洞利用
optional arguments: -h, --help 显示此帮助信息并退出
-s, --searches 跳过耗时或资源密集型搜索
-w, --write 是否写入日志文件,可与-0一起使用以指定名称/位置
-o OUTFILE, --outfile OUTFILE 要写入结果的文件(当前用户需要可写)
警告
此脚本按原样提供,不对功能或准确性作任何保证。我没有计划维护更新,我编写时并未追求效率,在某些情况下,你可能会发现功能可能无法产生预期结果。例如,将包与运行进程关联的功能基于关键词,并不总是准确的。此外,此功能中包含的漏洞利用列表也需要随时间更新。请随意以任何你认为合适的方式更改或改进它。
你可以自由地根据需要修改和/或分发此脚本。我只要求你保留原作者署名,并且不要试图出售它或将其纳入任何商业产品中(反正它也不值钱 :))