Dynamic Guestbook是一款基于WEB的客户留言版程序,可使用在Linux,unix或者Microsoft windows操作平台下。 Dynamic Guestbook在处理用户提交的内容上过滤不充分,可导致跨站脚本执行漏洞。 Dynamic Guestbook没有在任意表单域充分检查用户输入的内容,如HTML标记等,攻击者可插入任意脚本代码到表单,由Guestbook生成后,当其他用户浏览这个留言时就可以导致脚本在用户浏览器上执行,可能使基于Cookie认证的信息被泄露。 问题存在与如下代码中: ###################### 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在处理用户提交的内容上过滤不充分,可导致跨站脚本执行漏洞。 Dynamic Guestbook没有在任意表单域充分检查用户输入的内容,如HTML标记等,攻击者可插入任意脚本代码到表单,由Guestbook生成后,当其他用户浏览这个留言时就可以导致脚本在用户浏览器上执行,可能使基于Cookie认证的信息被泄露。 问题存在与如下代码中: ###################### 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 ########################## 这个用来写用户输入到一文件的脚本没有过滤任何字符。