Är det säkert att använda denna kod för att skydda en sida från obehöriga?
Session tilldelas via databas om man har en viss behörighet! Eller finns det ett annat mycket bättre sätt att skydda den "hemliga delen"...
<%
If NOT session("behorig") = "ja" THEN
Session("not") = Response.Redirect../deadmansecure/default.asp?session=Logga in tack!")
%>
<% else %>
--------------------------
Här visas de hemliga!!!!
--------------------------
<% end if %>
Är det säkert att använda denna kod för att skydda en sida från obehöriga?
Session tilldelas via databas om man har en viss behörighet! Eller finns det ett annat mycket bättre sätt att skydda den "hemliga delen"...
<%
If NOT session("behorig") = "ja" THEN
Session("not") = Response.Redirect../deadmansecure/default.asp?session=Logga in tack!")
%>
<% else %>
--------------------------
Här visas de hemliga!!!!
--------------------------
<% end if %>
Det beror helt och hållet vilken typ av platform och hur pass hög säkerhet man vill ha. Är inte innehållet super viktigt så räcker det nog, så länge sjävla logginscriptet är säkrat mot SQL-injections.
Om du väljer att svaret ska vara "ja" eller "gargelblurf" spelar mindre roll, eftersom ingen kan gå in och ändra värden i sessionen. (Om det inte finns så allvarliga säkerhetsluckor så att en användare kan ladda upp och köra asp-kod)
Det som spelar roll är kriterierna för att värdet ska sättas. Om t ex login-formuläret är utformat så att det på något sätt går att lura asp-koden att sätta värdet till "ja" (Eller "gargelblurf" för den delen) så är detta den svagaste länken.
Men om ngn skulle kunna gissa session("behorig") = "ja" och sedan skriva adress direkt till sidan som är skyddad....då kommer den ju rätt in eller?
hur skyddar man sig mot de? kan man använda sessionID på ngt sätt?
Förstår inte hur du menar, de måste gissa fram lösenord o användarnamn för att först kunna sätta sessionen antar jag? Om de ej kan det, så sätts aldrig sessionen.
Och på varje sida så har du ett script som kollar att sessionen är rätt!
<%
if NOT session("behorig") = "ja" Then
Response.Redirect("felmeddelande.asp")
End if
' Kod som är skyddad, dvs sidan el annat kommer här...
%>
<html>
<body>Skyddad sida</body>
</html>
Om sessionen ej är lika med "ja" så skicka till felmeddelande.asp, annars visa innehållet på den sidan som denna kodsnutt finns på! :)
jo de jag menar är det....om ngn skapar en egen liten hemsida som endast har syftet att skapa en session tex session("behorig") = "ja" ......just för att de kanske lyckats ta reda på att den finns på min hemsida för att komma in! då finns ju sessionen redan och sedan kan de gå rätt in om de skriver rätt adress...
jo de jag menar är det....om ngn skapar en egen liten hemsida som endast har syftet att skapa en session tex session("behorig") = "ja" ......just för att de kanske lyckats ta reda på att den finns på min hemsida för att komma in! då finns ju sessionen redan och sedan kan de gå rätt in om de skriver rätt adress...
Näe, de skall nog inte funka så där, sätter du en session under https://www.domain.com och någon skapar en sida med samma session på https://www.domain.se, så spelar det ingen roll. Sessionen gäller endast för den domänen.
Med en session skapar du ett bra system mot obehöriga och det spelar ingen roll om personen känner till sökvägen eftersom du har en koll om det är rätt session eller inte.
Skriver någon person rätt adress och inte har rätt session så hamnar denne på felmeddelande.asp.
För att testa detta kan du skapa ett formulär där du ska skriva in rätt användarnamn och lösenord. Detta kollas mot en databas, där rätt användarnamn och lösenord finns. Sedan skapas en session som talar om att personen är inloggad med rätt behörighet.
För att testa om du inte har rätt session, dvs att nån kan sökvägen/adressen så gå förbi din inloggning och skriv in rätt adress till din sida. OBS! Du ska inte vara inloggad då! Då märker du att du inte kommer in!
132 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe