Avatar billede htmlbugg Nybegynder
08. februar 2004 - 02:44 Der er 36 kommentarer og
2 løsninger

Password hjælp!

Skal have lavet et password system! Spiller et spil og vi har nu fået lavet en hjemmeside til vores klan! Og jeg skal stå for at lave den.


MEN! Vi skal have lavet en MEMBERS ONLY page, og jeg skal have lavet noget login der er svært at finde! Har allerede et men det er for let et spore... Tog mig 10 sekunder at breake det!
Selv min mor kunne gøre det! Så hjælp mig med at lave et login system plz! Har brug for ALT jeres hjælp! Der er 200 point til den der kommer med det bedste login script!!!!!!!!!!! ( Ville ha sat til 500 men kan ik!!!!! )
Avatar billede thesurfer Nybegynder
08. februar 2004 - 03:20 #1
Et godt login system bruger en form for database. Enten en database, eller en tekst fil. De indeholder brugernavne og kodeord.
Der er skal bruges serverside scriptsprog, som f.eks. ASP, JSP eller PHP.
JavaScript er klientside scriptsprog, dvs JavaScript kan hverken oprette forbindelse til en database, eller læse tekst filer.

At skrive selve kodeordet i html filen, er det dum ide.. og det har du vist allerede fundet ud af :)
En JavaScript løsning, er at bruge navnet på en htm fil, som kodeord.

F.eks.:
Kodeordet er "jens".. filen hedder så 'jens.htm'.
'jens.htm' sender brugeren videre til de hemmelige filer.

Eksempel på kode:


<form name="frmlogin" method="POST" action="" onSubmit="if (this.kodeord.value != '') location.href=this.kodeord.value + '.htm'; return false;">
<input type="password" name="kodeord">
<input type="submit" name="submit" value="Send">
</form>

Hvis det ikke virker, prøv:

<form name="frmlogin" method="POST" action="" onSubmit="return videre(this.kodeord.value)">
<input type="password" name="kodeord">
<input type="submit" name="submit" value="Send">
</form>

<script type="text/JavaScript">
function videre(val)
{
location.href=val + '.htm';
return false;
}
</script>
Avatar billede htmlbugg Nybegynder
08. februar 2004 - 03:29 #2
Nope... Duer ik... Kender den... Let at cracker!
Avatar billede htmlbugg Nybegynder
08. februar 2004 - 03:29 #3
Sry!
Avatar billede roenving Novice
08. februar 2004 - 05:43 #4
Du kan da bare lave et årnsvagt kodeord: p34l98-h72kfp1.html ...
Avatar billede googolplex Novice
08. februar 2004 - 08:37 #5
Hvis du gerne vil have et SIKKERT system, som din mor med garanti ikke kan cracke og som er NEMT at integrere i din side, så brug .htaccess:

http://www.webcafe.dk/artikler/apache/htaccesspassword/
http://www.webcafe.dk/artikler/apache/htaccesspassword2/

Det kræver altså bare at du har 2 sider:

.htaccess:

AuthName "-- Din hemmelige side(r) --"
AuthType Basic
AuthUserFile /stien/til/dit/bibliotek/på/serveren/htpasswd
require valid-user

htpasswd

brugernavn:krypteretpassword

Her står dit brugernavn, et ':', samt et krypteret kodeord. Lav særningen her:

http://www.webcafe.dk/artikler/apache/htaccesskrypterpassword/#her

Filerne skal hedde NØJAGTIGT som der står, den første skal starte med et punktum. Du kan oprette den i Notesblock, ved at sætte "" om filnavnet, så gemmer den dit filnavn nøjagtigt som der står. Husk at vælg alle filer.
Avatar billede googolplex Novice
08. februar 2004 - 08:39 #6
Hvis du ikke bruger Apache, så findes der noget tilsvarende for ISS, men det har jeg ikke helt tjek på.
Avatar billede htmlbugg Nybegynder
08. februar 2004 - 14:36 #7
Aner ikke hvad Apache er... Såå... Har i noget en NOOB ka finde ud af men stadig er ret svær at cracke?!
Avatar billede thesurfer Nybegynder
08. februar 2004 - 16:36 #8
"Let at cracker!"? Nej, det er det ikke. Det er faktisk meget svært at cracke, for ikke at sige "næsten umuligt". Man skal faktisk være meget heldig, for at cracke det. Eller også skal man bruge "brute force"-metoden, som prøver alle kombinationer, og tager MEGET lang tid (kommer an på længden af kodeordet).

