Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Bezpieczeństwo skryptu
daniel1302
post
Post #1





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

Ostrzeżenie: (0%)
-----


Witam, ostatnio zgłosiłem pewien skrypt do szkolnego konkursu. Zadaniem było napisanie prostego systemu obsługi poleceń(kilka poleceń) do serwera w tym bazy danych. W piątek po przyjściu do szkoły wezwano mnie do pracowni komputerowej z powodu, że komisja konkursowa odrzuciła mój skrypt(rzekomo posiada luki w bezpieczeństwie). Oczywiście domagałem się jakiś informacji ale powiedziano mi "Wszelkie informacje zostaną wysłane w ciągu kilku godzin na emaila...". Poczekałem(kilka godzin przeszło w 2 dni), dzisiaj dostałem emaila:
Cytat
......
Twój skrypt został wykluczony z konkursu ponieważ posiada rażącą lukę w bezpieczeństwie.....(info o temacie i zasadach). Błąd dotyczy dziury SQL Injection w zapytaniu umieszczonym poniżej(6 linia podanego kodu)....(blebleble)

  1. if (!isset($_GET['code']) || strlen(trim($_GET['code']) != 32))
  2. $error = 'Błędny kod!';
  3. else
  4. {
  5. $test = $pdo -> prepare("SELECT * FROM activation WHERE code=:code");
  6. $test -> execute(array(':code' => $_GET['code']));
  7. $test = $test -> fetch();
  8. ...

6 linia to zapytanie poprzez bibliotekę PDO do $test.

Wszędzie gdzie czytałem ludzie pisali, że wysłanie parametru za pomocą metody prepare zabezpiecza przed SQL Injection. Jeśli skrypt nie posiada dziury to gdzie znajdę info popierające moje zdanie. A jeśli kod jest nie poprawny to proszę o nakierowanie(człowiek uczy się całe życie). Z góry dziękuje za pomoc.

Ten post edytował daniel1302 30.01.2011, 21:39:29
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.09.2025 - 08:59