如何从代码角度分析SQL注入
这期内容当中小编将会给大家带来有关如何从代码角度分析SQL注入,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
嘉禾网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设等网站项目制作,到程序开发,运营维护。创新互联自2013年起到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
在新手入门web安全的时候,sql注入往往是最先上手的一个漏洞,它也是危害相当大的一个漏洞,存在此漏洞的话,将有被脱裤的风险。
漏洞讲解
如图是一个正常的登陆框
点击登陆时,抓包
这时,直接将其丢入sqlmap中,进行注入检测
可以看到直接爆出了系统环境、数据库版本等信息
这里先补充一下前面所用到的代码
login.php
logins.php
代码中直接接收了传来的参数,然后直接带入查询数据库,没有进行任何的过滤,所以就导致了sql注入的产生。
简单修复
这里,只需要将传入的参数进行过滤,就可以了,过滤的方法有很多,这里我使用addslashes()函数来进行过滤。
首先增加一个过滤的函数
然后,在传入的时候,对变量进行过滤
此时再次sqlmap跑一下
已经无法注入了
拓展
这里需要注意一个问题,addslashes()函数也是有绕过的方法,所以一定要注意以下问题
1.一定不要使用gbk,会存在宽字节注入
2.在编码解码之后,一定要再次进行过滤
3.在使用这个函数之后,一定不要再使用stripslashes()函数
4.如果还要做字符串的替换的话,一定要注意其严谨性
上述就是小编为大家分享的如何从代码角度分析SQL注入了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。
文章标题:如何从代码角度分析SQL注入
文章出自:http://azwzsj.com/article/pgdeij.html