View Single Post
I det spesifikke tilfellet Hemmelig.com så ble Epostkontoen til en eller annen administrator/eier tatt over, og hackerne fikk full tilgang til FTP og databaser. Da er det ikke vanskelig å hente ut alt du måtte ønske av informasjon. Shared hostings, som du spør om, kan i enkelte tilfeller gi tilgang for andre, blant annet hvis filene dine kan leses av 'alle'.

Dette, og mye annet må *alltid* være i bakhodet under hele produksjonsprosessen. Sikkerhet er ikke noe du gjør til slutt, men noe som bør bidra til valg av webhost, programvare, utviklingsprosess og til slutt selve implementasjonen på nettsiden din. Det er vanskelig å beskytte seg mot ting man ikke vet at eksisterer, f.eks. GIF/Flash injection, men om du går ut i fra at ALT brukere sender inn kan være ondsinnet så ligger du godt an. En god regel er å så sjeldent som mulig hente inn data som går rett inn i databasen din. Et eksempel med pseudokode:

Kode

$valg = $POSTDATA['valg'];
$valg = intvalue($valg);
query('Update table brukere set valg='$valg' where brukernavn='$session_bruker');
Da er det mye sikrere å faktisk å gjøre dette:

Kode

$valg = $POST['valg'];
switch($valg){
  case '1':
    query('Update table brukere set valg='1' where brukernavn='$session_bruker');
    break;
  case ...
}
Uansett hvor mange filtre du kjører på inputen din, så vil det ikke slå et konsept hvor brukeren viser intensjonen sin og du utfører et statisk kall basert på den intensjonen. I alle fall på sikkerhet. Det er mange, mange fallgruver som selv erfarne programmerere faller i (SQL injection er ikke akkurat et nytt fenomen) og den beste måten å holde seg oppdatert på er å faktisk ta seg tid til å oppdatere seg. Vær interessert i nyheter om temaet og få med seg "det siste" innen sikkerhetsnyheter og hvordan ulike sider blir kompromittert. Ligg et skritt foran, rett og slett.
Sist endret av Dyret; 24. desember 2011 kl. 01:46.