Avatar billede udvikler Nybegynder
05. februar 2006 - 17:07 Der er 7 kommentarer og
1 løsning

Mangler jeg flere sikkerheds tjek

Hvis i har fulgt med har jeg lavet et par sikkerheds spørgsmål på det seneste, og de har udviklet sig til nogle ret hyggelig tråde hvor vi fik diskutteret alle mulighede ting igennem. Nu har jeg så samlet alle de ting jeg har tilføjet, og vil gerne høre hvad jeg mere kan gøre:

- Jeg notere vigtige ting ned i en log. Fx hvis en bruger er banned, hvis et login forsøg er mislykket. Hvis noget på siden bliver slettet/redigeret.
- Forummet er beskyttet via htmlentities
- Alle inputs som kommer udefra bliver tjekket via mysql_real_escape_string();
- Alle steder hvor jeg bruger $_GET['id']; så tjekker jeg om GET værdien er et tal
- Jeg bruger GDlib til at generere et billede på 3 cifre som man skal udfylde korrekt før at man kan oprette en bruger.
- Man har kun 3 forsøg i træk til at logge ind, hvis alle tre fejler, så er man bannet i en time. Derefter kan man prøve igen.
- Man kan kun skrive en besked hvert 30. sekund i forummet.
- Alle passwords i hele systemet er md5 hashet.


Både mysql og php sikkerheds tips er velkommene!
Avatar billede bufferzone Praktikant
05. februar 2006 - 17:12 #1
Du kunne jo læse denne artikel , der netop handler om dette

http://www.eksperten.dk/artikler/908
Avatar billede udvikler Nybegynder
05. februar 2006 - 17:18 #2
Den vil jeg læse, folk er dog stadig velkommne til at komme med deres bud på nogle uskrevne regler :)
Avatar billede polle007 Nybegynder
05. februar 2006 - 17:34 #3
Det gør du sikkert :) Når kontrollen af data typerne er overstået, skal du i gang med den logiske kontrol.

En typisk feature jeg ser blive stillet tilrådighed, er manipulering af hidden form values. Forventer du f.eks. et tal mellem 0 og 3, er det ikke nok at kontrollere at det er et tal, du skal også kontrollere, at værdien rent faktisk ligger i dette interval.
Avatar billede AnyFellow Mester
05. februar 2006 - 17:36 #4
En lille kommentar til "Man har kun 3 forsøg i træk til at logge ind, hvis alle tre fejler, så er man bannet i en time. Derefter kan man prøve igen.".

Du skal nøje overveje hvad det er du beskytter.
Hvis jeg vil genere en af dine brugere, kan jeg bare forsøge at logge på hans konto 3 gange, og så vil han ikke selv kunne komme på i en time.

Personlig synes jeg du skal lade folk prøve logins så tit de vil, men i stedet lave en login-fejl ala: Brugernavn og/eller kodeord er ikke korrekt.
På den måde vil en bruger der forsøger at skaffe sig uretmæssig adgang ikke vide om det brugernavn der forsøges brugt er korrekt.
Avatar billede leif Seniormester
05. februar 2006 - 17:42 #5
Banner du baseret på IP eller Brugernavn ? Ved Brugernavn kan jeg gøre som kfisker skriver banner du på IP, kan jeg ikke.
Avatar billede udvikler Nybegynder
05. februar 2006 - 17:46 #6
Jo det har jeg tænkt lidt på, jeg tror jeg retter det til IP baning. :)

Forresten fik jeg 2 ting ud af dine herlige artikel bufferzone :)

- Jeg skal til at give brugerne mulighed for at få hjælp til at lave sikrere kodeord
- jeg skal til at ændre navnet på mine filer i administrator panelet

------------

Flere ting er selvfølgelig velkommne ;-)
Avatar billede drbean Nybegynder
05. februar 2006 - 19:13 #7
Syntes det er en dum ide at IP banne. Hvis folk sidder i fx et større firma, (ja, folk surfer også i arbejdstiden ;-) ) og en i firmaet bliver bannet, er hele firmaet bannet.
Avatar billede steven_ Nybegynder
06. februar 2006 - 06:18 #8
Brugernavnet skal jo blot bannes fra den pågældende IP-adresse, men er en time ikke lidt i overkanten?

Ti minutters tid er da rigeligt.
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