- Mitglied seit
- 10 Mai 2006
- Beiträge
- 15,275
- Punkte für Reaktionen
- 1,751
- Punkte
- 113
Wenn ein ansonsten über die BPjM-Liste limitierter Nutzer im Netzwerk (betrifft nur das LAN und damit "per default" das neu definierte Standardprofil "Kind") gleichzeitig Schreibzugriff auf das Wurzelverzeichnis des NAS (genauer auf das dort liegende Unterverzeichnis "FRITZ") hat, kann er durch Manipulation des Inhalts der BPjM-Liste die Filterung für dort verzeichnete Adressen umgehen.
Diese Liste wird (in der Standardeinstellung) ebenfalls für die Filterung im Gastnetz verwendet, von dort ist aber kein Zugriff auf das NAS möglich. Der Effekt einer manipulierten Datenbank ist aber für den Zugriff aus dem Gastnetz natürlich derselbe.
Die aktualisierte BPjM-Liste wird nach dem Update unter "/var/media/ftp/FRITZ/bpjm.data" gespeichert und wenn dort der schreibende Zugriff möglich ist und gleichzeitig der Samba-Service für diesen Zugriff zur Verfügung steht, kann diese Liste "an Ort und Stelle" so geändert werden, daß die Hash-Werte für die dort hinterlegten Internet-Adressen nicht mehr stimmen und in der Folge der Zugriff auf diese Domains ebenfalls gestattet wird. Ein Zugriff über den FTP-Service kann nicht zur Manipulation benutzt werden, da die Datei nur "in place" geändert werden kann, ansonsten bemerkt der Dienst für die Inhaltsfilterung (contfiltd) die Änderung und erzeugt eine neue, wieder gültige Datei.
Ein "proof of concept" für diesen Angriff ist als PowerShell-Skript in meinem GitHub-Repository zu finden, zusammen mit der ausführlicheren (na gut, so viel mehr gibt es da eigentlich nicht zu sagen) Beschreibung, wo das Problem liegt und wie ein Angreifer es ausnutzen könnte (auch wenn nicht jeder seine Kinder als "Angreifer" sehen wird, Teenager können ganz schön gerissen sein). Nach dem Schreiben per PoC ist die BPjM-Filterliste "leer" - wer diese also wirklich braucht und es einfach mal selbst probieren wollte/will, startet einfach die Box im Anschluß neu.
Die effektivste Gegenmaßnahme, die man selbst treffen kann, ist auch denkbar einfach ... es reicht vollkommen, keinen Schreibzugriff auf das Wurzelverzeichnis des NAS (oder gar "alle angeschlossenen Speicher") zu gewähren, zumindest nicht einem Benutzer, der gleichzeitig in den Genuß der Filterung über die BPjM-Liste kommen soll. Daß gleichzeitig auch nur wirklich notwendige Schreibrechte immer eine gute Idee sind, versteht sich von selbst, denke ich.
Andererseits denkt man ja gar nicht unbedingt darüber nach, wenn der Sohnemann antrabt und gerne mal den USB-Stick ABC in die FRITZ!Box stecken und darauf zugreifen will, weil er meinetwegen den Mediaserver nutzern will. Da sind dann die NAS-Rechte auch mal schnell falsch eingestellt (ist ja nicht für lange) und dann wird es vergessen. In vielen Familien sind vielleicht auch die Teenager fitter in diesen Dingen als ihre Eltern und dann sind die schnell mal "bequatscht" und der direkte Zusammenhang zwischen der BPjM-Filterung und dem NAS ist ja auch nicht vorhanden, daß man da mißtrauisch werden müßte.
AVM wurde vor längerer Zeit informiert (Timeline im GitHub), sagte den Fix für das nächste "major release" zu und kündigte an, dieses in Q3 2016 veröffentlichen zu wollen. Nunmehr sind wir in der Halbzeit von Q4 2016 und von AVM gab es weder eine Information, daß und wie weit sich das Release verschieben wird noch wurde bisher auch nur der Versuch unternommen, das Thema zu entschärfen. In der 113.06.69-419896 ist der Angriff nach wie vor möglich.
Auch hier liegt das Grundübel wieder darin, daß der Zugriff auf das "FRITZ"-Verzeichnis für die interne Speicherung von Daten des FRITZ!OS über die NAS-Funktionen möglich ist. Schon der Entzug der Schreibrechte für die bpjm.data für alle Nutzer nach dem Update der Datei würde vollkommen ausreichen, damit diese nicht mehr über Samba manipuliert werden kann - besser wäre es generell, diese Verzeichnisse (auch auf USB-Volumes werden sie angelegt) dem NAS-Zugriff zu entziehen.
Diese Liste wird (in der Standardeinstellung) ebenfalls für die Filterung im Gastnetz verwendet, von dort ist aber kein Zugriff auf das NAS möglich. Der Effekt einer manipulierten Datenbank ist aber für den Zugriff aus dem Gastnetz natürlich derselbe.
Die aktualisierte BPjM-Liste wird nach dem Update unter "/var/media/ftp/FRITZ/bpjm.data" gespeichert und wenn dort der schreibende Zugriff möglich ist und gleichzeitig der Samba-Service für diesen Zugriff zur Verfügung steht, kann diese Liste "an Ort und Stelle" so geändert werden, daß die Hash-Werte für die dort hinterlegten Internet-Adressen nicht mehr stimmen und in der Folge der Zugriff auf diese Domains ebenfalls gestattet wird. Ein Zugriff über den FTP-Service kann nicht zur Manipulation benutzt werden, da die Datei nur "in place" geändert werden kann, ansonsten bemerkt der Dienst für die Inhaltsfilterung (contfiltd) die Änderung und erzeugt eine neue, wieder gültige Datei.
Ein "proof of concept" für diesen Angriff ist als PowerShell-Skript in meinem GitHub-Repository zu finden, zusammen mit der ausführlicheren (na gut, so viel mehr gibt es da eigentlich nicht zu sagen) Beschreibung, wo das Problem liegt und wie ein Angreifer es ausnutzen könnte (auch wenn nicht jeder seine Kinder als "Angreifer" sehen wird, Teenager können ganz schön gerissen sein). Nach dem Schreiben per PoC ist die BPjM-Filterliste "leer" - wer diese also wirklich braucht und es einfach mal selbst probieren wollte/will, startet einfach die Box im Anschluß neu.
Die effektivste Gegenmaßnahme, die man selbst treffen kann, ist auch denkbar einfach ... es reicht vollkommen, keinen Schreibzugriff auf das Wurzelverzeichnis des NAS (oder gar "alle angeschlossenen Speicher") zu gewähren, zumindest nicht einem Benutzer, der gleichzeitig in den Genuß der Filterung über die BPjM-Liste kommen soll. Daß gleichzeitig auch nur wirklich notwendige Schreibrechte immer eine gute Idee sind, versteht sich von selbst, denke ich.
Andererseits denkt man ja gar nicht unbedingt darüber nach, wenn der Sohnemann antrabt und gerne mal den USB-Stick ABC in die FRITZ!Box stecken und darauf zugreifen will, weil er meinetwegen den Mediaserver nutzern will. Da sind dann die NAS-Rechte auch mal schnell falsch eingestellt (ist ja nicht für lange) und dann wird es vergessen. In vielen Familien sind vielleicht auch die Teenager fitter in diesen Dingen als ihre Eltern und dann sind die schnell mal "bequatscht" und der direkte Zusammenhang zwischen der BPjM-Filterung und dem NAS ist ja auch nicht vorhanden, daß man da mißtrauisch werden müßte.
AVM wurde vor längerer Zeit informiert (Timeline im GitHub), sagte den Fix für das nächste "major release" zu und kündigte an, dieses in Q3 2016 veröffentlichen zu wollen. Nunmehr sind wir in der Halbzeit von Q4 2016 und von AVM gab es weder eine Information, daß und wie weit sich das Release verschieben wird noch wurde bisher auch nur der Versuch unternommen, das Thema zu entschärfen. In der 113.06.69-419896 ist der Angriff nach wie vor möglich.
Auch hier liegt das Grundübel wieder darin, daß der Zugriff auf das "FRITZ"-Verzeichnis für die interne Speicherung von Daten des FRITZ!OS über die NAS-Funktionen möglich ist. Schon der Entzug der Schreibrechte für die bpjm.data für alle Nutzer nach dem Update der Datei würde vollkommen ausreichen, damit diese nicht mehr über Samba manipuliert werden kann - besser wäre es generell, diese Verzeichnisse (auch auf USB-Volumes werden sie angelegt) dem NAS-Zugriff zu entziehen.