CVE-2021–26855与CVE-2021–27065漏洞分析及复现

这篇具有很好参考价值的文章主要介绍了CVE-2021–26855与CVE-2021–27065漏洞分析及复现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

文章首发先知社区:https://xz.aliyun.com/t/10098

前言

微软在上半年三月披露了关于Exchange邮件服务器CVE-2021–26855(SSRF)与CVE-2021–27065(任意文件写入)的漏洞,这两个漏洞配合可以造成未授权的webshell写入,是非常严重的高危漏洞。漏洞刚出来那会儿并未注意,正好前两天4哥在群里发了个关于该漏洞的复现环境,重新想起这个事,正好暑假也没干啥正事,借此机会复现分析一下。

CVE-2021–26855

CVE-2021–26855是⼀个SSRF,只需要能够访问Exchange服务器,攻击者可以不经过任何类型的身份验证来利⽤此漏洞。

相关漏洞在C:\Program Files\Microsoft\ExchangeServer\V15\FrontEnd\HttpProxy\bin目录下的Microsoft.Exchange.FrontEndHttpProxy.dll
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

进入ProxyModule类的OnPostAuthorizeRequest函数,该函数用于对post请求的安全检查,函数中继续调用了该类的OnPostAuthorizeInternal函数。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

OnPostAuthorizeInternal函数中调用SelectHandlerForUnauthenticatedRequest函数,从函数名称上来看该函数作用为:寻找对未验证安全请求的处理方法。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

跟进SelectHandlerForUnauthenticatedRequest函数,发现对不同的ProtocolType,生成了不同的 httpHandler。而这个ProtocolType正是url中的web子目录,比如请求/ecp/n.png,ProtocolType就是ecp。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

ProtocolType为ecp时,如果BEResourceRequestHandler类的CanHandle函数返回值为真,就会使用BEResourceRequestHandler作为处理方法。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

跟进CanHandle方法。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

可以看到如果要返回真,则需要同时让GetBEResouceCookieIsResourceRequest函数同时返回值为真。跟进这两个函数。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

CVE-2021–26855与CVE-2021–27065漏洞分析及复现

先看GetBEResouceCookie,该函数要请求cookies中一个BEResource字段的值,实际上就是X-BEResource
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

那么在cookies中设置一个X-BEResource字段的值即可。
IsResourceRequest则是需要请求路径以.js,.png等结尾。

这时候回到OnPostAuthorizeInternal函数中,由于BEResourceRequestHandler是继承于ProxyRequstHandler类的,就会执行((ProxyRequestHandler)httpHandler).Run(context),最终在HttpContext.RemapHandler中把该httpHandler设置给this._remapHandler,即是context.Handler。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

CVE-2021–26855与CVE-2021–27065漏洞分析及复现

CVE-2021–26855与CVE-2021–27065漏洞分析及复现

又调用了Handler.BeginProcessRequest(),此时Handler为BEResourceRequestHandler,该类没有BeginProcessRequest函数,但却继承了ProxyRequestHandler。因此实际上调用的是ProxyRequestHandler.BeginProcessRequest()函数。

BeginProcessRequest函数创建线程调用ProxyRequestHandler.BeginCalculateTargetBackEnd函数。该函数作用是根据Cookie中的X-BEResource字段来判断与生成指向BackEnd的目标url。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

继续跟入,BeginCalculateTargetBackEnd调用ProxyRequestHandler.InternalBeginCalculateTargetBackEnd方法。

InternalBeginCalculateTargetBackEnd调用BEResourceRequestHandler.ResolveAnchorMailbox方法。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

CVE-2021–26855与CVE-2021–27065漏洞分析及复现

BEResourceRequestHandler.ResolveAnchorMailbox方法会获取X-BEResource字段。

跟入查看BackEndServer.FromString函数,会发现它依据~符号切割beresourceCookie字符串,前半段作为fqdn,后半段作为version。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

fqdn为:全限定域名。在邮件中例如:sd@vip.com
而version指的是BackEndServer Version。

fqdn和verison变量将在ProxyRequestHandler.BeginProxyRequest函数中调用的的GetTargetBackEndServerUrl函数进行调用。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

由于BackEndServer.Fqdn是可控的,clientUrlForProxy.Host则是可控的。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

继续看ProxyRequestHandler.BeginProxyRequest后面,ProxyRequestHandler.CreateServerRequest将吧uri发送给后端服务器。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

跟踪ProxyRequestHandler.CreateServerRequest,函数中PrepareServerRequest将进行uri代理请求的身份认证判断。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

通过最后一个else绕过认证,达到一个SSRF漏洞攻击的过程。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

CVE-2021–26855与CVE-2021–27065漏洞分析及复现

CVE-2021–27065

CVE-2021–27065是⼀个任意⽂件写⼊漏洞,它需要登陆的管理员账号权限才能触发。而CVE-2021–26855正好可以为我们提供了管理员账号权限。

登录管理员账号后,进入:服务器——>虚拟目录——>OAB
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

编辑OAB配置,在外部链接中写⼊shell并保存。

http://aaa/<script language="JScript" runat="server">function Page_Load(){eval(Request["SD"],"unsafe");}</script>

CVE-2021–26855与CVE-2021–27065漏洞分析及复现

保存后选择重置虚拟目录
写下shell位置为:\\127.0.0.1\c$\inetpub\wwwroot\aspnet_client\sd.aspx
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

查看shell文件,写入了一句话木马。
CVE-2021–26855与CVE-2021–27065漏洞分析及复现

参考

https://www.praetorian.com/blog/reproducing-proxylogon-exploit/

