TWiki是一款灵活易用、功能强大的企业协作平台和知识管理系统。 TWiki软件没有正确地验证某些URL输入,如果访问了包含有TWiki配置脚本的URL的话,攻击者就可以读取任意文件。 以下是/bin/configure脚本中的有漏洞代码: if( $action eq 'image' ) { # SMELL: this call is correct, but causes a perl error # on some versions of CGI.pm # print $query->header(-type => $query->param('type')); # So use this instead: print 'Content-type: '.$query->param('type')."\n\n"; if( open(F, 'logos/'.$query->param('image'))) { local $/ = undef; print <F>; (F); } exit 0; } 漏洞位于open()函数中。用户可以设置$query->param('type'),因此可以设置为text/plain。如果将image变量设置为文件路径的话,就可以查看该文件。
TWiki是一款灵活易用、功能强大的企业协作平台和知识管理系统。 TWiki软件没有正确地验证某些URL输入,如果访问了包含有TWiki配置脚本的URL的话,攻击者就可以读取任意文件。 以下是/bin/configure脚本中的有漏洞代码: if( $action eq 'image' ) { # SMELL: this call is correct, but causes a perl error # on some versions of CGI.pm # print $query->header(-type => $query->param('type')); # So use this instead: print 'Content-type: '.$query->param('type')."\n\n"; if( open(F, 'logos/'.$query->param('image'))) { local $/ = undef; print <F>; (F); } exit 0; } 漏洞位于open()函数中。用户可以设置$query->param('type'),因此可以设置为text/plain。如果将image变量设置为文件路径的话,就可以查看该文件。