Toon posts:

[JAVA] Beveiliging website

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik probeer een gedeelte van mijn website te beveiligen. Ik heb dat nu gedaan met een java-script dat er zo uitziet:
<SCRIPT LANGUAGE="JavaScript">
<!---
function grasppasswd() {
var paroledordre = prompt("Please enter the password:", "")
var wherever=paroledordre + ".html";
this.location.href = wherever;
}
// --->
</SCRIPT>
</HEAD>
<body bgcolor= "#000000" text="#FFFFFF" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">

<span class="intro">Please click the link below to enter the download area.</span><br><br>

<SCRIPT LANGUAGE="JavaScript">
<!--
if (navigator.userAgent.indexOf("Mozilla/3.0") != -1) version = 3;
else if (navigator.userAgent.indexOf("MSIE") != -1) version = 1;
else if (navigator.userAgent.indexOf("Mozilla/2.0") != -1) version = 2;
else if (navigator.userAgent.indexOf("Mozilla/4.0") != -1) version = 4;
else version = 0;

function source(object) {
return '<A HREF="view-source-'+eval(object+'window.location')+'" tppabs="http://reverser.org/view-source:'+eval(object+'window.location')+'">this link</A>';
}

if (version != 1) document.write(source('top.'));
//--></SCRIPT>

<span class="intro">
<A HREF="javascript:grasppasswd()" onMouseOver="window.status='Click to enter';return true" onMouseOut="window.status='';return true">ENTER</A>
</span>
Hierbij druk je dus op een link (ENTER in dit geval) en dan krijg je een pop-upje die vraagt om een password. Vervolgens stuurt hij je door naar de html page waarvan het wachtwoord is ingetypt (password=help -> gaat naar help.html).
Nu is mijn vraag hoe veilig dit eigenlijk is. Kortom: is het mogelijk om een lijst op te vragen van html-pagina's op een bepaalde server?

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 21:52

RM-rf

1 2 3 4 5 7 6 8 9

absoluut niet veilig, ik meen dat google verdomd lastig indexeert en ook pagina's weet te vinden die niet gelinked zijn (heb ooit een leak gehad met een upload-script op die wijze) ik meen dat als je fancyIndexing op je server uit hebt staan je in theorie veilig bent.

wat echter een evengroot lek is, is dat mensen die de pagina bezocht hebben hem in hun history hebben staan:
in feite is je beveiliging niks anders dan de naam van een pagina aan iemand doorgeven.

//edit
Yoozer doelt daarmee waarschijnlijk op .htaccess dat de meeste providers ook gewoon ondersteuning, zelfs veel low-cost accountjes

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • Yoozer
  • Registratie: Februari 2001
  • Laatst online: 20-01 22:02

Yoozer

minimoog

(hier stond eerst een hele hoop irrelevant maar interessant geblaat, sorry.)

nee, het is niet veilig. het mooiste zou zijn als je het server-side kon doen, daar kun je paswoordfiles aanleggen en de hele zooi encrypten of zo.

[ Voor 0% gewijzigd door Yoozer op 28-08-2002 17:58 . Reden: zie reden. ]

teveel zooi, te weinig tijd


Verwijderd

Topicstarter
Helaas, dat wordt mij allemaal iets te ingewikkeld, zoveel verstand heb ik er niet van.
Dus ik moet iets met .htaccess gaan proberen?

  • cutter
  • Registratie: November 2000
  • Laatst online: 28-09-2025

cutter

Wannabe i7 fanboy

eeumm, ja als je webserver het ondersteunt is dat wel een ideetje ja. Bij een geocities achtig accountje kun je het hele verhaal vergeten.
http://directory.google.c.../Hints_and_Tips/htaccess/ alstu

Verwijderd

Topicstarter
htaccess wordt niet ondersteund geloof ik en daar heb ik ook 0,0 verstand van. Ik heb het nu met ASP gedaan. Werkt uitstekend. Ik kan nu users aanmaken en die worden opgeslagen in een database op de server. Veiliger dan bovenstaand javascriptje lijkt me :)

  • Yoozer
  • Registratie: Februari 2001
  • Laatst online: 20-01 22:02

Yoozer

minimoog

misschien zou het dan ook gelijk een leuke uitdaging zijn om even een encryptie-algoritmetje ertussen te bouwen.. weet je dat, als ze de dbase krijgen, ze er nog niets mee kunnen.

(een paar shifts, rots, en alpha > num dingen achter elkaar is makkelijk, en het ziet er stoer uit. natuurlijk geen rot26 toepassen..)

teveel zooi, te weinig tijd


Verwijderd

Topicstarter
Hm, toch een klein probleempje in het script. Ik heb nu 2 verschillende secties gemaakt, voor video en audio. Maar als ik nu in de audio-sectie inlog en vervolgens de video sectie open, hoef ik in die video sectie niet meer in te loggen! Ook al bestaat de user waarmee ik in de audio-sectie ben ingelogd bij de video niet. Weet iemand hoe dit kan?

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 21:52

RM-rf

1 2 3 4 5 7 6 8 9

