Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Kodowanie Linku
Forum PHP.pl > Forum > Przedszkole
Matimor
Witajcie
Mam na stronie usuwanie newsów poprzez panel. Jak zrobić aby przy kliknięciu w usuń generowało losowy link, jakiśdługi, i później sprawdzało poprawność w _GET page?

Drugie pytanie polega na tym, jakie są zabezpieczenia do PHP i MYSQL, oprócz SQL Injection?
Makciek
Cytat(Matimor @ 9.11.2009, 21:32:28 ) *
Drugie pytanie polega na tym, jakie są zabezpieczenia do PHP i MYSQL, oprócz SQL Injection?

WTF?
SQL Injection to zabezpieczenie? tongue.gif
od kiedy? ja myślałem, że to atak smile.gif

EDIT
co do pierwszego pytanie to nierozumień tongue.gif

jeśli tu wygenerujesz jakiś losowy kod, to skąd skrypt odbierający będzie miał ten kod do porównania?
no chyba ze chcesz zapisać go w bazie

EDIT 2
co do losowego kodu
to można to zrobić tak:
$kod = MD5(mt_rand(1000000,9999999));
MateuszS
1.
  1. $cos=$id_newsa.$tytul_newsa;
  2. $link=md5($cos); //juz ci nierozkoduja


SQL Injection to raczej przeciwienstwo zabezpieczenia. Technika za pomoca ktorej moga Ci sie wlamac do MySQL i all pozmieniac / powykradac i co tam tylko haxiorom do glowy przyjdzie.
Innym popularnym sposobem do ataku na strony jest XSS. Prosty przyklad

Brak filtrowania zmiennej

  1. $tresc=$_POST['tresc'];
  2. echo $tresc;


Ten kod od razu wyswietli zmienna $tekst, np komentarz na strone. Ale co jezeli w polu wpiszemy jakis kod html? Przegladarka tekst zinterpretuje jako HTML/JS, np.

  1. //wpiszemy do textarea
  2. <p onMouseOver="alert('Buu');">Ta strona jest podatna na ataki XSS</p>

Po najechaniu myszka na nasz komentarz wyswietli sie alert. To akurat minejszy problem. Co jezeli ktos wpisze JS, walnia jakas petle, albo wyciagnie od nas w ten sposob jakies poufne dane? Np. wysylajac lewy link na ktory klikniemy? No ale to juz sobie doczytasz o tym.

Sposob zabezpieczenia. Akurat przed tym co podalem, wystarczy proste
  1. $tresc=strip_tags($_POST['tresc']);


ucina wszystkie taki HTML wiec w ten sposob juz nam raczej nie rozwala strony.

Ale sa jeszcze inne metody, sposoby, warto po googlach poszperac.
[/php]
piotrooo89
więc tak najlepszym sposobem jest parsowanie na int (czyli na liczbę całkowitą takie jakie musi być id w bazie).

co do to poczytaj artykułu tego pana: http://www.beldzio.com/kategoria/bezpieczenstwo, zna się na sprawie i dobrze tłumaczy to w swoich artykułach.
Matimor
Hmm co do znaków HTML czy to nie wystarczy? Ja tak tworze kody winksmiley.jpg
Podstawowy:
  1. $Cos= $_POST['Cos'];


Mój:
MateuszS
mysle ze strip_tags jest lepsze od htmlspecialchars. Ta ostatnia zostawia po sobie jakies smieci.


Przyklad
  1. <?php
  2. $new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
  3. echo $new; // &lt;a href='test'&gt;Test&lt;/a&gt;
  4. ?>
  5.  


Strip_tags ladnie ucina te tagi, no ale to juz kwestia gustu/stylu/przyzwyczajenia.
Matimor
Dobra żeby nie robić nowego tematu, zadam tu kolejne pytanie. Jak dodać BB Code do stronki? Mam swoją strone i są tam prywatne wiadomości, chcę dodać do tego BB Code, aby było użytkownikom wygodniej pisać.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.