Antonio Sanz en sus artículos “PDF deconstruído al aroma de shellcode”, hace un análisis empleando la utilidad peepdf de un PDF que explota la vulnerabilidad “CVE 2013-2729”.
A partir de estos artículos, se me ocurrió la idea de generar una regla de YARA para detectar estos PDF maliciosos.
Para ponernos en situación, recordemos que la vulnerabilidad CVE 2013-2729 explota un fallo de Adobe Reader X que no valida bien los datos de imágenes BMP incrustadas en el documento. Mediante este fallo se puede ejecutar código malicioso debido a que provoca un heap overflow.
La siguiente regla de yara nos permite localizar los ficheros que explotan dicha vulnerabilidad:
rule shellcode_cve_2013_2729
{
meta:
author = "Manuel"
company = "S2 Grupo"
date = "2014-12-17"
description = "PDF con shellcode CVE 2013_2729"
link1 = "http://www.binamuse.com/papers/XFABMPReport.pdf"
link2 = "https://github.com/feliam/CVE-2013-2729/blob/master/XFABMPExploit.py"
link3 = "https://github.com/feliam/CVE-2013-2729/blob/master/E10.1.4.pdf "
link4 = "https://www.securityartwork.es/2014/09/30/pdf-deconstruido-al-
aroma-de-shellcode-i/"
md5test = "eb9228f17568704676385428d3bbefff"
strings:
$xfa1 = "XFA 1 0 R"
$xfa2 = "XFA 2 0 R"
$xfa3 = "XFA 3 0 R"
$s0 = "AcroForm 2 0 R"
$s1 = "/Filter [/Fl"
condition:
1 of ($xfa*) and all of ($s*)
}
Para ejecutar la regla, utilizaremos la siguiente instrucción:
yara <fichero regla> -s <fichero pdf>
Esperamos que esta regla os sirva de ayuda para detectar y analizar estos hermosos PDFs con regalo que seguro que recibís estas navidades.
