前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何绕过电子邮件格式过滤进行SQL注入

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

作者头像
FB客服
发布2018-09-21 12:16:02
1.1K0
发布2018-09-21 12:16:02
举报
文章被收录于专栏:FreeBufFreeBuf

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

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

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

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

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

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

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

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

以下为测试所用payload列表:

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

总结

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

格式如下:

“injection_here”@email.com

例如:

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

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

最后,祝你好运!

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

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-09-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档