Teamgröße: 1
Arbeitszeitraum: siehe tuwel (kürzer als bei SecSysEng!)
Abgabegespräch: Kein Abgabegespräch. Es können jedoch StudentInnen vereinzelt zu Abgabegesprächen eingeladen werden, wenn es Fragen zur elektronischen Abgabe gibt.
Ziel dieses Labs ist es, Erfahrungen mit dem Tool jadx zum Dekompilieren von Android Apps zu sammeln.
Dieser Teil der Übung beschäftigt sich mit der Verschlüsselung von E-Mails, um Zugangsdaten zur Übungsumgebung zu erlangen. Dafür ist es erforderlich, Ihre Studierenden-E-Mail-Adresse zu verwenden (eMATRIKELNUMMER(at)student.tuwien.ac.at, MATRIKELNUMMER steht hier für Ihre eigene Matrikelnummer und (at) für @). Verwenden Sie einen Mail Client Ihrer Wahl und konfigurieren Sie die E-Mail Adresse (siehe: https://service.it.tuwien.ac.at/museum/zidline/zl17/studserver/).
Installieren Sie GnuPG oder eine andere zu PGP kompatible Software. Erstellen Sie ein Schlüsselpaar, weisen Sie die E-Mail Adresse dem Schlüssel zu und setzen Sie einen Namen für die User-ID. Zum Testen der Verschlüsselung verwenden Sie das Test Service. Nach Absenden Ihrer Matrikelnummer und des Public Keys erhalten Sie ein verschlüsseltes Mail, das einen Link mit Token enthält. Folgen Sie dem Link um Ihr Passwort auf unserer Übungsumgebung abzurufen. Beachten Sie bitte, dass der Link zeitlich begrenzt gültig ist und nur einmal verwendet werden kann um das Passwort abzurufen.
WICHTIG: Über dieses Test Service erhalten Sie auch verschlüsselt die Zugangsdaten für die weitere Übung. Es ist somit erforderlich, dass das Empfangen und Entschlüsseln von an Sie verschlüsselten E-Mails bei Ihnen wirklich funktioniert. Das Test Service kann für Tests natürlich mehrmals aufgerufen werden. Sollten Sie Ihr Passwort für die Übungsumgebung vergessen, müssen Sie die beschriebenen Schritte wiederholen um ein neues Passwort zu erhalten.
Mit den Zugangsdaten, die Sie per E-Mail erhalten haben, loggen Sie sich bitte per ssh in die Übungsumgebung (tese.esse-teaching.at
, Port 12555) ein. (Unter Windows können Sie putty
verwenden.)
Für die Verifikation des Hostkeys stehen Ihnen folgende Fingerprints zur Verfügung: SHA256:3qMDx+yDAORkWDeRgVDnNDE6Pr4D1rDzO6aAxwY8eqU (ECDSA)
, SHA256:XD34zT4TxQ/yuu8PHdvU3kZJZdAVTS94MIE0R6/02g4 (RSA)
. Ggf. müssen Sie Ihren Client konfigurieren um den gewünschten Key-Typ zu erhalten.
Bei Ihrem ersten Login mit dem initialen Passwort, das Sie durch das Webservice erhalten haben, müssen Sie ein neues Passwort für Ihren Übungsaccount festlegen.
Achten Sie bitte darauf, dass SSH Multiplexing nicht aktiviert ist während der Passwortänderung, da Sie sonst bei erneuten Logins über die aufgebaute Verbindung immer wieder aufgefordert werden ein neues Passwort festzulegen.
In Ihrem Home-Verzeichnis der Übungsumgebung finden Sie eine Android App in Form einer APK-Datei, welche Sie dekompilieren und in weiterer Folge analysieren sollen. Um die App zu dekompilieren bietet sich jadx an, das in Vorlesung 1 vorgestellt wurde. Sie können die APK-Datei beispielsweise mittels folgendem Befehl auf Ihren Rechner kopieren:
ssh -p 12555 eMATRIKELNUMMER@tese.esse-teaching.at "cat /home/eMATRIKELNUMMER/lab0/lab0.apk" > lab0.apk
Die App enthält eine Flag (Lösungsstring). Um diese zu erhalten, müssen Sie analysieren, welche Aktion durchgeführt werden muss, um die Generierung der Flag auszulösen. Installieren Sie die APK auf einem Emulator oder physischen Gerät und führen Sie die entsprechende Aktion aus, um die Flag zu erlangen. Die Flag hat immer folgende Syntax:
mobsec\{[a-f0-9]{16}\}
Bitte beachten Sie, dass Ihre Flag individuell generiert wird. Wenn Sie also versuchen, die Flag einer anderen Person abzugeben, dann wird das nicht erfolgreich sein.
Durch Abgabe der Flag nehmen Sie definitiv an der Lehrveranstaltung teil und erhalten ein Zeugnis.
Geben Sie die gefundene Flag in tuwel ab.