popularne
Najczęściej czytane
- Jak skutecznie chronić się przed DDoS? (czytane 1479 razy)
- Na co zwrócić uwagę przy wdrożeniu IPS i DLP? (czytane 429 razy)
- Krajowe Ramy Interoperacyjności opublikowane (czytane 350 razy)
Biblioteka Wiedzy poleca
Office 365 - podręcznik użytkownika
Ta książka pokaże Ci, jak wykorzystać chmurowe przetwarzanie danych - a konkretnie Office 365 - aby robić więcej, współpracować łatwiej i działać...
pobierz »
Jak zwiększyć wydajność infrastruktury serwerowej oszczędzając czas i pieniądze? Nowoczesne rozwiązania serwerowe
Niniejszy dokument ma na celu zaprezentowanie sposobów na poprawę funkcjonowania i efektywności działania infrastruktury serwerowej w firmie lub...
pobierz »
Dlaczego warto korzystać z Office 365?
Jakie funkcje i możliwości Microsoft Office 365 decydują o tym, że warto wybrać to rozwiązanie zamiast tradycyjnego pakietu Office i rozwiązań...
pobierz »
Automatyczne zabezpieczanie kodu PHP
18 czerwca 2010
Paweł Krawczyk Trójka pracowników naukowych z Uniwersytetu Illinois stworzyła narzędzie, które automatycznie konwertuje kod źródłowy w PHP używający "sklejanych" zapytań SQL na znacznie bezpieczniejsze zapytania używające wyrażeń prekompilowanych (prepared statement). Wszystko po to, by chronić aplikacje przed atakami SQL Injection.Na przykład weźmy taki kod napisany z użyciem "sklejanego" SQL:
function test1()
{
$a = $_GET['user'];
$query = "delete from test1 where u = '".$a."'";
@mysql_query($query);
}
Dostępne na stronie TAPS przekonwertuje go na następujące PHP z wyrażeniami prekompilowanymi:
function test1()
{
$a = $_GET['user'];
$query__args = $a ;
$query = "delete from test1 where u = ?" ;
executePS( query , query__args );
}
Powyższy kod co prawda chroni przed SQL injection w scenariuszach testowych ale nie należy go traktować jako wyroczni co najmniej z dwóch powodów.
Po pierwsze, użycie wyrażeń prekompilowanych znacznie utrudnia ale nie zawsze ochroni przed SQL injection w szczególnie złożonych przypadkach.
Po drugie, zaprezentowany powyżej kod to wręcz zaproszenie do ataku Cross-Site Scripting (XSS), którego autorzy w danej implementacji w ogóle nie biorą pod uwagę.
Biorąc powyższe pod uwagę w żadnym wypadku nie należy rezygnować z bogatej biblioteki funkcji filtrujących dostępnej w PHP. Opis ich użycia można znaleźć w artykule Jak bezpiecznie pisać aplikacje webowe. O innych atakach można przeczytać w artykule Kto zagraża bazom danych?.
Szczegóły implementacji TAPS opisane są w artykule autorów zatytułowanym Automatically Preparing Safe SQL Queries.
Komentarze
- Liczba zatwierdzonych komentarzy (4) |
- dodaj komentarz |
- zobacz wszystkie
~qwerty
- ocena: brak oceny
- IP: 87.207.166.178
- 18-06-2010, 20:32
tralala...
~vii
- ocena: 1
- IP: 213.156.122.10
- 19-06-2010, 11:14
jeszcze
04-204 Warszawa ul. Jordanowska 12
tel.: (+48 22) 321 78 00 fax: (+48 22) 321 78 88
© copyright 2012 IDG Poland SA
tel.: (+48 22) 321 78 00 fax: (+48 22) 321 78 88
© copyright 2012 IDG Poland SA







wydrukuj