Avatar billede kongfjong Nybegynder
26. november 2005 - 21:45 Der er 6 kommentarer og
1 løsning

Problem med sikkerheden i.f.m kildekoden

Hej. Her til aften har jeg oplevet at man har kunne skrive anonymt i forummet på mit site, ved at gå ind i kildekoden og ændre navnet på den formular, som man skulle skrive indlægget i.

Det skal siges at man ikke kunne komme til formularen uden at være logget på, men var man først det, kunne man åbenbart gå ind i kildekoden og hvis man ændrede navnet på formularen, kunne man altså skrive anonymt i forummet.

Jeg fandt så ud af, at jeg ikke havde sat en kontrol af man var logget på, i det dokument, man blev sendt til når man trykkede ok i formularen. Den satte jeg ind og pludseligt kunne man ikke mere, men så kommer der to spørgsmål:

Hvad var det nøjagtigt der skete?

Hvordan kan jeg forhindre at man ellers kan bruge kildekoden til at foretage ændringer på sitet?
Avatar billede ranglen Nybegynder
26. november 2005 - 21:51 #1
Det brugernavn eller id man bliver identificeret ud fra, gemmer du i en session ved login. Og ved submit af indlæg, hives dette id ud. Så er der ingen mulighed for at fuske
Avatar billede jakobdo Ekspert
26. november 2005 - 21:53 #2
Det som muligvis skete, var følgende:
1: Du har en form, som kræver login, fra den postes data muligvis til: posts.php
Og posts.php lægger så dataen i databasen, ved at kalde posts.php direkte, kan man altså omgå dit login.
2: Du kan forhindre det med at alt kode er ordenligt beskyttet, og i stedet for at skrive brugernavn i formen, kunne du sætte brugerens navn i en session og bruge denne session når indlægget lægges i databasen.
Avatar billede kongfjong Nybegynder
26. november 2005 - 22:10 #3
Jeg fandt ud af at det dels var i formens action man satte url'en på sitet ind, og så havde jeg været for doven til at tjekke om den session-variabel med brugernavnet i, var sat i den fil der satte indlægget ind i db'en, fx. posts.php som du nævner jakobdo:)

Så jeg stjæler pointene tilbage hvis ikke I har noget imod det:) Fandt jo selv løsningen:)

Man kan I hjælpe med om der evt er andre situationer hvor man kan være sårbar overfor situationer som denne mht. kildekoden?
Avatar billede jakobdo Ekspert
26. november 2005 - 22:13 #4
sql injections
Avatar billede kongfjong Nybegynder
26. november 2005 - 22:58 #5
du mener i forbindelse med brug af Get-variabler?
Avatar billede jakobdo Ekspert
27. november 2005 - 13:30 #6
Ja, hvis du f.eks. laver en sql:
SELECT * FROM tabel WHERE id = $_GET["et_eller_andet"]
Avatar billede kongfjong Nybegynder
28. juni 2006 - 14:31 #7
Lukker....
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