Re: Monitoring html in Grundzüge erlauben?

Christian Dresel fff at chrisi01.de
So Jan 3 11:31:02 CET 2016


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Am 03.01.2016 um 11:05 schrieb Oliver Hader:
> Hallo Christian,
> 
> Am 03.01.16 um 10:43 schrieb Christian Dresel:
>> Am 03.01.2016 um 10:27 schrieb Oliver Hader:
>>> Am 03.01.16 um 10:07 schrieb Christian Dresel:
>>>> wäre es evtl. möglich im Monitoring in der Routerbeschreibung
>>>> ein paar html Codes zu erlauben? Z.b. <br /> <a href...>
>>>> evtl. auch: <b> <i> <u>
>>>> 
>>>> Würde das ganze etwas verschönern:
>>>> 
>>>> https://netmon.freifunk-franken.de/router.php?router_id=1898
>>>> vs. 
>>>> https://monitoring.freifunk-franken.de/routers/5664399b44ce6e030751
29
>>
>>>> 
60
>> 
>>>> 
>>> Die Möglichkeit, strukturiertere Angaben in der Beschreibung
>>> des eigenen Routers hinterlegen zu können, halte ich für eine
>>> gute Idee.
>> 
>>> Allerdings stellt sich eine Filterung auf reiner
>>> HTML/DOM-Basis als schwierig dar, um Cross-Site-Scripting
>>> auszuschließen. Hierbei müssten dann alle erlaubten HTML-Tags
>>> und Attribute in eine Whitelist aufgenommen werden, was schnell
>>> umfangreich und unübersichtlich werden könnte.
>> 
>> klar whitelist alles andere wäre ja ein 
>> <script>alert("Sicherheitsrisiko XSS und blablabla");</script> 
>> ;) Weiß jetzt nicht genau auf welche Scriptsprache Dominik setzt
>> aber in php wäre es mit einen einfach strip_tags($input,
>> '<br><br/><a><b>'); getan.
> 
> Genau das ist der Knackpunkt. Neben dem "<a>" Tag dürfte auch nur
> das "href" Attribut gewhitelisted werden. Mit dem Code, den Du
> gepostet hast, wäre über folgenden String eine XSS-Attacke dennoch
> möglich:
> 
> $input = '<a href="http://myrouter.de/"
> onclick="alert(1)">Link</a>';

nein ich hab Netmon nicht programmiert:
https://netmon.freifunk-franken.de/router.php?router_id=1365
Man klicke mal auf den Link

Nix gut das ist ;) du hast wohl recht und Netmon hat den selben
Fehler, ich trau mir ja nicht mal
<script>alert("Sicherheitsrisiko XSS und blablabla");</script>
zu probieren warscheinlich geht das auch :/

mfg

Christian

> 
> Bei den Web-Security-Belangen gilt daher Whitelisting over
> Blacklisting. Beim Blacklisten vergisst man schnell mal was... Im
> obigen Beispiel steht das "alert(1)" nur stellvertretend für 
> beliebigen Code, der client-seitig ausgeführt werden kann.
> 
>>> Eine geeignetere Variante stellt eine Notation in Markdown dar,
>>> bei der reine HTML Tags nicht erlaubt sind, und nur einfache 
>>> Pseudocodes in einem zweiten Schritt in HTML transformiert
>>> werden.
>> 
>> Also so wie in diversen Foren der BBCode? Wäre natürlich eine 
>> alternative aber da das Zeug aktuell ja noch aus dem Netmon
>> kommt, würde es dann im Netmon bescheiden aussehen :/
> 
> Die Ausgabe Interfaces müssten das natürlich umwandeln, korrekt.
> Für Markdown gibt's inzwischen genügend Libraries, die eingebunden
> werden können (PHP, node.js, Python, Perl, Java, ...). Markdown ist
> z.B. auch bei Github im Einsatz, für die README.md oder auch
> einfache Issues. Diese Library könnte man z.B. wiederverwerten.
> 
> 1) Ansicht README.md 
> https://github.com/FreifunkFranken/freifunkfranken-community/blob/mast
er/README.md
>
> 
2) Notation README.md
> https://raw.githubusercontent.com/FreifunkFranken/freifunkfranken-comm
unity/master/README.md
>
> 
3) Toolkit Github (siehe auch Tabs für Edit & Voransicht/Preview)
> https://github.com/FreifunkFranken/freifunkfranken-community/edit/mast
er/README.md
>
>  Ich kann das ja mal mit auf meine Liste setzen und nen
> Pull-Request mit der Integration für's Git Repository stricken.
> 
> Viele Grüße Oliver
> 


- -- 
Kontaktmöglichkeiten ChristianD (Christian Dresel):
Jabber: christian at jabber.community
E-Mail: fff at chrisi01.de
Facebook: https://www.facebook.com/christian.chili
Handy/Whatsapp & Festnetz: auf Nachfrage
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJWiPhmAAoJEOID5jPgWNLio4oP/A/sRcqSNS0Z8Y/3ONzqyw59
SHlZb0tzvYtWO2Za00eREvk0hck07bVwy/AmbqjGubyU1/Cb3YPojVrQY0aCGlj+
ohVX4rTJpu//szLDfqJg8iQJnD+qVcPRyX2OfkOzxfBA4cOa4Og/xe4eCr9YjTZD
7/NDhX8Fl9esl0R5l4pB97WUoAupgEsK6ABaAMsLdi4rB9G6+EGcQBKaZxrnLzuz
P89bG0ZnH3FWz1dFfBcueuOy08oEZUOU7w6b/VQCb8BSnV572idBqkaAq5EA+Q+/
klWiu/a0PI9MT+1GHJQb8kkY6zlFLS3OK3D2O8CjEgWLfvED7KzDGoRt8J2y3XB8
kVHxJJmYzS8A0xCGaZTW9zECXXSw1k9op77FCC0q3a7GsDSMVtxp3J42SqBdWlf/
tpmBdvIN/wLZ22QJCA8D7H4X5g15+n9kEAsQc2gRBAcAtTGZKvhVbPuafk7MBmNe
BIzSe/tOZ16KJP9nPbPPOgk+f2N2EXg5c1STEOYsfaIMpnr7eo/1VV0z34+scf5S
GRy8tZyWqMmSoYG2RnFuSYRdRuOVFFJvynJ1+/yu/bAdVsOsfOrKoCg0Qf+gqgqe
1x5wH8tZ4CyV+VWvOxzt65Wo3GhzjNq/Ge/j3Y2Ebiu8fLdb2my3Gpq/FvQc5cTr
UvcR3otujczUwsnCYW3l
=sfMq
-----END PGP SIGNATURE-----



Mehr Informationen über die Mailingliste franken-dev