• 我爱大数据   2014/10/9 11:39:00
  • 系统注入命令安全漏洞修补方法
  • 关键字: 网站安全 安全漏洞 命令漏洞
  •  

    漏洞描述

    系统命令执行是指应用程序对传入命令行的参数过滤不严导致恶意用户能控制最终执行的命令,进而入侵系统,导致严重破坏的高危漏洞。

    安全隐患

    利用这个漏洞攻击着可以执行服务器上的命令。

    修复建议

    1、严格检查程序参数,特别是 "&", "&&", "|", "||"

     

    2、在代码中去除system等直接命令行执行函数或者禁止把外部传入参数传入到该类可执行函数的参数中。

    修复参考

    1ASP:

    漏洞代码示例:

    <%

    Dim cmd

    Set cmd=Request.QueryString("cmd")

    response.write server.createobject("wscript.shell").exec("cmd.exe /c "&cmd).stdout.readall

    %>

    修复范例:

    Dim cmd

    Set cmd=Request.QueryString("cmd")

    if cmd == "dir" then

             response.write server.createobject("wscript.shell").exec("cmd.exe /c "&  "dir").stdout.readall

    end if

    %>

     

    2PHP

    漏洞代码示例:

    <%php

    $myvar = "varname";

    $x = $_GET['arg'];

    // 默认通过url传入ls -al 进行执行

    system($x);

    %>

    修复建议:

    <%php

    $myvar = "varname";

    $x = $_GET['arg'];

    // 默认通过url传入ls -al 进行执行

    if($x=='/bin/ls -al'){

        system('/bin/ls -al');

    }else{

        return;

     }

    %>