温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

防止sql注入的方式有哪些

发布时间:2021-08-31 15:40:02 来源:亿速云 阅读:345 作者:chen 栏目:数据库

这篇文章主要讲解了“防止sql注入的方式有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“防止sql注入的方式有哪些”吧!

  防止SQL注入的方式有:执行sql语句时使用addslashes进行sql语句转换,过滤掉sql语句中的一些关键词,提高数据库表和字段的命名技巧等。

  

SQL注入产生的原因

  程序开发过程中不注意规范书写 sql 语句和对特殊字符进行过滤,导致客户端可以通过全局变量 POST 和 GET 提交一些 sql 语句正常执行。

  

防止SQL注入的方式

  1、 开启配置文件中的 magic_quotes_gpc 和 magic_quotes_runtime 设置

  2、 执行 sql 语句时使用addslashes 进行 sql 语句转换

  3、 Sql 语句书写尽量不要省略双引号和单引号。

  4、 过滤掉 sql 语句中的一些关键词:update、insert、delete、select、 * 。

  5、 提高数据库表和字段的命名技巧,对一些重要的字段根据程序的特点命名,取不易被猜到的。

  6、 Php 配置文件中设置 register_globals 为 off,关闭全局变量注册

  7、 控制错误信息,不要在浏览器上输出错误信息,将错误信息写到日志文件中。

  8、 可以使用 waf 防护系统进行防护。

  SQL数据库查找错误日志文件路径

  show variables like ‘log_error’;

  在mysql数据库中,错误日志功能是默认开启的。并且,错误日志无法被禁止。默认情况下,错误日志存储在mysql数据库的数据文件中。错误日志文件通常的名称为hostname.err。其中,hostname表示服务器主机名。

  错误日志信息可以自己进行配置的,错误日志所记录的信息是可以通过log-error和log-warnings来定义的,其中log-err是定义是否启用错误日志的功能和错误日志的存储位置,log-warnings是定义是否将警告信息也定义至错误日志中。

  默认情况下错误日志大概记录以下几个方面的信息:服务器启动和关闭过程中的信息(未必是错误信息,如mysql如何启动InnoDB的表空间文件的、如何初始化自己的存储引擎的等等)、服务器运行过程中的错误信息、事件调度器运行一个事件时产生的信息、在从服务器上启动服务器进程时产生的信息。

  SQL数据库查找日志文件路径

  show variables like ‘general_log_file’;

  日志是mysql数据库的重要组成部分。日志文件中记录着mysql数据库运行期间发生的变化;也就是说用来记录mysql数据库的客户端连接状况、SQL语句的执行情况和错误信息等。当数据库遭到意外的损坏时,可以通过日志查看文件出错的原因,并且可以通过日志文件进行数据恢复。

  SQL数据库慢查询日志文件路径

  show variables like ‘slow_query_log_file’;

感谢各位的阅读,以上就是“防止sql注入的方式有哪些”的内容了,经过本文的学习后,相信大家对防止sql注入的方式有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

sql
AI