Blog

Informativ, aktuell und spannend – der Oneconsult Cybersecurity Blog.

PDF-Phishing: So schützen Sie sich richtig
Nadia Meichtry
Nadia Meichtry
|
12.06.2025
(aktualisiert am: 12.06.2025)

Wussten Sie, dass PDF-Dateien oft als Einfallstor für Cyberangriffe dienen? Diese scheinbar harmlosen Dokumente können mit gefährlichen Viren infiziert sein, die unbemerkt auf Ihrem Computer Schaden anrichten. Häufig versteckt sich Malware in PDF-Dateien, um Sicherheitslücken auszunutzen und Ihre sensiblen Daten zu stehlen.

In unserem neuen Blogbeitrag zeigen wir Ihnen, wie Sie PDFs auf Viren überprüfen können, um die Sicherheit Ihrer Dokumente zu gewährleisten. Erfahren Sie, wie Sie sich mit einfachen Schritten effektiv vor Cyberangriffen schützen können!

Warum sind PDF-Dateien beliebte Werkzeuge für Phishing-Angriffe?

PDF-Dateien (Portable Document Format) werden täglich sowohl in der Arbeitswelt als auch von Privatpersonen verwendet. PDFs haben sich zudem zu Dokumenten mit erweiterten Funktionen wie etwa interaktiven Formularen, Multimediainhalten und Skripten weiterentwickelt. Aus diesem Grund sind PDF-Dokumente anfällig für schädliche Skripte und sonstige böswillige Aktionen, die zur Kompromittierung des Systems oder zum Datendiebstahl führen können.

Angreifer werden PDF-Dateien mit bösartigen Links oder Skripten erstellen und sie als Anhang einer möglichst überzeugenden E-Mail versenden und so das Vertrauen der Benutzer ausnutzen. Hier erfahren Sie, wie Sie solche Phishing-E-Mails erkennen können. Dadurch sind PDF-Dokumente auch für Cyberkriminelle ein beliebtes Werkzeug für Phishing-Angriffe. Bei einer Interaktion des Benutzers, beispielsweise durch Klicken auf den Link, wird eine Phishing-Webseite aufgerufen oder Schadsoftware nachgeladen.

Aufbau einer PDF-Datei und mögliche Angriffsvektoren

Um PDF-Dateien analysieren zu können, ist es wichtig, ihre Struktur zu verstehen. Eine PDF-Datei ist wie folgt aufgebaut:

  • Header: gibt die verwendete PDF-Version an
  • Body: enthält alle Daten des Dokuments, die dem Benutzer angezeigt werden (Text, Bilder, usw.), und besteht aus Objekten.
  • Querverweistabelle (xref): enthält die Verweise auf alle Objekte
  • Trailer: beschreibt, wo sich die Querverweistabelle und andere spezielle Objekte zur Darstellung des Dokuments befinden.

Eine PDF-Datei besteht also aus Objekten, die mit Hilfe von Schlüsselwörtern wie /Size usw. angeben, wie das Dokument dargestellt werden soll. Es gibt jedoch auch Schlüsselwörter, die darauf hinweisen können, dass der Inhalt potenziell gefährlich ist, z.B.:

  • /AA, /OpenAction: gibt eine Aktion an, die automatisch ausgeführt werden soll, wenn das Dokument angezeigt wird
  • /JS, /JavaScript: enthält JavaScript
  • /AcroForm, /XFA: interaktive PDF-Formulare, kann auch JavaScript enthalten
  • /RichMedia, /EmbeddedMedia: eingebettete (Flash-)Programme
  • /Launch: Startaktionen
  • /URI: ruft eine URL auf, möglicherweise für Phishing
  • /SubmitForm, /GoToR: kann Daten an eine URL senden.

Die Kombination mehrerer Schlüsselwörter, z.B. automatische Aktion und JavaScript, macht ein PDF-Dokument sehr verdächtig.

Dynamische vs. Statische Analyse von PDF-Dokumenten

Der schnellste Weg, um festzustellen, ob ein PDF-Dokument bösartig ist, ist dessen kryptografischen Hash-Wert bei einem Online-Dienst wie VirusTotal zu überprüfen. Ist dieser Hash-Wert noch unbekannt, kann eine dynamische Analyse mithilfe einer Sandbox zusätzliche Informationen über das Dokument liefern. Aber Vorsicht bei kostenlosen Sandbox-Diensten: Handelt es sich um ein legitimes internes Dokument, so wird dieses mit dem Hochladen potenziell öffentlich zugänglich gemacht! Aus diesem Grund ist eine statische Analyse in einer virtuellen Maschine eine sehr interessante Alternative.

