本帖最后由 90_ 于 2016-1-7 22:27 编辑
http://down.chinaz.com/soft/26549.htm
找了个代码量小的留言本看了下,功能简单,前台有个留言功能,但是有过滤函数
[PHP] 纯文本查看 复制代码 function make_safe($variable) {
$variable = addslashes(trim($variable));
return $variable;
}
但是addslashes是不防xss的
$head=make_safe($_POST["head"]);
$email=make_safe($_POST["email"]);
$content=make_safe($_POST["content"]);
$type=make_safe($_POST["type"]);
$yzm=make_safe($_POST["yzm"]);
$hf_content="";
$modi_date=date("Y-m-d H:i:s");
这些变量当中除了$content留言内容有htmlspecialchars函数处理,其它的都没过滤,那么可以利用的变量还剩$head和$email,本地测试输出email处可以打到cookie进入后台
但是在http://www.xiaoyuanzx.com/guestbook/index.php 官网演示时发现输出email处好像也过滤了, 最后通过输出头像处出弹个框证明下
后台则有非常明显的SQL注入 Admin/lyedit.php
require ("../config/link.php"); //连接数据库
$id=$_GET['ly_id'] or die("参数有误");
$sql = "SELECT * FROM ly where ly_id='$id' ";
$result = mysql_db_query($db_name, $sql);
$ly_data = mysql_fetch_array($result);
今天那条弹框的留言已经被删了,有兴趣的可以下载代码本地测试 |