Zobacz temat
Dodawanie filmów przez submit.php za pomocą kodu osadź wideo a bezpieczeństwo
|
|
Joordan |
Dodany dnia 03.02.2010 19:33:45
|
Przedszkolak Postów: 39 Ostrzeżeń: 2 Data rejestracji: 03.01.2010 01:17 |
Zmodyfikowałem plik submit.php, tak abym mógł akceptować wysyłane filmy Dodałęm do niej również funkcje "Podgląd filmu". Filmy są dodawane zapomocą kodu osadź wideo np. Rozwiń Kod źródłowy HTML Czy jest to bezpieczne rozwiązanie?. Kod odpowiedzialny za podgląd filmu
Wiadomość doklejona: Chodzi o to że np. gdy ktoś zamiast kodu filmu wpisze </td></td></td></td> to rozjedzie mi się cała strona i tp. Wiadomość doklejona: Joordan napisał/a: Zmodyfikowałem plik submit.php, tak abym mógł akceptować wysyłane filmy Dodałęm do niej również funkcje "Podgląd filmu". Filmy są dodawane zapomocą kodu osadź wideo np. Rozwiń Kod źródłowy HTML Czy jest to bezpieczne rozwiązanie?. Kod odpowiedzialny za podgląd filmu
Wiadomość doklejona: Chodzi o to że np. gdy ktoś zamiast kodu filmu wpisze </td></td></td></td> to rozjedzie mi się cała strona i tp. PW od moderatora:
Edytowane przez Joordan dnia 03.02.2010 22:34:06 |
|
|
Wścibski Gość |
Dodany dnia 24.11.2024 18:38:08
|
Pan Kontekstualny Postów: n^x Data rejestracji: Zawsze |
|
IP: localhost | |
Konto ukryte |
Dodany dnia 03.02.2010 23:25:34
|
Początkujący Postów: 119 Ostrzeżeń: 6 Data rejestracji: 17.12.2005 10:56 ZBANOWANY: Dożywotnio |
Tzn użytkownik podaje jako film kod <object... itp? Jeżeli tak, to nie za dobre rozwiązanie - lepiej np. bbcode zrobić do tego i zamieniać na kod ustawiony na sztywno (ale i tak dane filtrować). |
|
|
Joordan |
Dodany dnia 04.02.2010 00:31:51
|
Przedszkolak Postów: 39 Ostrzeżeń: 2 Data rejestracji: 03.01.2010 01:17 |
LukasAMD napisał/a: Tzn użytkownik podaje jako film kod <object... itp? Jeżeli tak, to nie za dobre rozwiązanie - lepiej np. bbcode zrobić do tego i zamieniać na kod ustawiony na sztywno (ale i tak dane filtrować). Nie chcę w ten sposób robić bo to mało uniwersalne. Ale ogólnie obecne rozwiązanie jakie niesie zagrożenia ze sobą?? Chyba zrobię formularz dodaj link do filmu np. "http://www.youtube.com/watch?v=oC4gsipGfQU" i sam będę dodawał kod w postaci <object... itp |
|
|
piotrek199214 |
Dodany dnia 04.02.2010 06:42:06
|
Bywalec Postów: 977 Pomógł: 168 v7.01.05 Data rejestracji: 17.12.2007 21:05 |
Można zrobić tak: Użytkownik będzie wklepywał adres do filmiku czyli: rozdzielczość a system będzie miał gotowy wzór czyli: Pozdrawiam Edytowane przez Pieka dnia 07.02.2010 03:05:14 Pomogłem Ci? Wystarczy podziękować i oznaczyć post jako pomocny Tanie tworzenie wtyczek, masz problem napisz. |
|
|
Joordan |
Dodany dnia 04.02.2010 16:07:59
|
Przedszkolak Postów: 39 Ostrzeżeń: 2 Data rejestracji: 03.01.2010 01:17 |
piotrek199214 napisał/a: Można zrobić tak: Użytkownik będzie wklepywał adres do filmiku czyli: rozdzielczość a system będzie miał gotowy wzór czyli: Pozdrawiam A teraz popatrz na kod z googlevideo
link z osadź wideo
Link z paska adresu
Przedtem mialem wbity w thema w miejce odpowiadające za wyświetlanie filmów kod:
Ateraz tylko $zmienna_link co odpowiada za cały kod Zastanawiałem się nad takim rozwiązaniem jak proponujesz ale wydaje mi się że to za dużo kombinowania. Edytowane przez Pieka dnia 07.02.2010 03:04:03 |
|
|
piotrek199214 |
Dodany dnia 04.02.2010 16:17:54
|
Bywalec Postów: 977 Pomógł: 168 v7.01.05 Data rejestracji: 17.12.2007 21:05 |
Czy ja wiem czy dużo kombinowania, raczej nie.
Pomogłem Ci? Wystarczy podziękować i oznaczyć post jako pomocny Tanie tworzenie wtyczek, masz problem napisz. |
|
|
phm |
Dodany dnia 04.02.2010 21:50:19
|
Przedszkolak Postów: 16 Pomógł: 2 Data rejestracji: 04.02.2010 21:28 |
Przyznam, że nie do końca rozumiem ideę Twojego kodu. Użytkownik wprowadza link do formularza, Ty go pobierasz i "obrabiasz" w tagi object, itd, odpowiedzialne za prawidłowe wyświetlenie filmu? Pytasz, czy to bezpieczne. W Twoim skrypcie nie widzę niczego, co sprawdzałoby poprawność wprowadzonych danych. Stosujesz stripshlashes(), które odpowiada jedynie za zabawę slashami (znaczkami typu / ) i które stosuje się, gdy flaga magic_quotes_gpc jest ustawiona (on). Otrzymane linki przechowujesz najprawdopodobniej w bazie danych (zgaduję, bo z kodu to też nie wynika). Do zabaw z wysyłanymi do bazy danych ciągów znaków, polecam mysql_real_escape_string (w manualu przeczytasz sobie zalety tej funkcji). Chodzi o to że np. gdy ktoś zamiast kodu filmu wpisze </td></td></td></td> to rozjedzie mi się cała strona i tp. Tutaj sam odpowiedziałeś sobie na pytanie odnośnie bezpieczeństwa. Nie filtrujesz danych całkowicie poprawnie. Twój skrypt podatny jest na XSS oraz HTML Injection (i w zależności od konfiguracji serwera można podpiąć jeszcze SSI Inj. ). Już tłumaczę jak to działa. Ktoś, zamiast linku filmu przesyła Ci złośliwy kod JavaScript, bądź nawet prostą ramkę prowadzącą do zawirusowanej strony. Ty, niczego nieświadomy sprawdzasz nadesłane linki. Przeglądarka trafia na złośliwy kod i wykonuje go (taka już jej robota). Jak zaradzić Twojemu problemowi? Są dwa rozwiazania (i najlepiej zastosować oba): 1. pobawić się funkcjami takimi jak htmlspecialchars(), czy strip_tags() go usunięcia wszystkich tagów HTML z wprowadzanego ciagu 2. zaraz po otrzymaniu ciągu znaków, mającego być linkiem do filmu, sprawdzić za pomocą wyrażeń regularnych, czy string jest rzeczywiście linkiem (budowę linka każdy zna) Edytowane przez phm dnia 04.02.2010 21:51:08 |
|
|
Joordan |
Dodany dnia 07.02.2010 00:55:34
|
Przedszkolak Postów: 39 Ostrzeżeń: 2 Data rejestracji: 03.01.2010 01:17 |
Super, dziekuje. Naprawde wyczerpałeś temat i dużo się od ciebie dowiedziałem :) Link do filmu jest oczywiście wysyłany do bazy sql. A idea miała być taka aby każdy mógł podejrzeć przed wysłaniem, tekst miniatórkę obrazka i film w formie takiej jak na gotowej pod stronie z filmem. Rezugnuje z tego bo głowa już mnie od tego rozbolała :) A jeśli w miejscu odpowiedzialnym za wysyłanie linka do bazy, stripshlashes zamienie na stripinput to też będzie dobrze? W-tedy każdy kod HTML itp. powinien być wyświetlany jako zwykły tekst...? Np.: Edytowane przez Pieka dnia 07.02.2010 01:07:55 |
|
|
phm |
Dodany dnia 07.02.2010 02:14:16
|
Przedszkolak Postów: 16 Pomógł: 2 Data rejestracji: 04.02.2010 21:28 |
Powiem w skrócie tak: Cokolwiek wysyłasz do bazy danych - musi być sprawdzone pod względem możliwości wstrzyknięcia kodu SQL (SQL Injection). Cokolwiek wyświetlasz na stronie w postaci kodu, musi być sprawdzone pod względem tagów (XSS i HTML Injection). jeśli pomogłem - kliknij pomógł
pajacyk.pl - kliknij w pajacyka |
|
Przejdź do forum: |