php 的注入漏洞 0xbf27

2014-11-04 18:38:23 +08:00
 bf68
大家是怎么过滤这些危险的
4057 次点击
所在节点    PHP
11 条回复
bf68
2014-11-04 18:39:01 +08:00
大神们
raincious
2014-11-04 18:43:21 +08:00
如果你遇到了这样的问题,只能说……是根本没做对。

1、改用MySQLli或者PDO;
2、设置正确的字符集;
3、再不济,你也有mysql_real_escape_string()(仍然要确保字符集正确);
4、任何尝试检查输入字符是否包含0xbf或0x27然后进行替换的行为都是……有病的。
nilai
2014-11-04 18:48:42 +08:00
宽字符注入。
bf68
2014-11-04 19:52:08 +08:00
有解决方案不大神们
invite
2014-11-04 20:00:21 +08:00
变量绑定可以不?
bf68
2014-11-04 20:01:35 +08:00
@invite 你是怎么处理的,大神
lygmqkl
2014-11-04 20:08:03 +08:00
php 上框架 bindValue 压根就不用考虑这个。。。。虽然有点偷懒,但是可以统一团队开发人员的效率。
lincanbin
2014-11-04 20:55:38 +08:00
强烈建议使用PDO
bf68
2014-11-04 21:31:44 +08:00
@lincanbin 可以具体点吗?都是刚刚接触php,谢谢
domino
2014-11-05 09:39:05 +08:00
1.用mysql_set_charset函数设置连接所使用的字符集为gbk
再调用mysql_real_escape_string来过滤用户输入。

2.将character_set_client设置为binary(二进制)。
只需在所有sql语句前指定一下连接的形式是二进制:
mysql_query("character_set_client=binary", $conn);
elvba
2014-11-05 23:47:58 +08:00
二楼正解,使用PDO以及设置正确的字符集,做好输入过滤。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/143943

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX