Struppi: JavaScipt - Datei-Up/-Download

Beitrag lesen

Es tut sich zumindest eine Schnittstelle auf die Sicherheitstechnisch anspruchsvoll ist und für den Benutzer noch mehr intransparente Abläufe mit JS ermöglicht.

Wieso? Für den Benutzer gibt es nur zwei (ihm schon vertraute) Fälle, um einer Website den Zugriff auf eine lokale Datei zu erlauben: Man wählt eine Datei über ein Upload-Feld (<input type=file>) aus oder zieht eine Datei ins Browserfenster (Drag'n'drop). Sicherheitstechnisch ist das eher trivial.

Findest du? Bei der Rafinesse die Betrüger in der Vergangenheit an den Tag gelegt habe, befürchte ich dass sie sicher einen Weg finden diese Schnittstelle auszunutzen. Bei meinen Beobachtungen mit normalen Usern stelle ich fest, dass die meisten mit Drag&Drop alles andere als vertraut ist (was auch bei dem üblichen Vollbildmodus den alle benutzen oft nur schwer zu handhaben ist).

Mir fehlt ein bisschen diese Raffinesse, aber ich kann mir z.b. vorstellen, dass der User aufgefordert wird ein Verzeichnis zu auszuwählen, in dem sich eine sicherheitstechnisch relevante Datei ist, die der user nicht kennt, weil sie versteckt ist.

In beiden Fällen hat die Website auf die Datei Zugriff. Früher musste die Datei dann zum Server geschickt werden, jetzt kann JavaScript direkt damit arbeiten. Klar, das ist für den Benutzer nicht transparent, aber ein stinknormales <input type=file> ebenfalls nicht - er weiß ja nicht, wo das Formular hingesendet wird oder überhaupt dass es abgesendet wird (man kann das Formular in ein unsichtbares iframe leiten o.ä.).

Es sind einige Schritte mehr notwendig und es kann immer nur eine einzelne Datei ausgewählt werden. Das ist einerseits transparent und anderseits erfordert es eine gewisses mitdenken. Wenn nun ganze Ordner ausgewählt werden können, verringern sich diese Kontrollmöglichkeiten und bietet mehr Angriffsfläche.

Ausserdem hatten bisher noch alle Umsetzungen in den einzelnen Browsern Bugs gehabt, die von ausgenutzt wurden um den User entweder was unterzuschieben oder vorzugaukeln.

Läßt sich nur hoffen, dass das diesmal nicht so ist und nicht in meinem Browser.

Struppi.