💬
Logga in
Fuska.se

Hjälp Med Php/html

3 svar · startad

Nivå 4 · Lärling
Trådstartare #1

Jag hittade ett php login script till min sida. Allt funkar bra, SQL databasen och allt. Men, man kan bypassa login screenen, och jag vet inte hur man täpper igen det säkerhetshålet. Det är förmodligen rätt enkelt, men jag är nybörjare. Kan ta ett exempel:

 

När man går in på sidan så kommer man till http://minsida.se/login.php.

Om man loggar in så kommer man till http://minsida.se/home.html.

Men, när man är vid login skärmen så kan man helt enkelt byta ut login.php mot home.html och så kommer man in på sidan direkt. Och jag undrar hur man gör så det inte går.

 

Tack på förhand.

Senast ändrad:

Nivå 16 · Legendfuskare
#2

Byt först namn på home.html till home.php. Sedan skriver du php-kod i den för att kolla om man faktiskt är inloggad.

6 Jan 2013
#3

Ett möjligt angripande för att lösa problemet är att du i login.php skapar en php session med "username" samt "password" när inloggningsuppgifterna har verifierats. Sedan i alla andra dina filer kollar du om användaren INTE har en aktiv session igång och därefter så sparkar du användaren till en lämplig plats som då bör vara login-sidan.

 

ex.

 

<?php

session_start();

//Om antingen username eller password är tom så skickas användaren tillbaka till login.php

if(empty($_SESSION['Username']) || empty($_SESSION['Password']))

{

header('Location: login.php');

}

?>

 

obs. att empty returnerar true även om SESSION['username'] aldrig definierats

Senast ändrad:

1 Aug 2014
Nivå 5 · Fuskare
#4
↗ till inlägget

Ett möjligt angripande för att lösa problemet är att du i login.php skapar en php session med "username" samt "password" när inloggningsuppgifterna har verifierats. Sedan i alla andra dina filer kollar du om användaren INTE har en aktiv session igång och därefter så sparkar du användaren till en lämplig plats som då bör vara login-sidan.

 

ex.

 

<?php

session_start();

//Om antingen username eller password är tom så skickas användaren tillbaka till login.php

if(empty($_SESSION['Username']) || empty($_SESSION['Password']))

{

header('Location: login.php');

}

?>

 

obs. att empty returnerar true även om SESSION['username'] aldrig definierats

This is the way to go, men jag rekommenderar att använda !empty och sedan använda else, eller att placera die(); innanför if'en, för annars så kommer man kunna se sidan som endast ska vara för inloggade iaf.

 

Sorry för gravedigs, såg precis datumet på trådarna jag postat på.

Senast ändrad:

Vill du vara med i diskussionen?

Bli medlem Logga in