/ Forside / Teknologi / Internet / Sikkerhed / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Sikkerhed
#NavnPoint
stl_s 37026
arlet 26827
miritdk 20260
o.v.n. 12167
als 8951
refi 8694
tedd 8272
BjarneD 7338
Klaudi 7257
10  molokyle 6481
ASP Sikkerhed?
Fra : Lasse T. Jensen


Dato : 08-12-08 13:34

Hej List users

Jeg er i gang med sikkere et IIS,ASP,MSSQL site da det gentagene gange
har være lagt ned pga. sql injection, løsningen må være indholds
filtrering af form data fra malisius usere til serveren, så KUN ascii
karaktere kan overføres til serveren, sitet ser sådan ud:
1. bruger oprettelse med udfyldelse af mail adresse og ønsket bruger
navn og password
2. bekræftigelse kommer til brugeren via mail
3. brugeren kan så logge ind og sende post, chatte og lave opslag på en
slags opslags tavle til og med de andre users.
Min makker og jeg er meget uenige om hvordan vi klare problemet
bla. pga. der er brugere der ønsker at kunne bruge skråstreger mm. og
der er brugere der allerede har underlige non ascii tegn i deres
usernames, jeg mener vi skal ligge global indholds filtrering på alt
data der bliver send til serveren altså både tekst felter, emmne felter
og bruger navne felter, og alle non ascii tegn skal filtreret væk så
alle tekst felter bliver filtreret og kun ascii tegn er lovlige altså
ingen stråstreger kun alfabetet i store og små bogstaver og minus streg
kan lige tillades.

Skulle der være nogen der måtte ha´ en mening om dette eller har
praktisk erfaring med dette? ville jeg blive glad hvis i ville give et
lille fif om dette.

Hilsen Lasse

 
 
Alex Holst (08-12-2008)
Kommentar
Fra : Alex Holst


Dato : 08-12-08 14:41

Lasse T. Jensen <and0806@yahoo.dk> wrote:
> Jeg er i gang med sikkere et IIS,ASP,MSSQL site da det gentagene gange
> har vaere lagt ned pga. sql injection, losningen ma vaere indholds
> filtrering af form data fra malisius usere til serveren, sa KUN ascii
> karaktere kan overfores til serveren,

I skal kommunikere med databasen p? en m?de, s? brugerinput ikke ender
med at blive kommandoer, men i stedet ender i databasen. S? kan I v?re
komplet ligeglade med hvad folk h?lder ind i jeres system.

http://aspalliance.com/385

--
I prefer the dark of the night, after midnight and before four-thirty,
when it's more bare, more hollow. http://a.mongers.org/

OSS/FAQ for dk.edb.sikkerhed: http://sikkerhed-faq.dk/

Kent Friis (08-12-2008)
Kommentar
Fra : Kent Friis


Dato : 08-12-08 16:10

Den Mon, 08 Dec 2008 13:33:55 +0100 skrev Lasse T. Jensen:
> Hej List users
>
> Jeg er i gang med sikkere et IIS,ASP,MSSQL site da det gentagene gange
> har være lagt ned pga. sql injection, løsningen må være indholds
> filtrering af form data fra malisius usere til serveren, så KUN ascii
> karaktere kan overføres til serveren, sitet ser sådan ud:

Der bruges kun ascii til SQL-injection. At filtrere andet fra hjælper
ikke.

> Min makker og jeg er meget uenige om hvordan vi klare problemet
> bla. pga. der er brugere der ønsker at kunne bruge skråstreger mm. og
> der er brugere der allerede har underlige non ascii tegn i deres
> usernames,

Nemlig.

> jeg mener vi skal ligge global indholds filtrering på alt
> data der bliver send til serveren altså både tekst felter, emmne felter
> og bruger navne felter, og alle non ascii tegn skal filtreret væk så
> alle tekst felter bliver filtreret og kun ascii tegn er lovlige altså
> ingen stråstreger kun alfabetet i store og små bogstaver og minus streg
> kan lige tillades.

Nu skriver du ASP, er det 1900-tals ASP, eller er det ASP.NET?

Hvis det er .NET, så brug SqlParameter, den løser problemet.

Mvh
Kent
--
Hvis en sort kat går over vejen foran en bil, betyder det ulykke

.... for katten.

Lasse T. Jensen (17-12-2008)
Kommentar
Fra : Lasse T. Jensen


Dato : 17-12-08 17:25

Kent Friis skrev:
>
> Der bruges kun ascii til SQL-injection. At filtrere andet fra hjælper
> ikke.

>
> Mvh
> Kent

Kan ikke forstå hvordan man kan lave en injection med kun
abcdefghijklmnopqrstuvwxyzæøå
ABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ
@ og -
det er muligt at stored procedures er en mere "ren" løsning
men enlight me please

/Lasse

Andreas Plesner Jaco~ (17-12-2008)
Kommentar
Fra : Andreas Plesner Jaco~


Dato : 17-12-08 17:50

