Napisane: 14.07.2009, 16:05:12 | |
Grupa: Zarejestrowani Postów: 2 Dołączył: 6.05.2008 Ostrzeżenie: (0%) |
A wiesz o tym, że na nic nie ma 100% zabezpieczenia? Hej, Już raz wspominałem o zastosowaniu zmiennych związanych, ale jakoś widzę wątek dalej rozwija się w stronę doktoryzacji nad zupełnie prostym problemem. W telegraficznym skrócie: Zmienne związane mają 2 główne zastosowania: 1) optymalizacja działania aplikacji poprzez jednokrotną interpretację zapytania, a w każdym następnym jego uruchomieniu tylko podmienianie samych danych. MySQL optymalizuje sobie niestety takie zapytanie tylko w obrębie sesji. Inne bazy takie jak ORACLE przechowują plan wykonania zapytania. 2) Oddzielenie treści zapytania od parametrów załatwia przy okazji właśnie problem MySQL Injection. W zasadzie w 100% ponieważ dane nie wpływają na treść zapytania, która już wcześniej została sparsowana. Przykład SQLa:
takie zapytanie parsuje sobie baza, a dopiero potem przekazujemy (bindujemy) wartość zmiennej "parametr". Jeszcze raz link do manuala PHP: PDO::prepare oraz jak kto woli: mysqli_prepare Oczywiście warunkiem jest PHP5 oraz MySQL 4.1, ale to chyba już w tej chwili standard. |
Forum: PHP · Podgląd postu: #634126 · Odpowiedzi: 420 · Wyświetleń: 708 385 |
Napisane: 12.02.2009, 11:38:27 | |
Grupa: Zarejestrowani Postów: 2 Dołączył: 6.05.2008 Ostrzeżenie: (0%) |
generalnie to nie wiem czy mysql posiada te wszystkie rzeczy, ale raczej tak bo procedury sa, ale w kazdym razie MS SQL 2005 i wyzej to ma takie rzeczy stosuje się w biznesowych rozwiazaniach produkcyjnych Owszem - są w MySQL procedury, ale problem można rozwiązać o wiele prościej - przez zmienne związane: mysqli: http://pl.php.net/manual/en/mysqli.prepare.php PDO: http://pl.php.net/manual/en/pdo.prepare.php |
Forum: PHP · Podgląd postu: #570618 · Odpowiedzi: 420 · Wyświetleń: 708 385 |
Nowe odpowiedzi Brak nowych odpowiedzi Popularny temat (Nowe) Popularny temat (Brak nowych) |
Sonda (Nowe) Sonda (Brak nowych) Zamknięty temat Przeniesiony temat |
Wersja Lo-Fi | Aktualny czas: 19.04.2024 - 03:43 |