导航:首页 > 净水问答 > mysqlsql过滤函数

mysqlsql过滤函数

发布时间:2024-07-03 14:17:36

『壹』 php中防止SQL注入,该如何解决

php注入,原则上是因为sql拼接引起的。

通常避免sql注入的原则是:

  1. 类型校验,比如int类型的字段进行强制转换intval。

  2. 避免字符型的sql拼接,使用unhex绕过sql解析截断的字符处理。

举个例子:

select * from pass where username = '$a';

这种情况,当$a="1' or 1 = 1 or '2' = '2"情况时,真个sql变成了

select * from pass where username = '1' or 1 = 1 or '2' = '2' ;

那么这个sql就会改变sql原有语义。

类型校验大家都会,这里就不进行说明了,下面说明下使用unhex来进行字符型字段转码,绕过sql语义解析截断避免sql注入。

使用unhex(bin2hex)后,原有逻辑变成

$a = bin2hex($a);

select * from pass where username = unhex('$a') ;

由于bin2hex,$a转化成16进制数避免了sql注入的风险。

sql执行阶段,优先执行sql语义解析,而后进行unhex('$a') 的运算,所以会把"1' or 1 = 1 or '2' = '2"整个字符串当做一个字段执行,而不会进行解析,避免了sql注入问题~

阅读全文

与mysqlsql过滤函数相关的资料

热点内容
25蒸馏水电导率标准 浏览:682
纯水机管子怎么安装 浏览:560
金属污水用什么药剂比较好 浏览:271
2011德国过滤与分离技术设备工业展 浏览:665
奔驰s级油泵滤芯如何拆卸 浏览:295
纯水机压力桶加压多少气 浏览:709
饮水机的过滤网怎么拆卸 浏览:761
苏州工业园区达菲特过滤技术有限公司 浏览:34
纯水与乙二醇多少比例能零下二十度 浏览:91
广东招污水化验员 浏览:114
反渗透一段是什么 浏览:202
污水管道质检怎么预约 浏览:737
废水cod需要多少重量样品 浏览:650
反渗透进水氯离子高怎么回事 浏览:345
菏泽反渗透药剂厂家电话 浏览:898
为什么空气净化器滤芯要换 浏览:999
香港买高铁票回内地用什么证件买 浏览:818
超滤膜内压外压区别 浏览:58
激光除垢剂 浏览:36
纯水管道用什么管好 浏览:870