Campaña de Midnight Blizzard a gran escala utilizando archivos RDP

Microsoft publicó recientemente un blog de seguridad sobre la campaña de spear-phishing a gran escala de Midnight Blizzard dirigida a miles de personas en más de 100 organizaciones. La campaña incluía un archivo de configuración del Protocolo de escritorio remoto (RDP) firmado que se conectaba a un servidor controlado por el atacante.

En su blog, Microsoft proporcionó consultas de KQL para comprobar si su inquilino se vio afectado por esta campaña. Sin embargo, faltaba alguna información sobre los hashes del archivo RDP, pero se puede encontrar en CERT-UA #11690 (enlace a continuación). Para entender el cronograma, es importante leer los otros dos avisos.

Usando la función de enriquecimiento ‘FileProfile()’ de DefenderXDR para examinar el archivo RDP, parece que solo 2 organizaciones con MDE se vieron afectadas entre el 25 y el 28 de octubre. Esto implica que de las 100 organizaciones afectadas, es probable que 98 no estuvieran utilizando la plataforma MDE.

Otro punto a tener en cuenta es que Microsoft mencionó un archivo RDP firmado, pero la función ‘FileProfile()’ indicó que no está firmado (sin verificar).

Al crear KQL para la detección, es posible que desee realizar ajustes en consecuencia.

//Replace "Timestamp" with "TimeGenerated" when running this KQL query in Microsoft Sentinel.
let RdpFiles = externaldata(MD5: string , RdpFileName: string, Campaign: string, Ref: string )[@"https://raw.githubusercontent.com/CTI-Driven/Advanced-Threat-Hunting-KQL-General-Campaigns/refs/heads/main/APT29-Midnight-Blizzard/APT29-Midnight-Blizzard-RdpFileName.csv"] with (format="csv", ignoreFirstRecord=True);
let Domains = externaldata(Domains: string , Campaign: string, Ref: string)[@"https://raw.githubusercontent.com/CTI-Driven/Advanced-Threat-Hunting-KQL-General-Campaigns/refs/heads/main/APT29-Midnight-Blizzard/APT29-Midnight-Blizzard-Domains.csv"] with (format="csv", ignoreFirstRecord=True);
let RdpFilesName    =(RdpFiles | where isnotempty(RdpFileName) | distinct RdpFileName);
let RdpFilesMd5     =(RdpFiles | where isnotempty(MD5) | distinct MD5);
let DomainNames     =(Domains | where isnotempty(Domains) | distinct Domains);
let timeframe = 24hr;
let NetworkEvents =( DeviceNetworkEvents
| where Timestamp >= ago(timeframe)
| where ActionType in ("DnsConnectionInspected","ConnectionSuccess","ConnectionFailed")
| extend AdditionalFields_info = parse_json(AdditionalFields)
| where (AdditionalFields_info.query in~(DomainNames) or RemoteUrl in~(DomainNames)));
let UserClickEvents = (union  UrlClickEvents, EmailUrlInfo | where Timestamp >= ago(timeframe) | where Url has_any (DomainNames) or UrlDomain in~ (DomainNames));
let RdpFileEvents   = (DeviceFileEvents | where Timestamp >= ago(timeframe) | where FileName in~ (RdpFilesName) or MD5 in~ (RdpFilesMd5));
// Combine all detections
let Suspicious_APT29_Midnight_Blizzard_Activities= (
    union NetworkEvents, UserClickEvents, RdpFileEvents
    | summarize arg_max(Timestamp, *) by DeviceId
    | order by Timestamp asc
);Suspicious_APT29_Midnight_Blizzard_Activities

Fuente del KQL

Midnight Blizzard lleva a cabo una campaña de spear-phishing a gran escala utilizando archivos RDP: https://www.microsoft.com/en-us/security/blog/2024/10/29/midnight-blizzard-conducts-large-scale-spear-phishing-campaign-using-rdp-files/

Equipo de Respuesta a Emergencias Informáticas de Ucrania (CERT-UA #11690): https://cert.gov.ua/article/6281076

Amazon identificó los dominios de Internet abusados por APT29: https://aws.amazon.com/blogs/security/amazon-identified-internet-domains-abused-by-apt29/

Filed under
Ciberseguridad
Previous Next
For this post, the comments have been closed.