Verwijderd schreef op 29 augustus 2002 @ 12:58:
Hm, toch een klein probleempje in het script. Ik heb nu 2 verschillende secties gemaakt, voor video en audio. Maar als ik nu in de audio-sectie inlog en vervolgens de video sectie open, hoef ik in die video sectie niet meer in te loggen! Ook al bestaat de user waarmee ik in de audio-sectie ben ingelogd bij de video niet. Weet iemand hoe dit kan?
dat zal moeilijk zijn zonder de source;

maar ik vermoed een probleem rond het gebruik van sessions;
het lijtk of je enkel controleeert of een session bestaat niet tot welke ruimte de sesion toegang biedt (sessionvariabelen)

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


Verwijderd

Topicstarter
Dit is de source:
<%
' Populating variables from the HTTP Header and the Server
STATUS = Request("STATUS")
USERNAME = Replace(Request("USERNAME"),"'","")
PASSWORD = Replace(Request("PASSWORD"),"'","")
THISPAGE = "http://" & Request.ServerVariables("HTTP_HOST") & Request.ServerVariables("URL")

' These are the variables you may need to change
DATA_PATH = "E:\blabla\protected_video\_database\video_passwords.mdb"
ConnPasswords_RuntimeUserName = "admin"
ConnPasswords_RuntimePassword = "Xpass"

' checks to see if login form was submitted..if so its runs the validation code
If STATUS = "CHECKEM" Then

'****************************************************************************
' The following checks for a user and if it finds one it stores all their
' information in session variables that will be available to you at all times
'****************************************************************************


Set ConnPasswords = Server.CreateObject("ADODB.Connection")
Set CmdCheckUser = Server.CreateObject("ADODB.Recordset")
ConnPasswords.Open "DBQ=" & DATA_PATH & ";Driver={Microsoft Access Driver (*.mdb)};UID=" & ConnPasswords_RuntimeUserName & ";PASSWORD=" & ConnPasswords_RuntimePassword
SQL = "SELECT FULL_NAME, USERNAME, PASSWORD, ACCESS_LEVEL, NOTES, ADMIN, ID FROM USERS WHERE (USERNAME = '" & USERNAME & "') AND (PASSWORD = '" & PASSWORD & "')"
CmdCheckUser.Open SQL, ConnPasswords

If CmdCheckUser.EOF And CmdCheckUser.BOF Then

Session("PASSWORDACCESS") = "No"

Else

Session("PASSWORDACCESS") = "Yes"
Session("FULL_NAME") = CmdCheckUser("FULL_NAME")
Session("PASSWORD") = CmdCheckUser("PASSWORD")
Session("USERNAME") = CmdCheckUser("USERNAME")
Session("ADMIN") = CmdCheckUser("ADMIN")

End If

CmdCheckUser.Close
Set CmdCheckUser = Nothing
ConnPasswords.Close
Set ConnPasswords = Nothing

'*********************
'*********************

End If

'**************************************************************
' The following checks for proper Access for the Admins
'**************************************************************

If CHECKFOR = "ADMIN" Then
If Session("ADMIN") = "False" Then
Session("PASSWORDACCESS") = "No"
End If
End IF

'*********************
'*********************


'**************************************************************
' The following checks to see if a user has been validated yet
' If not it will show the login screen
'**************************************************************


If Session("PASSWORDACCESS") <> "Yes" Then
Response.Write("<HTML>")
Response.Write("<BODY bgcolor=""#000000"" background=""../images/biomidbg.jpg"">")

If Session("PASSWORDACCESS") = "No" Then
Response.Write("<p align=""center""><font face=""Arial"" color=""#FFFFFF""><strong><br><br>ACCESS DENIED</strong></font></p>")
Response.Write("<p align=""center""><small><strong><font face=""Arial"" color=""#FFFFFF"">INVALID USERNAME & PASSWORD</font></strong></small></p>")
End If

Response.Write("<form method=""POST"" action=""" & THISPAGE & """>")
Response.Write(" <center><strong><small><font face=""Arial"" color=""#FFFFFF""><br><br>Welcome to the Junkie XL login page.<br><br>Please enter you Username and Password and click "Login".<br><br><br><br></font></small></strong></center>")
Response.Write(" <input type=""hidden"" name=""STATUS"" value=""CHECKEM""><div align=""center""><center><table")
Response.Write(" border=""0"">")
Response.Write(" <tr>")
Response.Write(" <td><strong><small><font face=""Arial"" color=""#FFFFFF"">Username  </font></small></strong></td>")
Response.Write(" <td><input type=""text"" name=""USERNAME"" size=""10""></td>")
Response.Write(" </tr>")
Response.Write(" <tr>")
Response.Write(" <td><strong><small><font face=""Arial"" color=""#FFFFFF"">Password  </font></small></strong></td>")
Response.Write(" <td><input type=""password"" name=""PASSWORD"" size=""10""></td>")
Response.Write(" </tr>")
Response.Write(" </table>")
Response.Write(" </center></div><div align=""center""><center><p> <input type=""submit"" value=""Login""></p>")
Response.Write(" </center></div>")
Response.Write("</form>")
Response.Write("</BODY>")
Response.Write("</HTML>")

Response.End
End If

'*********************
'*********************
%>
Je hebt gelijk. Hij contoleert inderdaad niet tot welke ruimte de session behoort. Enig idee hoe ik dit op kan lossen?

Verwijderd

Topicstarter
Niemand!? Moet ik iets doen met dat "ACCESS_LEVEL" of niet?
Pagina: 1