Tools zur PDF-Virenprüfung

Der nachfolgende Prozess dient der statischen Analyse eines PDF-Dokuments und wird in diesem Beitrag genauer beschrieben:

  1. pdfid.py verwenden, um einen Überblick über riskante Merkmale der PDF-Datei zu erhalten und ihre Eigenschaften einzuschätzen
  2. pdf-parser.py oder peepdf.py verwenden, um bestimmte Objekte genauer zu untersuchen
  3. Eingebetteten Code extrahieren, z.B. Shellcode, PowerShell, JavaScript, und bei Bedarf entschleiern (wird im weiteren Verlauf des Artikels nicht erläutert).

Durch den Einsatz diverser Tools können False Positives und False Negatives weitestgehend vermieden oder zumindest auf ein Minimum reduziert werden. Die Ergebnisse der einzelnen Tools werden miteinander verglichen und hinsichtlich ihrer Ähnlichkeit und Konsistenz beurteilt. Dies dient einer Erhöhung der Zuverlässigkeit und des Vertrauens in die Ergebnisse.

Fallbeispiele – statische Analyse von PDF-Dateien

In diesem Artikel werden die zwei abgebildeten PDF-Dateien, «View Attached Invoice.pdf» und «Material.pdf», beispielhaft nach diesem Verfahren analysiert.

Vorsicht! Alle folgenden Aktivitäten sollten in einer virtuellen Maschine ohne Netzwerkzugang ausgeführt werden. Bei der Analyse schädlicher PDFs kann es grundsätzlich zur Kompromittierung des umgebenden Systems kommen.

Abbildung 1: «View Attached Invoice.pdf» in einem PDF-Reader
Abbildung 2: «Material.pdf» in einem PDF-Reader

Eingebettete Programme werden nur nach Erlaubnis des Nutzers gestartet, d.h. wenn das Dokument geöffnet wird, erscheint ein Fenster mit einer Sicherheitswarnung (siehe Abbildung 3). Diese Sicherheitseinstellung ist standardmässig in Adobe und Reader X, 9.3 und 8.2 aktiviert (siehe Adobe Erweiterte Sicherheitseinstellung für PDF-Dateien). Der Nutzer muss dann entscheiden, ob er den Zugriff erlauben oder blockieren möchte, wie in der folgenden Abbildung für das zweite Dokument ersichtlich ist. Hat ein Angreifer eine bösartige PDF-Datei unter einem glaubwürdigen Vorwand versendet, ist die Wahrscheinlichkeit hoch, dass der Nutzer diese Warnung ignoriert und die Ausführung des enthaltenen Schadcodes erlaubt.

Abbildung 3: Sicherheitswarnung beim Öffnen der Datei «Material.pdf»

Analyse mit pdfid.py

pdfid.py ist ein Tool von Didier Stevens, das nach bestimmten PDF-Schlüsselwörtern zur Erstauswertung sucht. In diesem Fall ist das Resultat von pdfid.py wie folgt:

Abbildung 4: Resultat von pdfid.py für «View Attached Invoice.pdf»

Hier zeigt das Flag /Page, dass das Dokument eine Seite lang ist, was bei bösartigen PDFs häufig vorkommt. Ansonsten gibt es auf den ersten Blick nichts Auffälliges, da die anderen Flags einen Nullwert haben. Das Dokument enthält dementsprechend kein JavaScript (/JavaScript und /JS) und keine eingebetteten interaktiven Formulare (/AcroForm und /XFA). Es startet keine externen bzw. eingebetteten Programme (/Launch und /EmbeddedFiles) und wird auch nicht automatisch geöffnet (/AA und /OpenAction).

Trotz keiner klaren Anzeichen für ein bösartiges Dokument wird empfohlen, die Untersuchung mit einem anderen Tool wie pdf-parser.py fortzusetzen. pdfid.py ist nicht umfassend und zeigt z.B. nicht an, ob das Dokument auf Links verweist, die bösartig sein könnten. Daher sollte der Inhalt des Dokuments genauer analysiert werden.

Analyse mit pdf-parser.py

pdf-parser.py ist ebenfalls ein von Didier Stevens entwickeltes Tool. Es parst die verschiedenen Elemente der PDF-Datei und zeigt ihren Inhalt an.