Du kan hurtigt lave et sikkert system med "jens.htm"/"p34l98-h72kfp1.html" og cookies.

På hver eneste side, indsætter du noget kode der checker om cookien indeholder de rette data. Hvis de ikke gør, sendes man til en login side.
På den måde skal man via login siden, skrive det rigrige kodeordet, og henter "p34l98-h72kfp1.html". Filen "p34l98-h72kfp1.html" skriver så cookien, og så er det tilladt at se dine sider.

Det er meget nemt at ændre kodeordet, da du bare skal ændre det der står før ".html" i "p34l98-h72kfp1.html".


Og, Det hedder IIS :)

Og jeg synes at det er lidt for langt ude, at skulle sætte sig ind i Apache/IIS, bare for at lave noget beskyttelse.
Hvis det er at man skal hen og arbejde med server side beskyttelse, kan man lige så godt sætte sig ind i enten ASP eller PHP. Og så ville det være en god ide, at bruge en database.

Lektioner i ASP: http://html.dk/tutorials/asp/
Avatar billede roenving Novice
08. februar 2004 - 20:26 #9
Præcis for at illustrere, at det faktisk er meget svært, lavede jeg det håbløse kode-ord ...

For, som thesurfer skriver, er det i praksis ikke muligt at cracke, medmindre man har NSAs muligheder (tre supercomputere, som kører parallelt !-)

14 tegn, som jeg tilfældigvis angav, giver omkring 26.843.545.600.000.000.000.000 muligheder !o]
Avatar billede htmlbugg Nybegynder
08. februar 2004 - 20:30 #10
Uhmm... Jeg er ret noob... Så... Kan du hjælpe mig med at sætte den korrekt op?! Altså sige PRÆCIS hvad jeg skal ændre i koden og hvor det skal være?!
Avatar billede roenving Novice
08. februar 2004 - 20:38 #11
Lav en fil med et fuldstændigt håbløst navn, den fil skriver så en cookie:

p34l98-h72kfp1.html:

<html>
<script type="text/javascript">
document.cookie="medlem=ok;pass=accepted4664654;expires=Fri, Dec 31 2004 23:59:59 GMT";
location.href="medlemsside.html";
</script>
</html>

Og så medlemsside.html:

<html>
<script type="text/javascript">
if(document.cookie.indexOf('accepted4664654')==-1)history.go(-2);
</script>

<!-- resten af siden -->

</html>

-- det skulle betyde, at meget fanatiske crackere havde en lille bitte chance, men almindelige og avancerede brugere og crackere aldrig kom i nærheden !-)
Avatar billede htmlbugg Nybegynder
08. februar 2004 - 20:40 #12
Uhmm... Fattede jeg numse X 2 af! kan du tage den i et lidt mere roligt tempo?!
Avatar billede roenving Novice
08. februar 2004 - 21:02 #13
Nu nåede jeg så også at blande indtil flere ting sammen !-)

Men jeg går ud fra, at det er vigtigt, at ikke enhver kan komme ind på din side, men at du ikke vil hyre det samlede udbud af kriminelle i Marseilles til at forhindre det !-)

Altså, at du har brug for en sikkerhed, som ikke 'bare' kan crackes, men du vil ikke iværksætte en egentlig autencifikation (som kræver et database-script !-), så det er fuldstændig umuligt.

Det eksempel jeg har givet, arbejder i to niveauer:

Første gang skal et medlem skrive hele den umulige streng for at komme ind, senere vil det være muligt for det samme medlem at komme ind uden at skrive den samme gang volapyk !o]

Så i din 'Gå til medlemsside', laver du to muligheder:

Een, hvor man bare klikker på et link og så føres til medlemssiden, men der vil man så blive smidt flere sider tilbage, hvis man ikke har logget ind, og en, hvor man skal indskrive passwordet, som så har en knap ved, som fører en omkring cookie-skriveren:

<form>
Log-in-password: <input type="password" name="pass"size="30"><br>
<button onclick="location.href=this.form.pass.value+'html'">Log-in første gang</button><br>
<button onclick="location.href='medlemsside.html'">Log på (jeg har tidligere været logget på)</button>
</form>
Avatar billede htmlbugg Nybegynder
08. februar 2004 - 22:31 #14
Ok... Men... Hvad med resten?! Hvordan kan det være den lægger en cookie der!? Og hvad skal jeg mere gøre?!
Avatar billede thesurfer Nybegynder
08. februar 2004 - 22:58 #15
roenving gav et fint eksempel.. dog ville jeg nok bruge location.href="login.htm"; i stedet for history.go(-2);
Så sendes man direkte til login siden, i stedet for den anden sidste man har været på. Måske ville den bare ignorere history.go(-2), hvis man kommer direkte ind på en af de beskyttede sider.

* På login siden ('login.htm') ville der så være et text-felt til kodeordet, og en knap til afsendelse af informationerne. Her indtaster man roenvings indviklede kodeord, og klikker på "Send"-knappen.
F.eks.:

<form method="post" onSubmit="location.href=this.kodeord.value+'.htm'; return false">
Kodeord: <input type="password" name="kodeord">
<input type="submit" name="submit" value="Send">
</form>

* På kode-siden sættes cookien (f.eks. roenvings kode-fil)
<html>
<script type="text/javascript">
document.cookie="medlem=ok;pass=accepted4664654;expires=Fri, Dec 31 2004 23:59:59 GMT";
location.href="medlemsside.html"; // denne side indeholder links til medlemssiderne
</script>
</html>

* På ALLE dine medlemssiderne har du koden (eksempel):

<html>
<script type="text/javascript">
// hvis 'accepted4664654' ikke findes i cookien, sendes brugeren til login-siden
if(document.cookie.indexOf('accepted4664654')==-1) location.href='login.htm';
</script>

<!-- resten af siden -->

</html>
Avatar billede htmlbugg Nybegynder
08. februar 2004 - 23:04 #16
Ok... Fattede det første og andet... Men.... Skal den sidste kode stå LIGE under Html eller i Head?! Og... Hvad med den der "Accepted" ting... Altså: "document.cookie="medlem=ok;pass=accepted4664654;expires=Fri, Dec 31 2004 23:59:59 GMT";
" hvad er det med tiden og hvad er det med nummeret?!
Avatar billede thesurfer Nybegynder
08. februar 2004 - 23:15 #17
"accepted4664654">
Dette er 'valideringsordet'/'kontrolordet'. Den checker man, om eksisterer i cookien. Der kan stå hvad som helst her.

"expires=Fri, Dec 31 2004 23:59:59 GMT">
En cookie skulle gerne 'dø' på et eller andet tidspunkt, hvis man ikke selv slår den ihjel. Når den 'dør', slettes den fra din computer. I roenvings eksempel dør cookien den 31. december år 2004, klokken 23:59:59, GMT (GMT = London tid = Dansk tid minus 1 time).
Avatar billede htmlbugg Nybegynder
08. februar 2004 - 23:28 #18
OK! Uhmm... Hvem skal ha pointsne?! Thesurfer og roenving har hjulpet lige meget! :S
Avatar billede thesurfer Nybegynder
08. februar 2004 - 23:31 #19
Det er meget enkelt :)
Jeg lægger et svar, og det gør roenving også. Så kan du fordele points via avanceret pointsfordeling.
Avatar billede thesurfer Nybegynder
08. februar 2004 - 23:31 #20
Du skal lige vente til, at roenving også lægger et svar! :)
Avatar billede htmlbugg Nybegynder
09. februar 2004 - 00:00 #21
Hmm... Kan man ikke få den til at holde længere?!
Avatar billede thesurfer Nybegynder
09. februar 2004 - 00:09 #22
hmm.. jeg ved ikke lige hvor langt tid, man kan holde en cookie i live, men 1 år må da være mere end nok :)
Du skal lige tænke på, at sålænge at cookie er på computeren, kan alle der bruger computere, komme ind på dine medlemssider..
Avatar billede htmlbugg Nybegynder
09. februar 2004 - 19:12 #23
Jaah...Hmm... Så skal jeg jo lave en advarsel... At man IKKE skal logge ind på medlemssiden hvis man bruger offentlig com
Avatar billede roenving Novice
09. februar 2004 - 20:54 #24
-- det er også en god idé !-)