https://jishuin.proginn.com/p/763bfbd5ac72

https://zhuanlan.zhihu.com/p/357183471文章来源地址https://www.toymoban.com/news/detail-472288.html

到了这里,关于CVE-2021–26855与CVE-2021–27065漏洞分析及复现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CVE-2021-22204 GitLab RCE之exiftool代码执行漏洞深入分析(二)

    文章写于2022-01-19,首发在天融信阿尔法实验室 1 前言 2 前置知识 2.1 JPEG文件格式 2.2 Perl模式匹配 3 exiftool源码调试到漏洞分析 3.1 环境搭建 3.2 漏洞简介 3.3 exiftool是如何解析嵌入的0xc51b标签 3.4 exiftool是如何调用parseAnt函数 3.5 parseAnt函数分析 3.6 parseAnt漏洞分析 4 漏洞利用 4.1

    2024年02月14日
    浏览(41)
  • Docker Dirtypipe(CVE-2022-0847)漏洞复现与分析容器逃逸

    同脏牛,通过写只读内存,对映射的内存做篡改 GitHub - greenhandatsjtu/CVE-2022-0847-Container-Escape: CVE-2022-0847 used to achieve container escape 利用CVE-2022-0847 (Dirty Pipe) 实现容器逃逸 云原生之容器安全实践-安全客 - 安全资讯平台 (anquanke.com) 从脏管道(CVE-2022-0847)到docker逃逸 - 先知社区 (aliy

    2024年02月13日
    浏览(56)
  • Exchange ProxyLogon远程代码执行漏洞(CVE-2021-27065)和勒索病毒BlackKingdom家族

            Exchange Server是微软公司的一套电子邮件服务组件,是个消息与协作系统,主要提供包括从电子邮件、会议安排、团体日程管理、任务管理、文档管理、实时会议和工作流等协作应用。 Exchange Server 2019 logo         CVE-2021-26855与CVE-2021-27065是微软在2021年3月2日发布

    2024年02月07日
    浏览(34)
  • CVE-2022-30190分析以及复现和POC利用 //Microsoft Office MSDT 远程代码执行漏洞

    在微软官方的介绍里,是从 Word 等调用应用程序使用 URL 协议调用 MSDT 时存在远程执行代码漏洞。成功利用此漏洞的攻击者可以使用调用应用程序的权限运行任意代码。 意思是恶意 Word 文档可以使用远程模板功能从远程服务器获取 HTML 文件,并且 HTML 代码可以使用 Microsoft 的

    2024年02月04日
    浏览(70)
  • Sudo堆溢出漏洞(CVE-2021-3156)复现

    2021 年 1 月 26 日,Qualys Research Labs在 sudo 发现了一个缺陷。sudo 解析命令行参数的方式时,错误的判断了截断符,从而导致攻击者可以恶意构造载荷,使得sudo发生堆溢出,该漏洞在配合环境变量等分配堆以及释放堆的原语下,可以致使本地提权。 环境版本 • ubuntu 20.04 • su

    2024年02月11日
    浏览(36)
  • CVE-2021-22205 GitLab 远程命令执行漏洞复现

    目录 一、漏洞信息 二、环境搭建 三、复现过程 1.测试漏洞 2.漏洞利用,反弹shell 四、修复建议 一、漏洞信息 漏洞名称 GITLAB 远程命令执行漏洞 漏洞编号 CVE-2021-22205 危害等级 高危 CVSS评分 6.5 漏洞厂商 Ruby 受影响版本 11.9 = Gitlab CE/EE 13.8.8;13.9 = Gitlab CE/EE 13.9.6;13.10 = Gitlab

    2024年02月05日
    浏览(44)
  • 漏洞深度分析|CVE-2022-1471 SnakeYaml 命令执行漏洞

    YAML是一种数据序列化格式,设计用于人类的可读性和与脚本语言的交互。 SnakeYaml是一个完整的YAML1.1规范Processor,支持UTF-8/UTF-16,支持Java对象的序列化/反序列化,支持所有YAML定义的类型。 https://github.com/snakeyaml/snakeyaml SnakeYaml通常使用方法如下: new Yaml(new Constructor(TestDataC

    2023年04月27日
    浏览(39)
  • CVE-2012-0158漏洞分析报告

    软件名称 :Office 2003 软件版本 :11.5604.5606 漏洞模块 :MSCOMCTL.OCX 模块版本 :---- 编译日期 :2022-07-10 操作系统 :Windows XP/2003/7/8.1/10 漏洞编号 :CVE-2013-4730 危害等级 :超危 漏洞类型 :缓冲区溢出 威胁类型 :本地 软件简介 Microsoft Office 2003 是微软公司针对 Windows操作系统所

    2024年02月06日
    浏览(50)
  • HIKVISION海康威视代码执行漏洞复现(CVE-2021-36260)

    2023年将会持续于B站、CSDN等各大平台更新,可加入粉丝群与博主交流:838681355,为了老板大G共同努力。 GET访问/x.asp

    2024年02月12日
    浏览(45)
  • 暴雷(CVE-2012-1889)漏洞分析报告

    软件名称 :Microsoft Internet Explorer 软件版本 :6.0/8.0 漏洞模块 :msxml3.dll 模块版本 : 编译日期 :2022-07-06 操作系统 :Windows XP/7 漏洞编号 :CVE-2012-1889 危害等级 :高危 漏洞类型 :缓冲区溢出 威胁类型 :远程 软件简介 Internet Explorer(简称:IE)是微软公司推出的一款网页浏

    2024年02月05日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包