![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 226 Pomógł: 25 Dołączył: 22.05.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Pomóżcie, bo już zaczynam świrować. Dodajemy post do bloga. Tytuł wiadomości filtruję tak:
Z tym nie ma większego problemu. Do edycji samej wiadomości używam TinyMCE. Z tego co zdążyłem się zorientować to jeżeli w jej treści znajdzie się niestandardowy znak (np. < lub &) to TinyMCE zamienia go na jego "entity name". Sen mi z powiek spędza to, że do bazy lecą apostrofy. Używam oczywiście prepared statements, nie sklejam zapytań, ale jak widzę w bazie: Kod <p>test016-desc</p> ...to niezbyt mi się to podoba.<p>;</p> <p>"</p> <p>'</p> <p>></p> <p><</p> <p>?</p> <p><script type="text/javascript">alert(1);</script></p> Czy addslashes załatwi tutaj sprawę? Zastanawiam się co zrobić kiedy ktoś wyłączy obsługę JS. Proszę o jakieś wskazówki. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
A co Ci się w tym nie podoba konkretniej? Jak używasz bindowania PDO to nie martwiłbym się co leci do bazy i czy jest to czymś przefiltrowane czy nie (w sensie encji itp.) Jak ktoś wyłączy obsługę JS, to powinno pokazać się pole textarea.
-------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 226 Pomógł: 25 Dołączył: 22.05.2011 Ostrzeżenie: (0%) ![]() ![]() |
Jak ktoś wyłączy obsługę JS, to powinno pokazać się pole textarea. Ok, ale jeżeli używam TinyMCE to dane do bazy nie mogę być zformatowane np. za pomocą htmlentities. Ewentualnie addslashes. W związku z tym, w momencie kiedy ktoś wyłączy TinyMCE to nie będzie żadnego zabezpiecznia przed np. XSS, a zabezpieczenia tego nie jest wcale takie banalne jak mogłoby się wydawać. Oczywiście jest to do zrobienia, ale wymaga sporej ilości kodu (z tego co udało mi się dowiedzieć). |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Ok, ale jeżeli używam TinyMCE to dane do bazy nie mogę być zformatowane np. za pomocą htmlentities. Nie rozumiem Cie. Dlaczego nie mogą? TinyMCE to tylko nakładka na textarea, bo to z niego wysyłasz dane do PHP i tam je sobie obrabiasz jak chcesz, co ma w ogóle do tego brak obsługi JS? Wywal wszytko prócz html używając strip_tags() i po problemie. -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 226 Pomógł: 25 Dołączył: 22.05.2011 Ostrzeżenie: (0%) ![]() ![]() |
Problem w tym, że to nie wystarczy
![]() Kod <span style="background-image: url('java script:alert(1)')">tekst</span> TinyMCE sobie z tym poradzi, bo usunie atrybut style (jeżeli wprowadzimy go np. poprzez okienko HTML) - sprawdzałem. strip_tags to zostawi i XSS gotowy ![]() Ten post edytował 404 25.05.2012, 17:00:16 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
http://htmlpurifier.org/ jest twoim rozwiązaniem.
-------------------- |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Kod <span style="background-image: url('java script:alert(1)')">tekst</span> TinyMCE sobie z tym poradzi, bo usunie atrybut style (jeżeli wprowadzimy go np. poprzez okienko HTML) - sprawdzałem. strip_tags to zostawi i XSS gotowy ![]() Nie wiem jak Ty chcesz robić XSS przez url w style od bg, ale niech będzie ![]() -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 226 Pomógł: 25 Dołączył: 22.05.2011 Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję wszystkim za odpowiedzi
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 14:37 |