Posts Tagged ‘SQL-Injection’

PHP och säkerhet

juli 8th, 2008

När du programmerar i ett språk som PHP är oftast säkerhet en väldigt stor del av det du gör. Framförallt när du jobbar mot en databas av något slag, måste du spendera lite tid för att göra allting så säkert som möjligt. Gör du inte det riskerar du att bli utsatt för en rad olika attacker som kan skada både din applikation/webbsida och i värsta fall även webbhotellet där din applikation ligger.

SQL-Injection
Den vanligaste typen av ”hot” är en så kallad SQL-Injection. Idag finns det väldigt bra metoder för att förhindra dessa typer av attacker, men den första Faktiska metoden du bör använda är sunt förnuft. Som utvecklare ska du Aldrig lita på användaren eller den data användare själva kan påverka (ex. formulär). Se därför alltid till att filtrera den typen av data innan du använder den.

Läs om SQL-Injection

Hur man skyddar sig

Cross site scripting (xss)

Det finns så mycket mer man kan säga om PHP och säkerhet! Men det får räcka för den här gången :)

Stay tuned

SQL-Injections på tapeten igen

juni 9th, 2008

Idag skriver idg.se bland annat om SQL-injections i artikeln ”Inte ens experterna går säkra för hacken”. Jag tycker det är otroligt bra gjort av IDG.se att ta upp säkerhetsfrågan gång på gång. Det är uppenbart att just sql-injections ökat den senaste tiden och denna uppmärksamhet man nu ger ämnet är väldigt bra. Som programmerare måste man ständigt hålla sig uppdaterad om de senaste metoderna för att skydda sig mot diverse hack.

Hur skyddar man sig?
Om vi pratar rent tekniskt så skiljer det sig sinsemellan programmeringsspråken men det finns en gemensam nämnare. Kontrollera Allt som surfaren skickar eller kan påverka… alltså formulär, URL’en osv. Lita inte på någon. Du ska även alltid göra väldigt omfattande tester av din sida eller applikation innan den blir offentlig. Om du själv inte vet hur du ska testa din skapelse går det alltid att anlita profesionellt folk som kan göra detta åt dig. Det ska även nämnas att det finns ingenting som är 100% säkert och det är någonting man måste leva med.

Till er som är nya eller har precis börjat programmera i något språk… spendera mycket tid på säkerhetsbiten. Lär er om SQL-Injections, XSS och alla andra former av vanliga hack. Det är väldigt viktigt att ni har en bra grund att stå på, men även att ni håller er uppdaterade. Ett exempel på vad du kan vinna om du håller dig uppdaterad är t ex PDO med prepared statements. I PHP skyddade man sig ofta med addslashes, sen blev det mysql_real_escape_string, samt PHP’s egna magic_quotes i PHP.ini (Försvinner i PHP versionen 6.0.0)… ingen av dessa metoder är skulle jag rekommendera idag till någon. Lär er PDO med prepared statements istället.