php安全处理数据

对于php中的处理数据的流程?

数据存mysql前,需要做哪些处理?安全一些呢,从mysql读出数据后,还要做哪些处理?
请指点。发表一下你的看法。

阅读 5.1k
3 个回答
  1. 所有SQL都要做防注入处理
  2. 所有输出都要防XSS

以上做法包括不限于使用PHP。
在PHP中防SQL注入的方法推荐使用 Pdo prepare 语法并设置:$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

在PHP中防 XSS 一般使用 htmlspecialchars 处理用户输入的字段。另外,单靠这个是不够的,还需要对 img 的 src 等做处理。

使用php的pdo_mysql扩展
不仅在性能上优势明显
就是安全性,从此不必在为sql注入烦恼
会非常智能的根据字符集对特殊字符quota
你需要做的就是写好sql,prepare, exec,

http://www.piaoyi.org/php/PDO-Mysql-SQL-injection.html

请阅读此文体会

存数据库主要注意两个,XSS和SQL注入两个方面。
这两个漏洞属于常规漏洞,在接受参数的时候一定要做好过滤。我分别从两种漏洞的方法说一下吧。

SQL注入,在接收参数的时候需要做好过滤,比如你知道接受的是一个用户ID,那应该是整形数据,直接用intval()先过滤,在执行的时候尽量使用PDO,实在不能使用PDO也好做好参数内容是可控的。

XSS部分,xss主要有三种类型,反射,存储,dom。接收的时候也是需要做好过滤,反射和存储这里可以使用htmlspecialchars来防范,dom型xss主要在于前端

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题