On 2008-12-17, Lasse T. Jensen <and0806@yahoo.dk> wrote:
>>
>> Der bruges kun ascii til SQL-injection. At filtrere andet fra hjælper
>> ikke.
>
> Kan ikke forstå hvordan man kan lave en injection med kun
> abcdefghijklmnopqrstuvwxyzæøå
> ABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ
> @ og -

ASCII indeholder meget mere, bl.a. ' og ;

> det er muligt at stored procedures er en mere "ren" løsning

Der blev talt om placeholders, ikke stored procedures.
Det er ikke bare en mere ren løsning, det er en kønnere og fuldstændig
korrekt løsning på problemet. Hvis du bruger denne metode hver gang får
du løst problemet en gang for alle og skal ikke til at tænke på hvilke
tegn du vil acceptere hver gang.

--
Andreas

Niels Baggesen (17-12-2008)
Kommentar
Fra : Niels Baggesen


Dato : 17-12-08 18:09

Andreas Plesner Jacobsen <apj@daarligstil.dk> wrote:
> On 2008-12-17, Lasse T. Jensen <and0806@yahoo.dk> wrote:
> > Kan ikke forstå hvordan man kan lave en injection med kun
> > abcdefghijklmnopqrstuvwxyzæøå
> > ABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ
> > @ og -

> ASCII indeholder meget mere, bl.a. ' og ;

men til gengæld ikke æøå

/Niels

--
Niels Baggesen -- @home -- Århus -- Denmark -- niels@baggesen.net
The purpose of computing is insight, not numbers -- R W Hamming

Andreas Plesner Jaco~ (17-12-2008)
Kommentar
Fra : Andreas Plesner Jaco~


Dato : 17-12-08 18:25

On 2008-12-17, Niels Baggesen <nba@users.sourceforge.net> wrote:

>> > Kan ikke forstå hvordan man kan lave en injection med kun
>> > abcdefghijklmnopqrstuvwxyzæøå
>> > ABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ
>> > @ og -
>
>> ASCII indeholder meget mere, bl.a. ' og ;
>
> men til gengæld ikke æøå

Korrekt, jeg havde ikke lige opdaget at de havde sneget sig ind.

--
Andreas

Kent Friis (17-12-2008)
Kommentar
Fra : Kent Friis


Dato : 17-12-08 19:41

Den Wed, 17 Dec 2008 18:08:30 +0100 skrev Niels Baggesen:
> Andreas Plesner Jacobsen <apj@daarligstil.dk> wrote:
>> On 2008-12-17, Lasse T. Jensen <and0806@yahoo.dk> wrote:
>> > Kan ikke forstå hvordan man kan lave en injection med kun
>> > abcdefghijklmnopqrstuvwxyzæøå
>> > ABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ
>> > @ og -
>
>> ASCII indeholder meget mere, bl.a. ' og ;
>
> men til gengæld ikke æøå

Dem får man til gengæld svært ved at injecte noget som helst med

Mvh
Kent
--
Hvis en sort kat går over vejen foran en bil, betyder det ulykke

.... for katten.

Stig Johansen (18-12-2008)
Kommentar
Fra : Stig Johansen


Dato : 18-12-08 16:16

Lasse T. Jensen wrote:

> Kan ikke forstå hvordan man kan lave en injection med kun
> abcdefghijklmnopqrstuvwxyzæøå
> ABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ
> @ og -

Nu er det et stærkt begrænset 'karaktersæt' du beskriver her, og der kan det
muligvis ikke lade sig gøre.

Men SQL injection er på ingen måde begrænset til 'form data'.
Det kan ligeså godt være ved en eks. ?page=12 med deraf følgende database
opslag.

Jeg har lavet en lille gennemgang af den SQL injection bølge der fes rundt
nogle gange i forsommeren - qden kan måske give en ide om hvordan det
foregår.
<http://w-o-p-r.dk/storm.monitor/SQL.injection/how.it.is.done.asp>

> det er muligt at stored procedures er en mere "ren" løsning
> men enlight me please

Som Andreas skriver skal du skelne mellem stored procedures og parameterized
queries/placeholders/prepared queries[1].

En stored procedure der ikke er 'parameterized' er lige så usikker som alt
andet.

[1] Vokabulariet afhænger af hvilket miljø man befinder sig i.

--
Med venlig hilsen
Stig Johansen

Stig Johansen (08-12-2008)
Kommentar
Fra : Stig Johansen


Dato : 08-12-08 21:54

Lasse T. Jensen wrote:

> Skulle der være nogen der måtte ha´ en mening om dette eller har
> praktisk erfaring med dette? ville jeg blive glad hvis i ville give et
> lille fif om dette.

Du skal bare bruge parameterized Queries, så er den ged barberet.
Der er ikke behov for filtrering, som nedsætter brugbarheden.
Hvis du ikke ved hvordan, så spørg ovre i
dk.edb.internet.webdesign.serverside.asp
så er der nok nogle der vil hjælpe.

--
Med venlig hilsen
Stig Johansen

Søg
Reklame
Statistik
Spørgsmål : 177577
Tips : 31968
Nyheder : 719565
Indlæg : 6409071
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste