微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

web安全知识整理

常见漏洞

sql注入

原理:sql注入攻击是通过将恶意的SQL查询语句插入到应用的输入参数中,欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息

分类

   1、注入类型:字符型, 数字型

   2、提交方式:GET ,POST, COOKIE

   3、获取信息的方式:基于报错,盲注,基于回显

防御:

  1、校验用户输入,过滤特殊字符

  2、进行参数绑定,限制用户输入

  3、使用sql语句预处理,对sql语句首先进行预编译,然后进行参数绑定,最后传入参数。

判断方式:

  1、单引号判断法
  2、and 1=1 and 1=2 同真为真,其余为假
  3、or 1=1 or 1=2 同假为假,其余为真

注入方法

  https://blog.csdn.net/weixin_43915762/article/details/87909751

宽字符注入的原理?如何利用宽字符注入漏洞,payload如何构造?

原理:
  MysqL数据库在使用宽字节(GBK)编码时,会认为两个字符是一个汉字(前一个ascii码要大于128(比如%df),才到汉字的范围),而且当我们输入单引号时,MysqL调用转义函数,将单引号变为\’,其中\的十六进制是%5c,MysqL的GBK编码,会认为%df%5c是一个宽字节,也就是’運’,从而使单引号闭合(逃逸),进行注入攻击
%df‘ 会被PHP当中的addslashes函数转义为%df\‘ ,“\”既URL里的“%5C”,那么也就是说,%df‘会被转成%df%5C%27倘若网站的字符集是GBK,MysqL使用的编码也是GBK的话,就会认为%df%5C%27一个宽字符。也就是“縗’”

绕过方法参考文章

报错注入

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