BUGTRAQ ID: 30027 CNCAN ID:CNCAN-2008070202 wordtrans-web是一款基于Web的多语言字典查询工具。 wordtrans-web存在输入验证问题,远程攻击者可以利用漏洞以WEB进程权限执行任意命令。 -发送变量"command"设置为'show_desc'的GET请求,"link_options"从用户数据中接收参数,通过使用GET方法的"advanced"变量传递。然后"link_options"变量与"exec_wordtrans"变量进行链接,由于"exec_wordtrans"传递给"passthru"函数时没有任何特殊字符检查,攻击者可以发送类似|或; shell字符以WEB进程权限执行任意指令。如下是有问题的代码: ... $exec_wordtrans = $wordtrans . "-d \"$dict\" "; switch ($_GET['command']) { case "show_desc": $exec_wordtrans .= "--desc "; $link_options = "--html-link-options \"?lang=$lang_case&advanced=".$_GET['advanced']."&\" "; $exec_wordtrans .= $link_options; passthru($exec_wordtrans); break; ... 要利用此漏洞,"Magic Quotes"选项必须不设置。...
BUGTRAQ ID: 30027 CNCAN ID:CNCAN-2008070202 wordtrans-web是一款基于Web的多语言字典查询工具。 wordtrans-web存在输入验证问题,远程攻击者可以利用漏洞以WEB进程权限执行任意命令。 -发送变量"command"设置为'show_desc'的GET请求,"link_options"从用户数据中接收参数,通过使用GET方法的"advanced"变量传递。然后"link_options"变量与"exec_wordtrans"变量进行链接,由于"exec_wordtrans"传递给"passthru"函数时没有任何特殊字符检查,攻击者可以发送类似|或; shell字符以WEB进程权限执行任意指令。如下是有问题的代码: ... $exec_wordtrans = $wordtrans . "-d \"$dict\" "; switch ($_GET['command']) { case "show_desc": $exec_wordtrans .= "--desc "; $link_options = "--html-link-options \"?lang=$lang_case&advanced=".$_GET['advanced']."&\" "; $exec_wordtrans .= $link_options; passthru($exec_wordtrans); break; ... 要利用此漏洞,"Magic Quotes"选项必须不设置。 -发送不使用"command"变量或者未定义命令并且"word"变量中没有任何数据的请求,"link_options"从用户数据中接收参数,通过使用POST方法的"advanced"变量传递。然后"link_options"变量与"exec_wordtrans"变量进行链接,由于"exec_wordtrans"传递给"passthru"函数时没有任何特殊字符检查,攻击者可以发送类似|或; shell字符以WEB进程权限执行任意指令。如下是有问题的代码: ... $exec_wordtrans = $wordtrans . "-d \"$dict\" "; switch ($_GET['command']) { ... default: if ($_POST['word'] != "") { if ($_POST['fullwords']) $exec_wordtrans .= " +w "; else $exec_wordtrans .= " -w "; if ($_POST['casesensitive']) $exec_wordtrans .= " +c "; else $exec_wordtrans .= " -c "; if ($_POST['invertir']) $exec_wordtrans .= " +i "; else $exec_wordtrans .= " -i "; if ($_POST['noacentos']) $exec_wordtrans .= " +g "; else $exec_wordtrans .= " -g "; $link_options = "--html-link-options \"?lang=$lang_case&advanced=".$_POST['advanced']."&\" "; $exec_wordtrans .= $link_options; $exec_wordtrans .= "\"".$_POST['word']."\""; passthru($exec_wordtrans); ... 要利用此漏洞,"Magic Quotes"选项必须不设置。 Wordtrans Wordtrans-web 1.1pre15 + RedHat Linux 7.3 目前没有解决方案提供