Security Analysis of Redact Tools in PDF

Global

Supervision: Christian Mainka, Vladislav Mladenov, Simon Rohlmann

Start date: sofort

Duration: 3 Monate

More details:

Description

Deutsch:
Seit der Veröffentlichung des Portable Document Format (PDF) (1993 durch Adobe Systems) haben sich PDF Dokumente etabliert, um Texte und Grafiken plattformunabhängig einem breiten Nutzerfeld verfügbar zu machen. Nicht selten enthalten PDFs auch sensible Daten, die vor einer Veröffentlichung entfernt bzw. geschwärzt werden müssen [1]. Hierfür bieten PDF Applikationen Redact Tools, die es ermöglichen sollen gezielt Texte oder Bilder zu schwärzen und sensible Meta Informationen zu entfernen [2]. Aber wie sicher und präzise sind diese Tools [3]?

Innerhalb dieser Bachelorarbeit soll durch eine Studie untersucht werden, wie zuverlässig das Entfernen von sensiblen Daten durchgeführt wird. Hieraus lassen sich drei Kernpunkte ableiten:

1. Testumgebung aus verschiedenen PDF Applikationen und einer Testmenge an PDFs erstellen.
2. Anforderungen an Redact Tools definieren.
3. Mit Hilfe eines selbstentwickelten Tools die Anforderungen gegen die zu testenden PDFs evaluieren.



English:
Since the publication of the Portable Document Format (PDF) in 1993 by Adobe Systems, PDF documents have been established to make texts and graphics available to a wide range of users independent of the platform. It is not uncommon for PDFs to contain sensitive data that must be removed or redacted before they can be published [1]. For this purpose, PDF applications offer Redact tools that make it possible to black out specific text or images and remove sensitive meta information [2]. But how secure and precise are these tools [3]?

In this bachelor thesis, a study should clarify how secure is the removal of sensitive data in PDFs. Three key points can be derived from this:

1. Create a test environment consisting of different PDF applications and a test set of PDFs.
2. Define requirements for Redact tools.
3. Evaluate the requirements against the PDFs to be tested using a self-developed tool.


Requirements

Programmierkenntnisse in Python.