So verhindern Sie, dass shr Netzwerkverbindungen herstellt

8

Neuere Versionen von Emacs haben einen wirklich guten Renderer für HTML, der vollständig in Elisp geschrieben ist. Dieser Renderer (shr) kann zum Anzeigen von HTML-E-Mails, Dokumentationen usw. verwendet werden. Es scheint jedoch, dass shr Remote-Ressourcen abruft, auf die in HTML-Dokumenten verwiesen wird (z. B. Bilder). Wenn der HTML-Code nicht vertrauenswürdig ist, wie im Fall von Spam-E-Mails, führt dies zu einer Reihe von Sicherheits- und Datenschutzbedenken.

Frage: Wie kann verhindert werden, dass shr beim Rendern von HTML auf Remote-Ressourcen zugreift?

tmalsburg
quelle
Ich vermute, das ist eher etwas, das nur angepasst werden kann url.el.
Wasamasa
2
@wasamasa Du meinst, ich könnte vorübergehend url.elden Zugriff auf Remote-Ressourcen verweigern lassen ? Das klingt so, als könnte es Dinge in Shr brechen. Ich denke, shr sollte in der Lage sein, zwischen lokalen und Remote-Ressourcen zu unterscheiden, und es sollte einen Modus haben, in dem es nicht einmal versucht, Remote-Inhalte abzurufen.
Tmalsburg

Antworten:

6

shr.el hat a (defvar shr-inhibit-images nil)und a

(defcustom shr-blocked-images nil
  "Images that have URLs matching this regexp will be blocked."
  :version "24.1"
  :group 'shr
  :type '(choice (const nil) regexp))

Es scheint, als würden (setq shr-inhibit-images t)die Webanfragen gestoppt, wenn ich HTML-E-Mails ansehe.

Beachten Sie, dass die Bildanzeige ewwvollständig ausgeschaltet wird. Das ist für mich in Ordnung, funktioniert aber möglicherweise nicht für Sie. Sie können natürlich eine eww-modeTastenkombination hinzufügen , die diese Option umschaltet und eine bestimmte Seite beim Einschalten von Bildern neu lädt.

Mankoff
quelle
Vielen Dank! Ich bin nicht sicher, ob dies vollständig wasserdicht ist, aber es scheint die meisten Fälle zu behandeln.
Tmalsburg
2
Meine Lösung besteht darin shr-inhibit-images, tbeim Rendern von HTML-E-Mails vorübergehend eine Bindung herzustellen. Auf diese Weise sollte eww nicht betroffen sein.
Tmalsburg
Können Sie den Code dafür bereitstellen?
Mankoff
1
Diese Diskussion findet also gleichzeitig auf der mu4e-Liste statt. Es wurde darauf hingewiesen, dass die oben genannten Bilder
hemmen
Mu4e hat eine Funktion zum Rendern von HTML-E-Mails. Es heißt mu4e-shr2text. Meine modifizierte Version mit Hemmung von Bildern finden Sie hier: github.com/tmalsburg/mu/blob/master/mu4e/mu4e-contrib.el#L44 Ich bezweifle diese Aussage über Cookies und Javascript. Cookies werden nicht über separate Verbindungen abgerufen und eww / shr unterstützt meines Wissens kein Javascript.
Tmalsburg