Autor Zpráva
blaaablaaa
Profil
Ahoj,
dělám web, jehož součástí bude možnost registrovaným uživatelům vkládat články. Kvůli jistému komfortu jsem zvolil tinyMCE, teď ale řeším, jak stránky ochránit proti možným útokům (vložení nebezpečného kódu).
1. v tinyMCE obsah filtruju pomocí parametru valid_elements, kde zadám povolené tagy a atributy. Nejsem si ale jistý, co povolit a co může být nebezpečné u elementu object a param:
object[align<bottom?left?middle?right?top|archive|border|class|classid|codebase|codetype|data|declare|height|hspace|lang|name|standby|tabindex|title|type|vspace|width]
param[name|type|value|valuetype<DATA?OBJECT?REF]

2. na straně serveru pak data projedu pomocí třídy StripTags se stejnými parametry
Je toto dostatečná ochrana nebo se lze bránit ještě jinak? Pokud by měl někdo zájem o zbytek kódu, nahraju jej.
mckay
Profil
blaaablaaa:
Řekl, bych že pravděpodobně ano - jelikož mají možnost přidávat články pouze registrovaní uživatelé, a předpokládám, že ty můžeš rozhodovat o tom, kdo bude a kdo nebude registrovaný, můžeš případného škůdce rychle zneškodnit. Alespoň tak bych to dělal já ;).
blaaablaaa
Profil
mckay:
Díky za odpověď. Registrace bude volná se schvalováním článku správci (kteří kódovat neumí, budou kontrolovat jen obsahovou a stylistickou formu). Jedině bych mohl logovat uživatele, kteří se pokusí do článku vpašovat nějaký javascript apod. Ale raději bych měl vše co nejlépe ošetřené.
blaaablaaa
Profil
Nakonec jsem narazil na (snad) lepsi reseni - HTML Purifier, ktery nabizi mnohem vice moznsoti nez jednoduche StripTags.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0