-- men dine brugere vil vel også mest bruge den fra private steder, medmindre de lige skal bruge en aften på skisportsstedet eller Mallorca ...

-- og velbekomme '-)
Avatar billede htmlbugg Nybegynder
10. februar 2004 - 01:24 #25
Tusing tak i to! :) I har hjulpet mig meget! 100 point til jer!
Avatar billede roenving Novice
10. februar 2004 - 01:28 #26
-- og tak for points ;~}
Avatar billede htmlbugg Nybegynder
10. februar 2004 - 05:28 #27
Forresten... Nu jeg prøver det... Duer det ikke... Selvom jeg har sat det op PRÆCIS som i har sagt så flyver jeg tilbage til loginsiden hver gang! Nogen ideer?!
Avatar billede htmlbugg Nybegynder
10. februar 2004 - 05:37 #28
Prøv selv... www.htmlbugg.dk/td/login.htm ... Kodeordet er bmkcht11291183
Avatar billede htmlbugg Nybegynder
10. februar 2004 - 05:37 #29
Nej forresten... det er a... Bare a... Lille a
Avatar billede thesurfer Nybegynder
10. februar 2004 - 16:47 #30
hmm..

roenvings kode:
document.cookie= (og: "medlem=ok;pass=accepted4664654;expires=Fri, Dec 31 2004 23:59:59 GMT";)

din kode:
document.ignore= (og: "medlem=ok;pass=accepted10182191619132;expires=Fri, Dec 31 2004 23:59:59 GMT";)

du bruger ".ignore" i stedet for ".cookie".. eller også er det serveren der ikke tillader ".cookie"..
Avatar billede htmlbugg Nybegynder
10. februar 2004 - 22:55 #31
Nope... Bruger ikke .ignore .. :S Aner ik hva der går galt for skidtet!
Avatar billede htmlbugg Nybegynder
10. februar 2004 - 22:56 #32
<html>
<script type="text/javascript">
document.cookie="medlem=ok;pass=accepted123456789;expires=Fri, Dec 31 2004 23:59:59 GMT";
location.href="members/index.htm";
</script>
</html>



KOPI fra a.htm
Avatar billede htmlbugg Nybegynder
10. februar 2004 - 22:58 #33
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<script type="text/javascript">
if(document.cookie.indexOf('accepted123456789')==-1) location.href='../login.htm';
</script>
<HEAD>
<!-- Minus AutoDato -->
    <TITLE>Layout for Frontpage</TITLE>
<META NAME="Generator" CONTENT="Stone's WebWriter 3.5">
</HEAD>
<BODY bgcolor="000000">


Og kopi fra members siden...
Avatar billede htmlbugg Nybegynder
10. februar 2004 - 22:59 #34
Hmm.. Måske er cookien for LANG?! :S Prøver at lave den koretere...
Avatar billede htmlbugg Nybegynder
10. februar 2004 - 23:01 #35
Nope... Duer ik!
Avatar billede thesurfer Nybegynder
11. februar 2004 - 19:41 #36
Jeg tror at det er serveren der ændre "cookie" til "ignore"..
Avatar billede htmlbugg Nybegynder
12. februar 2004 - 00:27 #37
Ok! :S En af mine venner hoster mig nu! Håber den server virker!
Avatar billede 8718 Juniormester
12. februar 2004 - 00:33 #38
En lille slutbemærkning - "clan-mødre" læser også eksperten ..... så tak for hjælpen. Hilsen en mor!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester