php 执行系统命令的方法

代码如下:


代码如下:

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

int main(int argc,char * argv[])
{
    uid_t uid,euid;
    char cmd[1024]="chmod -R 777 ";
    uid =getuid();
    euid = geteuid();

//printf("param %s\n",strcat(cmd,argv[1]));
    //exit(0);
    //printf("uid:%un. eudi=%un\n",getuid(),geteuid());

if(setreuid(euid,uid))
        perror("setreuid");

//printf("uid:%un. eudi=%un\n",getuid(),geteuid());

system(strcat(cmd,argv[1]));
    return 0;

}

现在说下,在linux下面,gcc编译,以及复权的问题:
执行
gcc -Wall -o phpchmod phpchmod.c
执行
chmod u+s ./phpchmod
php代码的使用:


代码如下:

$chmod_line = dirname(__FILE__)."/phpchmod ./dest_dir/";
system($chmod_line);

(0)

相关推荐

  • PHP系统命令函数使用分析

    复制代码 代码如下: function execute($cmd) {     $res = '';     if ($cmd) {         if(function_exists('system')) {             @ob_start();             @system($cmd);             $res = @ob_get_contents();             @ob_end_clean();         } elseif(functi

  • linux下php-fpm开启关闭使用方法

    所以启动.关闭和重新加载的方式和以前不同,需要使用信号控制: php-fpm master 进程可以理解一下信号: 复制代码 代码如下: SIGINT, SIGTERM 立刻终止SIGQUIT 平滑终止SIGUSR1 重新打开日志文件SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块 例如:关闭php-fpm 复制代码 代码如下: kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid` php-fpm 重启 复制代码 代码如

  • 让PHP以ROOT权限执行系统命令的方法

    用来作为解决php以root权限执行一些普通用户不能执行的命令或应用的参考. 其实php里的popen()函数是可以解决这个问题的,但是由于某些版本的linux(如我使用的Centos 5)对系统安全的考虑, 使得这个问题解决起来麻烦了好多.先来看一个网友使用popen()函数的例子. 复制代码 代码如下: /* PHP中如何增加一个系统用户 下面是一段例程,增加一个名字为james的用户, root密码是 louis.仅供参考 */ $sucommand = "su root --comman

  • php实现用手机关闭计算机(电脑)的方法

    本文实例讲述了php实现用手机关闭计算机(电脑)的方法.分享给大家供大家参考.具体分析如下: 适合有手机和电脑,用wifi的php web开发.方便关闭你的电脑(尤其在你想睡觉时 ),适合局域网 用法:放在你的web项目文件夹,可以新建立个目录 对了,把你的apache的httpd 或 iis 加入防火墙例外 ,文件是php后缀哦 <!DOCTYPE html> <html lang="zh-CN"> <head> <title>comp

  • PHP 处理TXT文件(打开/关闭/检查/读取)

    php文件处理:http://www.jb51.net/w3school/php/php_file.htm 复制代码 代码如下: <?php $filename=dirname(__FILE__)."/readfrom.txt"; $ofilename=dirname(__FILE__)."/writeto.txt"; if(!file_exists($filename)){ echo $filename." not found!"; ex

  • php中执行系统命令的方法

    本文实例讲述了php中执行系统命令的方法.分享给大家供大家参考.具体分析如下: 在php中执行系统命令,如LS <?php // exec.php $cmd = "dir"; // Windows // $cmd = "ls"; // Linux, Unix & Mac exec(escapeshellcmd($cmd), $output, $status); if ($status) echo "Exec command failed&qu

  • PHP打开和关闭文件操作函数总结

    在处理文件内容之前,通常需要建立与文件资源的连接,即打开文件.同样,结束该资源的操作后,应当关闭连接资源.所谓打开文件,实际是建立文件的各种有关信息,并使文件指针指向该文件,就可以发起输入或输出的实体联系在一起,也就禁止再对该文件进行操作.在PHP中可以通过标准函数fopen()建立与文件资源的连接,使用fclose()函数关闭通过fopen()函数打开的文件资源. ①函数fopen() 该函数用来打开一个文件,并在打开一个文件时,还需要指定如果使用它.也就是以哪种文件模式打开文件资源.服务器上

  • PHP计划任务之关闭浏览器后仍然继续执行的函数

    备忘一下这个函数: 函数名称:ignore_user_abort 本函数配置或取得使用端连接中断后,PHP 程序是否仍继续执行.默认值为中断连接后就停止执行.在 PHP 配置文件中 (php3.ini/php.ini) 的 ignore_user_abort 选项就是配置处.本功能在 PHP 3.0.7 版之后才开始提供. 官方说明:http://cn2.php.net/manual/en/function.ignore-user-abort.php 使用方法: 复制代码 代码如下: ignor

  • php中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)

    php的内置函数exec,system都可以调用系统命令(shell命令),当然还有passthru,escapeshellcmd等函数. 在很多时候利用php的exec,system等函数调用系统命令可以帮助我们更好更快的完成工作.比如前二天笔者在批量处理.rar文件时exec就帮我了大忙了. 今天整理一下常用的调用系统函数发出来和大家分享经验. 注意:要想使用这二个函数php.ini中的安全模式必须关闭,要不然为了安全起见php是不让调用系统命令的. 先看一下php手册对这二个函数的解释:

  • PHP通过bypass disable functions执行系统命令的方法汇总

    一.为什么要bypass disable functions 为了安全起见,很多运维人员会禁用PHP的一些"危险"函数,例如eval.exec.system等,将其写在php.ini配置文件中,就是我们所说的disable functions了,特别是虚拟主机运营商,为了彻底隔离同服务器的客户,以及避免出现大面积的安全问题,在disable functions的设置中也通常较为严格. 攻与防是对立的,也是互相补充的,既然有对函数的禁用措施,就会有人想方设法的去突破这层限制,我们只有在掌

  • C#执行系统命令的方法

    本文介绍了C#执行系统命令的方法,分享给大家,具体如下: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们.

  • 在Python中执行系统命令的方法示例详解

    前言 Python经常被称作"胶水语言",因为它能够轻易地操作其他程序,轻易地包装使用其他语言编写的库.在Python/wxPython环境下,执行外部命令或者说在Python程序中启动另一个程序的方法. 本文将详细介绍关于Python中如何执行系统命令的相关资料,下面话不多说了,来一起看看详细的介绍吧. (1) os.system() 这个方法直接调用标准C的system()函数,仅仅在一个子终端运行系统命令,而不能获取执行返回的信息. >>> import os

  • php 执行系统命令的方法

    代码如下: 复制代码 代码如下: #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <unistd.h> #include <string.h> int main(int argc,char * argv[]) {     uid_t uid,euid;     char cmd[1024]="chmod -R 777 ";     u

  • python执行系统命令4种方法与比较

    Python中执行系统命令常见的方法有以下4种 注意:以下实例代码在Python3.5下运行通过. 一.os.system方法 os.system(cmd) 在子终端运行系统命令,可以获取命令执行后的返回信息以及执行返回的状态 >>> import os >>> os.system('date') 2018年 4月 8日 星期日 19时29分13秒 CST 0 #运行状态号,0表示正确 执行后返回两行结果,第一行是结果, 第二行是执行状态信息 二.os.popen方法

  • Go语言执行系统命令行命令的方法

    本文实例讲述了Go语言执行系统命令行命令的方法.分享给大家供大家参考.具体如下: 执行Go代码时可以附加参数,包括要执行的命令和给命令的参数 复制代码 代码如下: package main import (   "os"   "os/exec"   "fmt"   "flag"   "strings" ) func main() {   command := flag.String("cmd&qu

  • 利用NodeJS的子进程(child_process)调用系统命令的方法分享

    NodeJS子进程简介 NodeJS子进程提供了与系统交互的重要接口,其主要API有: 标准输入.标准输出及标准错误输出的接口. NodeJS子进程简介 NodeJS 子进程提供了与系统交互的重要接口,其主要 API 有: 标准输入.标准输出及标准错误输出的接口 child.stdin 获取标准输入 child.stdout 获取标准输出 child.stderr 获取标准错误输出 获取子进程的PID:child.pid 提供生成子进程的重要方法:child_process.spawn(cmd,

  • Node.js中安全调用系统命令的方法(避免注入安全漏洞)

    在这篇文章中,我们将学习正确使用Node.js调用系统命令的方法,以避免常见的命令行注入漏洞. 我们经常使用的调用命令的方法是最简单的child_process.exec.它有很一个简单的使用模式;通过传入一段字符串命令,并把一个错误或命令处理结果回传至回调函数中. 这里是你通过child_process.exec调用系统命令一个非常典型的例子. 复制代码 代码如下: child_process.exec('ls', function (err, data) {     console.log(

随机推荐