Hej! <b>* Om jag har en fil som heter "hemligt.txt" i min mapp så kommer man åt den genom att skriva www.minsite.se/minmapp/hemligt.txt. Men om man inte vet vad filen heter kan man komma åt den då? Går det på något sätt att läsa innehållet i en mapp fast den innehåller en startsida, som till exempel index.php, och på så sätt se vilka filer mappen innehåller?</b> Jag vet inte hur pass hög säkerhet som ditt sytem kräver men det du bör tänka på är att bara för att du använder sessions så är det fortfarande möjligt att ta sig in på siten. Det största problemet hos sessions är vad man kallar för session hijacking och är som det låter, någon kapar sessionen och servern tror då att den utomstående som kapade sessionen är den användare som loggade in. > Sannolikt inte (om det inte i applikationen finns någon funktion som listar innehållet i en katalog och denna funktion).Säkerhet
Några frågor om säkerhet:
* Om jag har en fil som heter "hemligt.txt" i min mapp så kommer man åt den genom att skriva www.minsite.se/minmapp/hemligt.txt. Men om man inte vet vad filen heter kan man komma åt den då? Går det på något sätt att läsa innehållet i en mapp fast den innehåller en startsida, som till exempel index.php, och på så sätt se vilka filer mappen innehåller?
* Kan man läsa innehållet i en php-sida? Alltså ladda hem den och inte få den att köras på servern.
* Om man sätter en cookies vid kontroll av inloggning och sedan kontrollerar innehållet i denna i början på varje php-sida, är detta en tillräcklig säkerhet?
* Kan man leta upp cookien på datorn och läsa innehållet?
* Kan man ändra innehållet i en cookie och på så sätt lura min php-sida?
mvh
/MichaelSv: Säkerhet
Sannolikt inte (om det inte i applikationen finns någon funktion som listar innehållet i en katalog och denna funktion).
<b>* Kan man läsa innehållet i en php-sida? Alltså ladda hem den och inte få den att köras på servern.</b>
Det beror på hur webbservern är konfigurerad. Ibland har man en katalog includes med PHP-filer. Om denna katalog kan besökas och det inte är satt att filerna skall exekveras som PHP, kan filerna laddas hem "råa".
<b>* Om man sätter en cookies vid kontroll av inloggning och sedan kontrollerar innehållet i denna i början på varje php-sida, är detta en tillräcklig säkerhet? </b>
Det beror på innehållet i cookien. Det normala sättet vid inloggning är att man kör med sessioner. Då lagras en fil med data på servern och en cookie med sessionens ID på klienten. Detta är relativt säkert.
<b>* Kan man leta upp cookien på datorn och läsa innehållet?</b>
Ja. Hur lätt det är att läsa innehållet beror på vilken webbläsare man använder. I Firefox kan man via menyn gå in och kolla vilka kakor som är satta för en webbplats och vad de innehåller.
<b>* Kan man ändra innehållet i en cookie och på så sätt lura min php-sida?</b>
Ja.Sv: Säkerhet
Några saker som du kan tänka på för att göra det så säkert som möjligt är att:
I början på varje fil skriva
ini_set('session.use_only_cookies', TRUE);
ini_set('session.use_trans_sid', FALSE);
ini_set('session.cookie_lifetime', 1200);
ini_set('session.use_only_cookies', TRUE); och ini_set('session.use_trans_sid', FALSE); är till för att se till så det inte går att komma åt en session via url:n.
ini_set('session.cookie_lifetime', 1200); är till för att sätta en maxtid på 1200 sekunder (20 min) på hur länge en session får leva, detta för att se till så att om en användare stänger webläsaren så ska inte någon annan kunna komma åt den sessionen. Visserligen har dom ju 20 min på sig men tar du kortare tid så blir det jobbigt att använda systemet eftersom du efter 20 min inaktivitet måste logga in igen.
Du kan självklart ändra detta i php.ini också men om du inte har tillgång till den så går det bra att göra så här istället.
Men vill du vara riktigt säker så ska du använda dig utav Secure Sockets Layer (SSL) eftersom all data då kommer skickas krypterad och ifall någon annan lyssnar på trafiken så blir dom inte mycket klokare.
Om någon vill veta mer så kan jag verkligen rekommendera boken "Pro PHP Security" skriven av Chris Snyder och Michael Southwell, ISBN 1-59059-508-4.
Sv:Säkerhet
Observera att det inte krävs mycket för att google ska ha fått nys om urlen... Räcker med att någon vet urlen så vet alla den...