Dieses Tool bietet auch die Möglichkeit, mit dem «-s»-Parameter nach Schlüsselwörtern zu suchen. In diesem Beispiel wird bei der Suche nach «URI» folgendes Ergebnis zurückgegeben:

Abbildung 5: Resultat der Suche nach URI mit pdf-parser.py in «View Attached Invoice.pdf»

Diese URI (siehe rote Box in Abbildung 5) ist ein Link als Anmerkung (siehe «Type: /Annot») im Objekt 12.

Eine Suche auf urlscan.io zeigt, dass es sich dabei um eine Phishing-Seite handelt, die auf Adobe abzielt. Aus dem Screenshot unten kann entnommen werden, dass nach den E-Mail-Zugangsdaten des Benutzers gefragt wird, um das Dokument lesen zu können.

Abbildung 6: Resultat der Suche auf urlscan.io

Das Ziel des PDF-Dokuments ist es also, die Zugangsdaten für den Adobe-Cloud-Account des betroffenen Benutzers zu erhalten.

Analyse mit peepdf.py

peepdf.py kann als Alternative zu pdfid.py und pdf-parser.py genutzt werden. Es bietet eine interaktive Shell, mit der sich durch die Struktur der PDF-Datei navigieren und deren Inhalt durchsuchen lässt. Das Tool zeigt auch an, wenn es verdächtige Elemente findet.

Für Material.pdf lautet das Ergebnis wie folgt:

Abbildung 7: Resultat von peepdf.py für «Material.pdf»

peepdf.py hat drei verdächtige Objekte gefunden, Objekt 7 (/AcroForm) in der Version 0 und Objekte 173 und 65 (/Launch) in der Version 2 des Dokuments.

Hier ist Objekt 173 von besonderem Interesse, da es auf eine URL verweist:

Abbildung 8: Analyse des Objekts 173 mit peepdf.py

Diese URL wird also aufgerufen. Sie war auch in der Warnmeldung zu sehen (siehe Abbildung 3).

Eine Suche auf urlscan.io zeigt, dass über diese URL die Datei «hgfetb.R11» heruntergeladen wird und dass es sich bei dieser Datei um ein RAR-Archiv handelt (siehe rote Box in Abbildung 9).

Abbildung 9: Suchergebnisse für die verdächtige URL auf urlscan.io

Ausserdem weist VirusTotal darauf hin, dass diese Datei von mehreren Security-Produkten als bösartig eingestuft wurde.

Abbildung 10: Resultat des Scans der Datei «hgfetb.R11» mit VirusTotal

Ziel dieser PDF-Datei ist es also, das Opfer zum Herunterladen von Schadsoftware zu veranlassen.

Fazit

Als nützliche Alternative zu Sandboxes kann mit einer statischen Analyse schnell festgestellt werden, ob ein PDF-Dokument bösartig ist und welche Eigenschaften es aufweist. Durch die Anwendung der vorgestellten Analysetechniken und Tools können Sie potenzielle Bedrohungen erkennen und Ihre digitale Integrität schützen. Doch Sicherheit hört nicht beim Dokument auf – sie beginnt beim Nutzer. Investieren Sie daher in die Cybersecurity Awareness Schulung für Ihre Mitarbeitenden und stärken Sie Ihre erste Verteidigungslinie gegenüber Cyberangriffen. 

Falls Sie noch Fragen haben oder Unterstützung bei der Umsetzung wünschen, hilft unser Digital Forensics Team gerne.

Haben Sie Fragen zur PDF-Analyse? Kontaktieren Sie uns.
Nadia Meichtry

Autorin

Nadia Meichtry studierte Forensik an der UNIL in Lausanne, besitzt die Zertifikate GCFA, GREM, GDAT, GRID und OPST und arbeitet seit 2020 als Digital Forensics & Incident Response Specialist bei Oneconsult.

LinkedIn

Ihre Sicherheit hat höchste Priorität – unsere Spezialisten unterstützen Sie kompetent.

Erreichbarkeit von Montag bis Freitag 08.00 – 18.00 Uhr (Ausnahme: Kunden mit SLA – Bitte über die 24/7 IRR-Notfallnummer anrufen).

Privatpersonen wenden sich bitte an Ihren IT-Dienstleister des Vertrauens oder die lokale Polizeidienststelle.

Weitere Informationen zu unseren DFIR-Services finden Sie hier:

QR_CSIRT_2022@2x
CSIRT zu den Kontakten hinzufügen

Nichts verpassen! Melden Sie sich für unseren kostenlosen Newsletter an.