Seit mittlerweile vier Wochen ist meine Bachelorarbeit unter dem Titel “Schutz vertraulicher Inhalte vor aktiven Web-Browser-Technologien” angemeldet. Der erste von drei Monaten ist also fast rum. Zeit für mich mein (eigentlich wöchentliches oder sogar tägliches) Resümee zu ziehen.
Kurz gesagt, geht es in meiner Arbeit darum vertrauliche Daten vor dem Dienstanbieter zu schützen. Also der Partei, die unsere Daten besitzt. Die üblichen Bedrohungsmodelle lassen diesen Angreifer außen vor.
Zugegebenermaßen ist der Dienstanbieter (hoffentlich) in den meisten Fällen nicht der Böse, aber die informationelle Selbstbestimmung leidet doch sehr stark unter Firmen wie Google. Von den sogenannten „Social Networks“ wollen wir erst gar nicht anfangen. Danke Web 2.0.
In meinem speziellen Fall sollen Patientendaten geschützt werden. Warum genau man da der HostSeite nicht vertraut, ist mir zwar noch nicht ganz klar, muss mich ja aber auch nicht wirklich beschäftigen. Es geht hier ja schließlich ums Prinzip!
Außerdem müssen die Daten „nur“ vor JavaScript geschützt werden. Schließlich schreibe ich ja „nur“ eine BachelorArbeit.
Die ersten Wochen Bachelor Arbeit haben überhaupt keinen Spaß gemacht. Man steht vor einem riesen Berg Arbeit, hat überhaupt kein Überblick und hat nur einmal während des BachelorStudiums überhaupt eine wissenschaftliche Arbeit abgegeben.
Davon abgesehen wurde schnell klar, dass innerhalb der Arbeit ein funktionierendes Firefox-Plugin entstehen soll. Immerhin soll meine Arbeit später benutzbar sein und nicht wieder in Vergessenheit geraten.
Leider waren die ersten Ansätze nicht gerade von Erfolg gekrönt und konnten sehr schnell einfach ausgehebelt werden oder genügten schlicht nicht den Ansprüchen meines Betreuers. Erst vor eineinhalb Wochen (das wollte ich schon immer mal ausschreiben, hehe) entwickelte sich ein funktionierender Ansatz, den ich momentan versuche umzusetzen.
Vom Zeitdruck getrieben, tut sich mittlerweile ein kleines Licht am Ende des Tunnels auf. Die kleinen Erfolgserlebnisse setzen ein und es geht voran.
Mit der Dokumentation von Mozilla habe ich immer noch zu kämpfen. Ist leider nicht die Beste und Ausführlichste. In XUL und mit dem Mozilla-Framework zu arbeiten, ist jedoch eine geniale Sache und macht richtig Spaß. Wer hätte gedacht, dass es so simple ist, wenn man weiß wies geht…
Doch wie schützt man nun die Daten vor dem Dienstanbieter?
Da ich den Inhalt vor JavaScript schützen muss, könnte man natürlich einfach NoScript installieren und die Sache wäre gegessen. Leider würde das aber auch die Benutzbarkeit der Seite stark einschränken. Eventuell würde sie teilweise sogar gar nicht mehr funktionieren.
Also ist die Idee einen Proxy den ganzen fiesen Script ausführen zu lassen. Dieser Proxy besitzt nie vertrauliche Daten und kann vertrauliche Daten nicht lesen.
Wenn dann der Proxy dann die Seite geladen hat, schickt er sie wieder an den Benutzer. Auf dem Weg werden dann die verschlüsselten Daten noch vom Plugin dekodiert. Außerdem führt die geparste Seite keinen Script mehr aus. Alle eventuellen Events wurden überschrieben, gelöscht oder geändert.
So zumindest die Theorie.
Bisher kann der Benutzer schon fröhlich im Dokument rumklicken und Aktionen werden an den Proxy weitergeleitet. Der Proxy tut auch schon das, was er soll. Leider gibt es noch ein paar kleinere Probleme mit dem Zurücksenden.
Alles soll natürlich super fancy aussehen. Aber fancy ist nicht immer programmierfreundlich…leider.









Subscribe by RSS
Wow, nach so langer Zeit voller enttäuschender Enthaltsamkeit in der Aktualisierung nun der Hammer mit der Bachelor-Arbeit. Ich finde es auch negativ, dass man heute nur noch eine Hausarbeit und eine Abschlusspromotion macht, und das wissenschaftliche Arbeiten nicht häufiger üben kann.
Den Ansatz deiner Thesis finde ich sehr interessant und spannend (da kann man glatt neidisch werden…
) und diese Thematik wird künftig nach meiner Einschätzung auch immer wichtiger.
Die Vorgehensweise hört sich so an, als ob als Nebeneffekt auch negativ ausgelegter Code abgefangen wird; zumindest, da dieser ja nicht direkt auf der Clientseite ausgeführt wird.
Wünsche dir viel Erfolg und drücke entsprechend die Daumen.
Mja. Ich würde ehrlich gesagt gerne mehr bloggen. Da steht einiges auf der To-Do-Liste, aber ich finde momentan einfach nich die Zeit. Wenn ich dann mal Zeit habe bin ich zu k.o. um zu schreiben.
Das Thema meiner Arbeit hätte ich wohl nich besser treffen können. Ich wollte ja was in Richtung IT-Sicherheit und WebEntwicklung haben. Besser hätte ich es wohl nich treffen können