目录
Exchange服务
Exchange是一种由Microsoft开发的邮件服务器和协作平台。它提供了一系列功能和服务,用于管理电子邮件、日历、联系人、任务等信息,以及实现团队协作和共享资源。
Exchange服务器的主要功能包括:
-
电子邮件服务:Exchange提供了强大的电子邮件功能,支持发送、接收、存储和管理电子邮件。它支持标准的邮件协议(如SMTP、POP3、IMAP)和安全的邮件传输。
-
日历和会议管理:Exchange的日历功能使用户可以创建、共享和管理日程安排,安排会议和发送会议邀请。它还支持资源预订,如会议室和设备的预订。
-
联系人和地址簿:Exchange提供了集中管理和共享联系人信息的功能。用户可以创建个人联系人,并与其他用户共享联系人列表。此外,Exchange还提供全局地址簿,用于查找组织内的其他用户。
-
任务管理:Exchange允许用户创建和跟踪任务,设置优先级和截止日期,并与其他用户进行任务分配和共享。
-
共享文件和资源:Exchange提供了公共文件夹和共享邮箱的功能,允许团队成员共享文件、文档和电子邮件。
-
移动设备支持:Exchange支持移动设备访问,使用户可以通过手机、平板电脑等移动设备访问和管理邮件、日历和联系人。
实验环境
访问主机地址,网页
电脑上的应用版
一般这种邮箱服务,其账号密码和域用户的账号密码是一样的。
可以提供邮箱向域内所有用户发邮件
域横向移动-内网服务-Exchange探针
一. 端口扫描
exchange会对外暴露接口如OWA,ECP等,会暴露在80端口,而且25/587/2525等端口上会有SMTP服务,所以可以通过一些端口特征来定位exchange。
使用CS端口扫描25/587/2525
二. SPN扫描
CS上调用SPN进行扫描,探针内网的服务
shell powershell setspn -T 0day.org -q /
三. 脚本探针(还可以探针是否有安全漏洞)
扫出来的CVE漏洞并不是说一定存在,只是这个版本上爆出过漏洞,可以尝试利用
python Exchange_GetVersion_MatchVul.py 192.168.3.142
域横向移动-内网服务-Exchange爆破
要先收集一下域内的用户名,看考这篇文章的一些命令
net use /domain
CS执行
CS收集主机明文密码
一 .BurpSuite Intruder模块爆破
使用已知账号 0day\jack admin!@#45抓登陆包
爆破账户的时候要注意是 0day\jack 域+用户
返回响应长度不同 并且返回内容设置了cookie ,爆破成功这些exchange用户名密码都为admin!@#45
成功登录,需要配置代理,内网环境
当然这只是关于Exchange邮箱的利用,接下来可以进行邮件钓鱼之类的攻击,但是并不能直接进行横向移动
域横向移动-内网服务-Exchange漏洞
根据上面的脚本确定Exchange的版本
微软官方找符合利用条件的漏洞
Exchange Server build numbers and release dates | Microsoft Learn
也可以根据脚本给出的可能漏洞进行测试,但是脚本有个缺点,早期的一些漏洞并没有收录
到网上走相关的EXP进行测试,就是成功率比较低
CVE-2020-17144 Exchange RCE
本地攻击机挂代理进行测试
前提:普通用户
影响版本:Microsoft Exchange Server 2010
CVE-2020-17144.exe 192.168.3.142 jack admin!@#45
项目可以通过github下载,自己编译的时候自定义后门内容,上传后门成功后连接后门直接横向移动到Exchange服务器上,也就是域控服务器
这个无法提供代理进行访问,需要在在jack-pc上可以进行访问连接
内网攻防在Exchange上的利用还是比较简单的
邮件服务不一定是在域控上,个人感觉配合钓鱼更好。