Wer kennt das nicht? Unsere Mitarbeitenden müssen Dokumente drucken, scannen oder faxen. Die Lösung für das Unternehmen: ein Multifunktionsdrucker. Hiermit habe ich ein Gerät, welches alles kann. Damit alles funktioniert, muss ich das Gerät ins Netzwerk hängen und über LDAP mit dem Active Directory verbinden, um die E-Mailadressen der Mitarbeitenden auszulesen.

Bei unseren Audits finden wir regelmässig Multifunktionsdrucker mit Standard Anmeldedaten. Dass die Verwendung von Standard Anmeldedaten nicht empfohlen ist, ist den meisten Kunden bekannt. Aber wie gross das Ausmass bei Nichtbeachtung dieser Empfehlung sein kann, ist weniger bekannt. Häufig kommt noch ein weiterer Konfigurationsfehler dazu. Der hinterlegte Service Account für den Zugriff auf LDAP wird als privilegierter Account (im schlimmsten Fall Domänen Administrator) angelegt.

Nachfolgend möchte ich aufzeigen, wie die Informationen vom Drucker ausgelesen werden können. Hier haben wir einen Multifunktionsdrucker mit Standard Anmeldedaten. Im unteren Bereich unter "Authentication" ist der Service Account inklusive des Kennworts hinterlegt.

drucker 1

Bei einigen Druckern kann das Kennwort direkt im Quellcode der Seite als Klartext-Kennwort ausgelesen werden.

drucker 2

Bei anderen kann die Maskierung des Kennworts deaktiviert werden. Dazu kann im Quelltext der Typ des Feldes einfach geändert werden (type="password" durch type="text" ersetzen).

drucker 3

drucker 4

Und schon kann das Kennwort in der Weboberfläche in Klartext ausgelesen werden.

drucker 5

Bei neueren Druckern funktionieren diese beiden Varianten nicht mehr. Das heisst jedoch nicht, dass diese sicher sind. Wird das klassische LDAP-Verfahren (unverschlüsselt) verwendet, können wir durch einen Man-in-the-Middle-Angriff das Kennwort abfangen. Wird LDAPS (LDAP über SSL/TLS) verwendet, werden wir bei dieser Methode nicht viel mitlesen können.

Hier besteht aber noch die Möglichkeit, den Drucker umzukonfigurieren. Dazu ändern wir den LDAP Server durch einen von uns kontrollierten Computer und deaktivieren die Verschlüsselung. So ist wieder ein Abfangen der Zugangsdaten mit Netcat oder tcpdump möglich.

drucker 6

Beim der nächsten LDAP-Abfrage, wird diese an den von uns kontrollierten Computer gesendet.

Hier noch ein paar Tipps, um sich dagegen zu schützen:

  • Die Standard Anmeldedaten bei allen Systemen im Netzwerk durch eigene ersetzen
  • Service Accounts immer mit den geringstmöglichen Berechtigungen anlegen (für LDAP reicht ein unprivilegierter Account)
  • Jeder Service Account nur für einen Dienst/Funktion nutzen
  • Überall wo möglich Verschlüsselung einsetzen. (HTTPS, LDAPS)
Informationen zum Autor
Marius Hamborgstrøm
Autor: Marius Hamborgstrøm
Im Jahre 2014 ist es mir gelungen goSecurity von meinem Talent zu überzeugen. Als Experte für Penetration Tests konnte ich schon viele Schwachstellen aufdecken, bevor dies einem Hacker gelungen ist. Zudem bin ich für die Gestaltung und die Durchführung unserer goTraining-Kurse Hack to PROTECT (H2P) und Hack to PROTECT [ADVANCED] (H2PA) verantwortlich. Durch meine jahrelange Erfahrung als IT-Leiter einer mittelständischen Bank, kenne ich auch die Seite des Administrators und des IT-Managers in einer Umgebung mit hohen Sicherheitsanforderungen. Aus dieser Erfahrungskiste kann ich die Anforderungen unserer Kunden auch bei Audits und umfassenden Beratungen schnell verstehen und Sie zielgerichtet und praxisnah beraten. Jede Sicherheitslücke bei Ihnen zu finden, bevor dies jemand anderem gelingt, ist leider nicht immer realistisch. Und dennoch ist es mein Antrieb und mein Anspruch.