Malicious PDF — malware analysis report

Static analysis result for SHA-256 058725a7082b3a5b…

MALICIOUS

PDF

711.6 KB First seen: 2021-01-11
MD5: cafb5ad6eaa7f5b7ac64700125f10e5c SHA-1: c500f56b844ec8f5303b16738bb7ac1e1e765bf8 SHA-256: 058725a7082b3a5b4f15b13801f14acc5c00253a9894704909b35ab11fd6308b
196 Risk Score

Malware Insights

MITRE ATT&CK
T1059.007 JavaScript T1566.001 Spearphishing Attachment T1203 Exploitation for Client Execution

The PDF file contains embedded JavaScript that utilizes the exportDataObject and nLaunch functions to prompt the user to save and execute an embedded file named 'putty.exe'. This is a common technique for delivering second-stage payloads. The ML classifier strongly indicates maliciousness, and the embedded executable further supports this assessment.

Machine Learning

  • Nyx PDF Classifier malicious score 0.9996

Heuristics 7

  • Embedded Windows executable payload in PDF stream critical PDF_EMBEDDED_PE_PAYLOAD
    PDF stream bytes contain an embedded Windows executable with a verified PE header. Exploit chains often hide droppers inside ordinary streams rather than standard /EmbeddedFile attachments.
  • JavaScript action low 2 related findings PDF_JAVASCRIPT
    PDF contains a /JavaScript action. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules.
  • exportDataObject + nLaunch — embedded-file launch-on-open dropper critical PDF_JS_EXPORT_LAUNCH_DROPPER
    PDF JavaScript calls exportDataObject() with nLaunch set, which extracts the document's embedded file and launches it in its default application. This is a launch-on-open dropper: the embedded file is the payload. No benign workflow auto-launches an extracted PDF attachment.
  • Embedded JS stream low PDF_JS
    PDF references a /JS stream. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules.
  • Suspicious extracted artifact medium EXTRACTED_FILE_STATIC_TRIAGE
    One or more files extracted from inside this sample matched static suspicious-content checks such as script obfuscation, encoded payload blobs, packed data, or execution/download terms.
  • Embedded file low PDF_EMBEDDED
    PDF embeds a file attachment — could carry an executable or another weaponised document as a nested payload
  • Embedded URL info EMBEDDED_URL
    One or more URLs were extracted from the document. The URL itself is not a detection — see the per-URL labels for which channel (macro, JS, link annotation, document body, ...) reached each URL.
    URL https://github.com/llvm/llvm-project/ In PDF document text
    • http://ocsp.comodoca.com0In PDF document text
    • https://secure.comodo.net/CPS0CIn PDF document text
    • http://ts-ocsp.ws.symantec.com07In PDF document text
    • http://ocsp.thawte.com0In PDF document text
    • https://www.chiark.greenend.org.uk/~sgtatham/putty/In PDF document text
    • http://schemas.microsoft.com/SMI/2005/WindowsSettingsIn PDF document text
    • http://crl.comodoca.com/COMODORSACertificationAuthority.crl0qIn PDF document text
    • http://crt.comodoca.com/COMODORSAAddTrustCA.crt0$In PDF document text
    • http://crl.comodoca.com/COMODORSACodeSigningCA.crl0tIn PDF document text
    • http://crt.comodoca.com/COMODORSACodeSigningCA.crt0$In PDF document text
    • http://ts-aia.ws.symantec.com/tss-ca-g2.cer0In PDF document text
    • http://ts-crl.ws.symantec.com/tss-ca-g2.crl0(In PDF document text
    • http://crl.thawte.com/ThawteTimestampingCA.crl0In PDF document text
    • https://www.chiark.greenend.org.uk/~sgtatham/putty/0In PDF document text

Extracted artifacts 4

Files carved from inside the sample during analysis.

FilenameKindSourceSize
putty.exe pdf-embedded-file PDF EmbeddedFile object 8 at offset 0x3E7 1179024 bytes
SHA-256: 961b36bb78d27b3432fae08e5c4272fe295b5e24e832c6f6bf1ec3cf87057dab
Detection
ClamAV: No threats found
Obfuscation or payload: likely
actual_type=PE; declared_or_context_type=PDF; filename=putty.exe; kind=pdf-embedded-file Static shellcode analysis found candidate code region(s). Indicators: SC_PEB_ACCESS_X64, SC_STR_SHELLEXEC, SC_STR_CREATEPROCESS Static shellcode analysis recovered API/import strings: ShellExecuteA, CreateProcessA, ExitProcess, CreateFileW, CreateThread, GetProcAddress
javascript_obj0009_000.js pdf-javascript-stream PDF /JS object 9 at offset 0xB1C34 58 bytes
SHA-256: ff76d49bf0bb2d892ebfb0f579d3579d715a214fc49ca054c146bd3785365c2f
Preview script
First 1,000 lines of the extracted script
this.exportDataObject({ cName: "putty.exe", nLaunch: 2 });
javascript_obj0009_001.js pdf-javascript-stream PDF /JS object 9 at offset 0xB1C34 56 bytes
SHA-256: 9531065bab611263314493c46704e83cf9516e6c8510dc086df214f30bd8bc54
Preview script
First 1,000 lines of the extracted script
this.exportDataObject({ cName: "putty.exe", nLaunch: 2 }
combined_document_js_000.js deobfuscated-js combined document JavaScript streams at offset 0xB1C34 115 bytes
SHA-256: 0bccab34c3a6f3fd04362ef198acbf85ac78850ae3baba4f4bc9d9edef96ebba
Preview script
First 1,000 lines of the extracted script
this.exportDataObject({ cName: "putty.exe", nLaunch: 2 });
this.exportDataObject({ cName: "putty.exe", nLaunch: 2 }