绕过电子邮件格式过滤进行SQL注入

栏目: 数据库 · 发布时间: 6年前

内容简介:在此之前先给大家讲个冷笑话。这篇文章原文乍一看是英文的,但仔细一看我就懵了。没错!它并不是英文,而是印度尼西亚文。还好内容并不多,不然还不得吐血~—— 小编日常懵比前不久,我加入了一家印度尼西亚金融科技公司的bug赏金计划。经过一番测试,我在“忘记密码”功能中找到了一个电子邮件输入框。依据经验,我开始尝试以下输入。

在此之前先给大家讲个冷笑话。这篇文章原文乍一看是英文的,但仔细一看我就懵了。没错!它并不是英文,而是印度尼西亚文。还好内容并不多,不然还不得吐血~

—— 小编日常懵比

前不久,我加入了一家印度尼西亚金融科技公司的bug赏金计划。经过一番测试,我在“忘记密码”功能中找到了一个电子邮件输入框。依据经验,我开始尝试以下输入。

首先,我尝试了不带空格的输入:

a@a.com=>有效
“a”@.com =>有效

然后,尝试了带空格的输入:

dimaz arno@test.com =>无效
“dimaz arno”@test.com =>有效

从以上结果我们可以看出,当地址中出现空格将会被过滤,而加了双引号就会被认为是一个完整的字符串则为合法。这符合会话中的 RFC 3696 邮件检验标准。

绕过电子邮件格式过滤进行 <a href='https://www.codercto.com/topics/18630.html'>SQL</a> 注入

但字符 “(“ 和 “)”并不会被阻止,这对于构造sql注入payload非常“有用”。

绕过电子邮件格式过滤进行SQL注入

以下为测试所用payload列表:

绕过电子邮件格式过滤进行SQL注入 绕过电子邮件格式过滤进行SQL注入 绕过电子邮件格式过滤进行SQL注入

通过枚举最终确定数据库字符长度为10。

总结

当你在测试中碰到了一些限制特殊字符的电子邮件过滤器,你可以像我一样尝试在@符之前添加双引号,这可能会帮你绕过过滤机制。

格式如下:

“injection_here”@email.com

例如:

“<script src=//xsshere?”@email.com

“1-’or’1'=’1”@email.com

最后,祝你好运!

*参考来源: medium ,FB小编 secist 编译,转载请注明来自FreeBuf.COM


以上所述就是小编给大家介绍的《绕过电子邮件格式过滤进行SQL注入》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Learning PHP, MySQL, and JavaScript

Learning PHP, MySQL, and JavaScript

Robin Nixon / O'Reilly Media / 2009-7-21 / USD 39.99

Learn how to create responsive, data-driven websites with PHP, MySQL, and JavaScript - whether or not you know how to program. This simple, streamlined guide explains how the powerful combination of P......一起来看看 《Learning PHP, MySQL, and JavaScript》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具