命令执行漏洞

命令执行漏洞

Windows下的管道符:

|: 直接执行后面的语句

||:如果前面的语句执行出错,则执行后面的语句,前面的语句只能为假

&:如果前面的语句为假,则执行后面的语句,前面的语句可真可假

&&:前面的语句为假直接出错

Linux下的管道符:

;:执行完前面的语句再执行后面的

|:显示后面语句的执行结果

||:当前语句执行出错,直接执行后面的语句

&,&&同windows

PHP命令执行

PHP提供了部分函数用来执行外部应用程序,例如:system()、shell_exec()、exec()、passthru()

  1. 命令执行

    cmd.php:

    <?php
        $host = &argv[1];
    	system("ping ".$host);
    ?>
    

payload: php.exe cmd.php "|net user"

  1. 代码执行

    cmd.php:

    <?php eval($_REQUEST['code']) ?>
    

    payload:http://www.xsser.com/cmd.php?code=phpinfo();

  2. 动态函数

    PHP解析器可以根据&fun的值来调用响应的函数

    cmd.php:

    <?php 
        $fun = $_GET['fun'];
    	$fun();
    ?>
    

    payload:http://www.xsser.com/cmd.php?fun=phpinfo

    PHP解析器会调用phpinfo()函数并显示在页面上

    有的程序员还会给函数传递参数:

    cmd.php:

    <?php
        $fun = $_GET['fun'];
    	$par = $_GET['par'];
    	$fun($par);
    ?>
    

    payload:http://www.xsser.com/cmd.php?fun=system&par=net user

    最终执行的函数为system(“net user”)

  3. PHP函数代码执行漏洞

    在PHP中,像preg_replace、ob_start()、array_map()等函数都存在代码执行的问题,以array_map()为例:

    <?php
        $arr = $_GET['arr'];
    	$array = array(1,2,3,4,5);
    	$new_array = array_map($arr,$array);
    ?>
    

    payload:http://www.xsser.com/cmd.php?arr=phpinfo

其他函数代码执行漏洞:(160条消息) PHP中常见的命令执行函数与代码执行函数_红烧兔纸的博客-CSDN博客_php代码执行函数有哪些

Java命令执行

Java体系非常庞大,其纵横包括Java SE、Java EE、Java ME,无论分支还是框架,都是以Java SE为基础的

Java EE之前被称为J2EE,它是在Java SE的基础上构建的,它提供Web服务、组件、模型、管理和通信API

在Java SE中,存在Runtime类,在该类中提供了exec方法用来在单独的进程中执行指定的字符串命令

模型代码如下:

框架执行漏洞

  1. Struts2(Java三大框架之一)代码执行漏洞

  2. ThinkPHP命令执行漏洞

命令执行漏洞的防范

  • 尽量不要使用系统执行命令
  • 在进入执行命令函数/方法之前,变量一定要做好过滤,对敏感字符进行转义;
  • 在使用动态函数之前,确保使用的函数是指定的函数之一;
  • 对PHP语言来说,不能控制的危险函数最好不要使用
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值