百度空间 | 百度首页 
 
查看文章
 
鸡蛋里挑骨头
2009-05-30 12:31
呵呵,大家都看过黑哥写的: 高级PHP应用程序漏洞审核技术 吧


发现几个问题!在5.6.1.2 数据截断下的数据截断问题中,先来看下原文:
1) Mysql SQL Column Truncation Vulnerabilities
  
    这个漏洞又是大牛Stefan Esser发现的(Stefan Esser是我的偶像:)),这个是由于mysql
的sql_mode设置为default的时候,即没有开启STRICT_ALL_TABLES选项时,MySQL对于插入超
长的值只会提示warning,而不是error(如果是error就插入不成功),这样可能会导致一些截
断问题。测试如下:
   
--code-------------------------------------------------------------------------
mysql> insert into truncated_test(`username`,`password`) values("admin","pass");

mysql> insert into truncated_test(`username`,`password`) values("admin           x", "new_pass");
Query OK, 1 row affected, 1 warning (0.01 sec)

mysql> select * from truncated_test;
+----+------------+----------+
| id | username   | password |
+----+------------+----------+
| 1 | admin      | pass     |
| 2 | admin      | new_pass |
+----+------------+----------+
2 rows in set (0.00 sec)
-------------------------------------------------------------------------------

好了,我不知道是不是笔误还是咋了,在插入的表的列名竟然是用单引号包括起来的,这个单引号看起来而且好象是中文状态下输入的,看我的测试截图吧


看见了吗?有单引号的情况是出错的,正确情况下是没有单引号的,如图。


另外,这一段提到的截断,不知道黑哥说的那个超长到底是多长 ,大家看我的长度够了没?

看上图的显示结果,依然是没有warning 的……

倒是第二个2) Mysql charset Truncation vulnerability测试成功了!


以上吖吖的,欢迎大家拍砖

类别:黑客安防 | 添加到搜藏 | 浏览() | 评论 (11)
 
最近读者:
 
网友评论:
1
2009-05-30 12:38 | 回复
http://hi.baidu.com/aullik5/blog/item/502ade55a599cc5ed109068c.html
 
2
2009-05-30 12:38 | 回复
偶顶。。。。
 
3
2009-05-30 12:53 | 回复
回复heige:黑哥,默认是关闭的啊!
 
4
2009-05-30 13:00 | 回复
回复heige:了解了,那个不是单引号
 
5
2009-05-30 13:04 | 回复
单引号≠``.....
 
6
2009-05-31 07:21 | 回复
原点浏览器是保存密码。
 
7
2009-05-31 10:39 | 回复
回复崔承琦:啥意思来着?
 
8
2009-05-31 16:06 | 回复
回复冰的原点:你浏览器是保存密码呗,百度的账号。
 
9
2009-06-01 18:50 | 回复
回复崔承琦:怎么我的这篇文章里提到了浏览器?
 
10
2009-06-07 09:56 | 回复
回复冰的原点:能看到哦。
 
11
2009-06-08 12:50 | 回复
回复崔承琦:哪里看的呀?

 
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu