![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 3.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Chce się Was poradzić. Piszę prosty system Artykułów na stronę. Dane od użytkownika (tytuł newsa oraz treść newsa) binduje za pomocą metody bindValue(); i dokonuje INSERTA do MySQL'a. I chce się dowiedzieć czy jest to wystarczający sposób (bezpieczeństwo). Czy powinienem używać funkcji takich jak np htmlspecialchars();. Co do tej funkcji to problem jest taki, że używam CKEditor'a no i on rzecz jasna używa znaków specjalnych HTML, kiedy chce wyświetlić to co napisałem jest zonk, widzę normalnie znaczniki ![]() Robiłem testy podawając jako treść newsa:
Wyświetla na stronie normalnie ten kod ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jesli chodzi o baze to bindowanie jest ok.
No ale są jeszcze inne ataki jak np. XSS i tutaj user może zrobić ci kuku skoro pozwalasz mu na wpisywanie html -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 3.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
A jak poraddzić sobie z tego typu atakiem? Jak wspomniałem wczesniej problemem dla mnie jest CKEditor który umieszcza znaki specjalne HTML'a w bazie danych. i jeśli je usunę to utracę formatowanie tekstu.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 365 Pomógł: 70 Dołączył: 5.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Funkcja http://php.net/manual/en/function.htmlentities.php Twoim przyjacielem.
Ale także stript_tags i htmlspecialchars, zrób tak, żeby usuwało po prostu to czego nie chcesz w wyświetlać. Ten post edytował matiit 14.04.2013, 20:14:13 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 273 Pomógł: 52 Dołączył: 3.02.2013 Skąd: Przemyśl Ostrzeżenie: (0%) ![]() ![]() |
Zaawansowane ataki XSS potrafią ominąć filtrowanie za pomocą tych natywnych rozwiązań.
Polecam: HTML Purifier lub Zend\Escaper Ten post edytował mstraczkowski 14.04.2013, 21:12:16 -------------------- Jeżeli moja wypowiedź Ci pomogła użyj przycisku
![]() |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 3.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
dzięki najbardziej pomocny był "mstraczkowski". HTML Purifier to to czego szukałem. Rozumiem, stosując tą biblioteke jestem całkowicie zwolniony z "ręcznej" filtracji przez funkcje wcześniej wymienione ?
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 352 Pomógł: 59 Dołączył: 16.01.2013 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli wszystko zrobisz dobrze, to jak najbardziej
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.07.2025 - 09:50 |