DISCUZ漏洞与提升权限 :: 『孤光剑隐』

来源: BlogBus 原始链接: http://www.blogbus.com:80/blogbus/blog/diary.php?diaryid=513856 存档链接: https://web.archive.org/web/20050113030917id_/http://www.blogbus.com:80/blogbus/blog/diary.php?diaryid=513856


本站公告 BLOG停止更新 常见IP碎片攻击详解 从上传webshell到突破TCP-IP筛选到3389终端登陆 子网掩码及其应用 Windows命令行技巧 用PERL打造自己的缓冲区漏洞利用程序 Linux安全综述 DISCUZ2上传漏洞分析 上传漏洞变换利用 如何使tcp包和udp包穿透防火墙 TC函数命令详细表 dreamtheater Angel showlife tx7do jpxiong chensun netsky KKQQ Ziqi spy8888 Luzhu eVan SUNU Taynni wuhui CAT Neeao KusTa Hoky eviloctal lam Iceberg Jace Hardy Gusu・Lanye swap lilo xiaolu knIfe kaka Lo7e4L Super・Hei lichdr lamp FlyWeb evilhsu hackfree powers Sunlion EvilPhive xeric icyfoxlovelace GuoMing swords an85 ring zwx steve S4Ld0ne solaris myzky xpfox liso sevenline Golden・Section phoenix xrens BlackFox tuz hardy29a victorwoo xueyu・xiongying Blackfish skyshui zhouzhen cnbird <<<在ASP中实现页面与数据库连接的几种实用方法 | 首页 | 子网掩码及其应用>>> DISCUZ漏洞与提升权限 时间: 2004-11-24 这个漏洞是孟兄发现的,我在这里感谢他!也感谢ANGEL的分析! DISCUZ 2.2F的这个漏洞在register.php 的代码中:有如下代码: $email = trim($email); if(!$doublee && strstr($email, '@' )) { $emailadd = "OR email='$email'"; } 这里是说如果不存在 $doublee 这个变量,并且判断邮件地址格式正确,就 指定 $emailadd 这个变量为 "OR email='$email'" ,为后面的 SQL 语句做准备 。往下有一段代码如下: $query = $db->query("SELECT COUNT(*) FROM $table_members WHERE username='$username' $emailadd "); if($db->result($query, 0)) { showmessage('profile_account_duplicate'); } 默认 $emailadd = "OR email='$email'" 是满足的,所以上面的 SQL 语句 就变成判断用户名和邮箱,有任意一个相同,就提示“该用户名或 Email 地址已 经被注册了,请返回重新填写。” 利用的方法是给 $doublee 赋值,然后就可以饶过 $emailadd = "OR email='$email'" 这句,然后再自己构造 $emailadd 这个变量,这个就是我在本 地表单的 action 构造的原因。