Avatar billede thecarfacekiller Nybegynder
19. maj 2009 - 15:56 Der er 13 kommentarer og
1 løsning

Sql Injection

Jeg er så småt igang med at lære om Sql injection og Exploits - Men et spørgsmål jeg har tænkt over i et stykke tid nu - Hvordan ved jeg at der er et/en exploit på den side jeg nu er på, og hvordan ved jeg at mit exploit virker.
Hvis der er forskel på exploits, så vil jeg gerne lære ASP og ASP.NET sql injection?
Avatar billede fennec Nybegynder
19. maj 2009 - 16:12 #1
Ikke helt med på hvad du mener, men det er ikke sådan at der er en kommando du kan affyre også få at vide hvilke huller der er på siden. (Det er der måske hacker værktøjer der kan)

Vil du sikre din side, er der kun EN vej. Test, test og mere test. Eller sagt på en anden måde: "Afprøve de forskellige metoder indtil de alle er fejlet".
Avatar billede arne_v Ekspert
19. maj 2009 - 16:15 #2
Om din kode er saarbar overfor SQL injection er normalt ret nemt at se ved inspektion af koden.
Avatar billede thecarfacekiller Nybegynder
19. maj 2009 - 16:18 #3
Altså det kunne godt være der kom en fejl meddelelse frem hvis der var en fejl altså såsom Warning error in line 1 eller noget i den stil...

Når du siger at teste, mener du så at, f.eks:

postcomment.asp?username=Blaah&comment=blaah(Og så mit SQL angreb her) eller?
Avatar billede arne_v Ekspert
19. maj 2009 - 16:25 #4
Jeg kender kun en database som kan saettes til at give fejl ved SQL saetninger som er saarbare overfor SQL injection og det er H2 databasen.
Avatar billede thecarfacekiller Nybegynder
19. maj 2009 - 16:26 #5
Okay tak til jer begge 2, det opklarede mit "mysterie" eller hvad man nu skal kalde det..
I er velkommen til at ligge et svar :D
Avatar billede thecarfacekiller Nybegynder
19. maj 2009 - 16:28 #6
Lige et spørgsmål til - Hvis man nu finder et "hul" kan alt så trænge igennem - Altså Create database,update,select, og hvad der nu er?
Altså hvis der først er et exploit, kan man så alt der nu ligger i ens Database?
Avatar billede fsconsult.dk Nybegynder
19. maj 2009 - 16:38 #7
2 gode råd til at modvirke/minimere SQL injections.

1.  Brug prepared statements, og ikke noget med at sætte SQL udtryk sammen vha. variable.
2.  Brug altid en database-bruger til applikationen, som har så få rettigheder som muligt. Aldrig en der har adgang til at oprette/slette databaser eller tabeller (medmindre din applikation har brug for det).
Og hvis man har en applikation der ikke opdaterer i databasen, bør brugeren heller ikke have adgang til det.
Avatar billede egonspock Seniormester
19. maj 2009 - 16:51 #8
hehe, jeg kom lige til at tænke på denne:

http://xkcd.com/327/
Avatar billede thecarfacekiller Nybegynder
19. maj 2009 - 16:56 #9
Haha. Ja den har jeg også set :D
Avatar billede arne_v Ekspert
19. maj 2009 - 17:08 #10
I de fleste tilfaelde vil et SQL injection hul tillade at enhver form for SQL saetninger bliver koert. D.v.s. at begraensningen ligger i hvad brugernavnet har lov til i databasen. Derfor restriktion paa hvad brugernavn har adgang til.
Avatar billede arne_v Ekspert
19. maj 2009 - 17:09 #11
Og som sagt er det nemmeste nok at bruge code inspection til at finde fejlene. En test vil ikke kunne proeve alle muligheder - der er simpelthen for mange kombinationer.
Avatar billede arne_v Ekspert
19. maj 2009 - 17:09 #12
og et svar fra mig
Avatar billede arne_v Ekspert
19. maj 2009 - 17:20 #13
Skuller de point ikke have vaeret delt ?
Avatar billede thecarfacekiller Nybegynder
19. maj 2009 - 18:00 #14
Emm -.-

Ved ikke hvordan man gør det.
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
Computerworld tilbyder specialiserede kurser i database-management

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