Dynamic Guestbook是一款基于WEB的客户留言版程序,可使用在Linux,Unix或者Microsoft Windows操作系统下。 Dynamic Guestbook在处理用户提交的内容上过滤不充分,可导致远程攻击者可以以httpd进程的权限执行任意代码。 Dynamic Guestbook没有在任意表单域充分检查用户输入的内容,如PHP代码等,攻击者可插入任意PHP代码到表单,导致攻击者以Guestbook进程的权限在目标系统上执行任意代码。 问题存在与如下代码中: ###################### quote source ############################ ##### ?ffnen der Datei um zu lesen ##### open (GBDB, $in{gbdaten}); @inhalt = <GBDB>; close (GBDB); ##### Eintrag an den Anfang des Files schreiben ##### chomp($date); open (GBDB, \">>$gbdaten\") || print \"Konnte nicht in $gbdaten schreiben\"; print GBDB \"$in{name}:|:$in{mail}:|:$date:|:$ENV{\'\'REMOTE_ADDR\'\'}:|:$in{kommentar}\n\"; foreach $zeile (@inhalt) { print GBDB $zeile; } close (GBDB); ################### /quote ########################## 这个用来写用户输入到一文件的脚本没有过滤任何字符。
Dynamic Guestbook是一款基于WEB的客户留言版程序,可使用在Linux,Unix或者Microsoft Windows操作系统下。 Dynamic Guestbook在处理用户提交的内容上过滤不充分,可导致远程攻击者可以以httpd进程的权限执行任意代码。 Dynamic Guestbook没有在任意表单域充分检查用户输入的内容,如PHP代码等,攻击者可插入任意PHP代码到表单,导致攻击者以Guestbook进程的权限在目标系统上执行任意代码。 问题存在与如下代码中: ###################### quote source ############################ ##### ?ffnen der Datei um zu lesen ##### open (GBDB, $in{gbdaten}); @inhalt = <GBDB>; close (GBDB); ##### Eintrag an den Anfang des Files schreiben ##### chomp($date); open (GBDB, \">>$gbdaten\") || print \"Konnte nicht in $gbdaten schreiben\"; print GBDB \"$in{name}:|:$in{mail}:|:$date:|:$ENV{\'\'REMOTE_ADDR\'\'}:|:$in{kommentar}\n\"; foreach $zeile (@inhalt) { print GBDB $zeile; } close (GBDB); ################### /quote ########################## 这个用来写用户输入到一文件的脚本没有过滤任何字符。