4种检查:跨站检查、SQL注入检查、逻辑检查、性能检查。
我们这次的安全检查,主要涉及到跨站和SQL安全检查。
跨站检查是指,接受站外的数据,比如用户输入或者URL数据等,这里包含了大量的不可信任数据,在写入数据库之前,必须过滤,而且过滤后与入库前,不得再做任何更改。
SQL安全检查是指,与数据库交互的时候,如果是要求的是数字,必须保证传入的数据是数字(使用intval等函数),如果要求的是文本类型,那么必须使用类似pg_escape_string之类的函数,这样写入数据库的数据是经过转义的,是安全的。从数据库取出来直接显示就可以了。
比如尖括号<,会被转义为<,从数据库取出后,将<传给客户端,由浏览器进行解析,在页面上显示尖括号<。
需要特别注意的是,php中没有与pg_escape_string相对应的处理SQL Server的函数。