![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Mam stronę , na której można dodawać komentarze. Każdy może taki komentarz dodać. Gdzieś przeczytałem , że strona jest źle zabezpieczona , jeżali poprzez formularz dodawania komentarzy można wykonać dowolne polecenie html'a lub php. Czy tak jest naprawdę ? Bo jak wpiszę w polu komentarza na przykład <img src="./obrazek.jpg"></img> , to obrazek w komentarzach się pojawia.
|
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
no tak, skoro mozna do strony zapodać dowolny kod i on się wykona, to strona jest dziurawa.
W przypiętych tematach w dziale php masz o bezpiczenstwie |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 93 Pomógł: 4 Dołączył: 1.12.2009 Skąd: lublin Ostrzeżenie: (0%) ![]() ![]() |
$code = htmlspecialchars($code); i po htmlu
natomiast sa jeszcze inne sposoby na przeoranie Twojej strony poszukaj na forum i w googlu |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
A co taki potencjalny włamywacz może zrobić ?
Ten htmlspecialchars to jest taki jakby filtrowanie wpisywanego tekstu , dobrze rozumiem ? Ja jeszcze kiedyś słyszałem o jakiejś metodzie add shlashes , czy jakoś tak. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 690 Pomógł: 81 Dołączył: 6.04.2005 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję za pomoc , a tak przy okazji , to fajna strona.
Mam jeszcze takie jedno pytanko: Wystarczy użyć funkcji strip_tags i wszystko będzie ok , czy coś jeszcze trzeba zrobić w celu zabezpieczenia strony ? |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
htmlspecialchars
htmlentities albo mysql_real_escape_string |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
A ta funkcja która ja napisałem nie wystarczy ? Zabezpieczyć dodatkowo stronę tymi funkcjami , które Ty podałeś ?
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
dobrze by było (IMG:style_emoticons/default/winksmiley.jpg)
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Ok , dzięki za pomoc. Czyli mam rozumieć że te moje zabezpieczenie jest niewystarczające ?
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 690 Pomógł: 81 Dołączył: 6.04.2005 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
zależy co chcesz zrobić, jak wyświetlić txt bez tagów to strip_tags, jak chcesz zmienić tagi na encje to htmlspecialchars, htmlentities, jak zapisać w bazie to mysql_real_escape_string
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Ja chcę wstawić do bazy komentarz. Może pokażę kawałek kodu PHP :
Czy takie zabezpieczenie jest dobre ? Myślałem czy nie lepiej użyć funkcji: mysql_real_escape_string ? Proszę o pomoc , bo chciałbym dobrze zabezpieczyć stronę. Ten post edytował kamil1114 23.12.2009, 20:18:39 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Przy każdym wysyłaniu do bazy treści, którą może wpisać użytkownik powinno się ten ciąg przepuszczać przez mysql_real_escape_string. Aktualnie twoje zabezpieczenie jest żadne. Wpisz sobie w komentarzu ' i " a potem oglądaj błędy (IMG:style_emoticons/default/winksmiley.jpg)
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Czyli prawidłowo zabezpieczony skrypt powinien wyglądać tak:
Tak jest dobrze ? Ten post edytował kamil1114 23.12.2009, 21:50:20 |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Jeszcze tylko zabezpiecz $id_newsa.
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję za pomoc.
Ale id_newsa nie jest podawane przez użytkownika , tylko strona automatycznie pobiera , więc po co ? Proszę o wyjaśnienie , bo tego nie rozumiem ? |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Ponieważ jest pobierane przez $_GET, czyli widnieje w adresie, a co za tym idzie można to do woli modyfikować. Daj sobie np. twojadres?id=1' (z apostrofem) to zobaczysz o co mi chodzi.
|
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Ok , już rozumiem o co chodzi.
Spróbowałem tak zrobić , jak mówiłeś tzn. wpisałem mojastrona?id=1' i wszystko było ok , poprawnie się zapisało do bazy i wyświetliło , ale nie ważne , wiem o co chodzi. Jeszcze raz dziękuję za pomoc Pozdrawiam i życzę Wesołych Świąt |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 17:40 |