小编mah*_*ooL的帖子

带有 C 包装器的脚本上的 Setuid

我只想使用具有 root 权限的 php 脚本和像本教程一样的 C 包装器。

ls -l :

-rwsr-xr-x. 1 root root 6466 Aug 15 03:07 createConfig
-rwxrwxrwx. 1 root root  102 Aug 15 04:23 test.php
-rw-r--r--. 1 root root  822 Aug 14 21:35 index.php
Run Code Online (Sandbox Code Playgroud)

创建配置.c:

#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>

int main(void) {
    system("/usr/bin/php /var/www/html/test.php");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

测试.php:

<?php
mkdir("/root/ourDir");
?>
Run Code Online (Sandbox Code Playgroud)

索引.php :

<?php
exec("/var/www/html/createConfig");
?>
Run Code Online (Sandbox Code Playgroud)

但是当在浏览器上运行 index.php 时,我收到了这个错误:

sh: /var/www/html/createConfig: Permission denied
Run Code Online (Sandbox Code Playgroud)

谢谢

php c linux centos suid

0
推荐指数
1
解决办法
1395
查看次数

标签 统计

c ×1

centos ×1

linux ×1

php ×1

suid ×1