发新话题
打印

[转载]TWiki search功能任意SHELL命令执行漏洞以及测试方法

[转载]TWiki search功能任意SHELL命令执行漏洞以及测试方法

信息来源:NSFOCUS

发布日期:2004-11-13
更新日期:2004-11-15

受影响系统:
TWiki TWiki 20030201
描述:
--------------------------------------------------------------------------------
TWiki是一个灵活、强大、安全并且简单的基于WEB的合作平台。

TWiki的search功能没有正确过滤用户提交的搜索字符串,远程攻击者可以利用这个漏洞以进程权限执行任意SHELL命令。

搜索功能中对搜索字符串的数据缺少过滤,提交包含SHELL元字符的数据,可以进程权限执行任意SHELL命令。

<*来源:Hans Ulrich Niedermann (hun@bawue.de
  
  链接:http://marc.theaimsgroup.com/?l= ... 37207516456&w=2
*>

测试方法:
--------------------------------------------------------------------------------

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

Hans Ulrich Niedermann (hun@bawue.de)提供了如下测试方法:

类似字符串可为如下数据:

doesnotexist1&#39;; (uname -a; id) | sed &#39;s/\(.*\)/__BEGIN__\1__END__.txt/&#39;; fgrep -i -l -- &#39;doesnotexist2

建议:
--------------------------------------------------------------------------------
厂商补丁:

TWiki
-----
可使用如下补丁方案:

--- twiki/lib/TWiki/Search.pm.orig   2004-11-12 20:16:56.000000000 +0100
+++ twiki/lib/TWiki/Search.pm   2004-11-12 20:36:21.000000000 +0100
@@ -135,6 +135,11 @@
    my $tempVal = "";
    my $tmpl = "";
    my $topicCount = 0; # JohnTalintyre
+   
+   # Hotfix for search string shell code insertion vulnerability
+   $theSearchVal =~ s/[^A-Za-z0-9+\-_]//g; # only accept known-good chars
+   $theSearchVal = substr($theSearchVal, 0, 100); # limit string to reasonable length
+   
    my $originalSearch = $theSearchVal;
    my $renameTopic;
    my $renameWeb = "";
qq310926是我唯一用号,除此之外有其他号码号自称邪八冰血封情,则非本人。

TOP

发新话题