数码资讯
PHP注入与开发安全的详细分析
1,PHP注入的基本原理 程序员的水平和经验也参差不齐。程序员的很大一部分不判断用户输入数据时,写代码的合法性,使应用程序存在安全隐患。用户可以提交一个数据库查询代码,并获得一些数据,他想知道应用程序返回的结果,称为SQL注入,即SQL注入。受影响的系统:一个系统不检查和滤波器的输入参数。 SQL注
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
1,PHP注入的基本原理
程序员的水平和经验也参差不齐。程序员的很大一部分不判断用户输入数据时,写代码的合法性,使应用程序存在安全隐患。用户可以提交一个数据库查询代码,并获得一些数据,他想知道应用程序返回的结果,称为SQL注入,即SQL注入。受影响的系统:一个系统不检查和滤波器的输入参数。
SQL注入过程
通常,我们从地址接收一些必要的参数,例如:
在页面中,我们使用2来编写SQL语句。
正常条件:从id = 2的表中选择*
php100。phpid = 2
如果我们熟悉SQL语句,我们知道2可以替换我们需要的SQL语句。
例如:存在(从admin中选择ID)
2。预防注射的几种方法
事实上,我们需要过滤一些常用关键字并遵从:
选择、插入、更新、删除和*等
例子:
复制代码代码如下所示:
功能inject_check($ sql_str){
返回preg_match( /选择|插入更新删除| | | / / / / | * | / * | / / / / / / |。/ |联盟|为| load_file |文件 /我,sql_str美元); / /过滤器
}
或者通过过滤系统功能之间的特殊符号
Addslashes(需要过滤的内容)
3、PHP其他本地安全设置
register_globals =关闭设置为关闭状态
在编写SQL语句时,尽量不要省略小引号和单引号。
复制代码代码如下所示:
从id = 2(不规则)的表中选择*
从中选择*。表。哪里.ID = 2(规范)
提高数据库命名技巧,并根据程序的特点命名一些重要字段。
封装避免SQL语句直接暴露的常用方法
正确使用_post美元美元美元_get _session等验收参数和过滤
程序员的水平和经验也参差不齐。程序员的很大一部分不判断用户输入数据时,写代码的合法性,使应用程序存在安全隐患。用户可以提交一个数据库查询代码,并获得一些数据,他想知道应用程序返回的结果,称为SQL注入,即SQL注入。受影响的系统:一个系统不检查和滤波器的输入参数。
SQL注入过程
通常,我们从地址接收一些必要的参数,例如:
在页面中,我们使用2来编写SQL语句。
正常条件:从id = 2的表中选择*
php100。phpid = 2
如果我们熟悉SQL语句,我们知道2可以替换我们需要的SQL语句。
例如:存在(从admin中选择ID)
2。预防注射的几种方法
事实上,我们需要过滤一些常用关键字并遵从:
选择、插入、更新、删除和*等
例子:
复制代码代码如下所示:
功能inject_check($ sql_str){
返回preg_match( /选择|插入更新删除| | | / / / / | * | / * | / / / / / / |。/ |联盟|为| load_file |文件 /我,sql_str美元); / /过滤器
}
或者通过过滤系统功能之间的特殊符号
Addslashes(需要过滤的内容)
3、PHP其他本地安全设置
register_globals =关闭设置为关闭状态
在编写SQL语句时,尽量不要省略小引号和单引号。
复制代码代码如下所示:
从id = 2(不规则)的表中选择*
从中选择*。表。哪里.ID = 2(规范)
提高数据库命名技巧,并根据程序的特点命名一些重要字段。
封装避免SQL语句直接暴露的常用方法
正确使用_post美元美元美元_get _session等验收参数和过滤
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。