易截截图软件、单文件、免安装、纯绿色、仅160KB

PHP执行root命令

在玩C 以前 玩过一段时间的PHP, 哪个时候需要用PHP 来运行root命令,一直未果,直到有一天搜索到了super这个插件. 
   随着玩C的日子多了.发现可以用C语言来包裹 要运行的外部命令. 实验了一下.成功了.
   不需要任何外部工具就可以实现用PHP 执行root命令.
   我下面就把方法发布给大家,有需求用php来运行root命令的朋友可以不用发愁了.
   平台:Linux. 实验命令iptables  当前的目录是/var/www/html/http
写程序的时候 用root用户
大家都知道iptables 非root用户不能运行.
首先写个C程序
命名为:ipt.c
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
    uid_t uid ,euid;
    char cmd[1024];
    uid = getuid() ;
    euid = geteuid();
    printf("my uid :%u\n",getuid());  //这里显示的是当前的uid 可以注释掉.
    printf("my euid :%u\n",geteuid()); //这里显示的是当前的euid
    if(setreuid(euid, uid))  //交换
这两个id
        perror("setreuid");
    printf("after setreuid uid :%u\n",getuid());
    printf("afer sertreuid euid :%u\n",geteuid());
    system("/sbin/iptables -L"); //执行iptables -L命令
    return 0;
}
[/CODE]
编译该文件 gcc -o ipt -Wall ipt.c
在该路径下生成ipt 这个可执行文件.
如果现在用PHP网页调用 该ipt的话,即使setreuid了 也是不行的.
接下来要做的是chmod u+s ./ipt
ls 一下
-rwsr-xr-x  1 root root 5382&nb


相关文档:

PHP类实例教程(二十三):PHP抽象类实现接口

<p>抽象类实现接口,可以不实现其中的抽象方法,而将抽象方法的实现交付给具体能被实例化的类去处理。</p>
<textarea name="code" class="php">
<?php
interface User
{
 function getName();
 function setName($_name);
}
 //此处只是实现了一个接口的一个方法
abstract cl ......

xen nginx php 记录一下。

最近在弄nginx和xen+php.中间也费了不少的周折.记录一下.也算一个小成果.
操作系统版本,最后还是选择CentOS-5.4-x86_64-bin-DVD.iso.
CentOS-5.4-x86_64-bin-DVD.iso 的安装:
安装的时候基本上lib和开发工具都要选.桌面的开发环境我也都选了.
说不定哪个函数支持就要用到这个库.
mysql-5.1.41.tar.gz:
据说更高版本的 ......

linux 下php的安装

    
环境软件版本介绍:
 
   APACHE 2.0.59
   PHP5.2.3
   MYSQL5.0.45
   GD-2.0.35
   Zend Optimizer v3.3.0
  
               &n ......

php中curl函数使用方法


 
 PHP 支持curl函数(允许你用不同的协议连接和沟通不同的服务器). curl
是使用URL语法的传送文件工具,支持FTP、FTPS、HTTP HTPPS SCP SFTP TFTP TELNET DICT
FILE和LDAP。curl 支持SSL证书、HTTP POST、HTTP PUT 、FTP
上传,kerberos、基于HTT格式的上传、代理、cookie、用户+口令证明、文件传送恢复、http代理 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号