zoukankan      html  css  js  c++  java
  • php执行root命令

    一.确定php的sysem等函数可用

    二.编写c程序,如ipt.c

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

    int main()
    {
        uid_t uid ,euid;

        uid = getuid() ;
        euid = geteuid();

        if(setreuid(euid, uid))  //交换这两个id
            perror("setreuid");

        system("/sbin/iptables -nL --line-number"); //执行iptables -L命令
        return 0;
    }

    编译
    gcc -o ipt -Wall ipt.c
    赋予权限:
    chmod u+s ipt

    php调用:
    system("/scripts/ipt",$retval);


    三.携带参数
    ipt_accept.c

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

    int main(int agrc,char* argv[])
    {
        uid_t uid ,euid;

        uid = getuid() ;
        euid = geteuid();

        if(setreuid(euid, uid))  //交换这两个id
            perror("setreuid");


        char buf[500];
        sprintf(buf,"iptables -A INPUT -p tcp -s %s --dport 3306 -j ACCEPT",argv[1]);
        system(buf); //执行iptables -L命令
        return 0;
    }


    编译
    gcc -o ipt_accept -Wall ipt_accept.c
    赋予权限:
    chmod u+s ipt_accept

    php调用:
    system("/scripts/ipt_accept " . $ip,$retval);

  • 相关阅读:
    mp3播放时间
    图片生成视频
    语音合成服务
    360p以上
    实现文字转语音功能
    字幕格式
    音频格式
    视频格式
    微信发朋友圈 -- 群营销素材同步
    FourCC
  • 原文地址:https://www.cnblogs.com/itfenqing/p/4429388.html
Copyright © 2011-2022 走看看