Gå til hovedindhold
Version2 it for professionelle
Forsiden

Hovedmenu

  • It-nyheder
  • Blogs
  • It-job
  • It-firmaer
  • Whitepapers
  • Opret bruger
  • Log ind
Du kan logge ind med din e-mail-adresse
Der er forskel på store og små bogstaver i adgangskoden.
Glemt adgangskode?
Se kommentarer (9)
Emner Nethandel, Sikkerhedshuller, Hacking

Kan du kode en webshop sikkert? Her er fire farlige begynderfejl

TEMA: Hvis alle fulgte fire gode råd, ville danske netbutikker være et sikrere sted at handle, lyder det fra webudvikler.

Af Jesper Kildebogaard Onsdag, 23. februar 2011 - 11:11

Det kræver ikke meget af udviklerne at forbedre sikkerheden i danske webshops. Som regel er det begynderfejl, der nemt kan undgås, som giver sikkerhedsproblemer.

Sådan lyder det fra webudvikler Mads Kierulff fra firmaet Kraftvaerk, efter at Version2 mandag skrev om, hvordan halvdelen af de danske netbutikker har alvorlige sikkerhedshuller.

Læs også: Hver anden danske webshop har alvorlige sikkerhedsfejl

»Hvis man ikke er så erfaren som webudvikler og mest koncentrerer sig om at få det til at virke, kan man godt glemme at kode sikkert. Men det kræver ikke mange kræfter eller tid, hvis man bare tænker over det,« siger Mads Kierulff.

Han peger på fire typiske begynderfejl, der kan have store konsekvenser for sikkerheden:

  1. Mulighed for SQL-injection, fordi forespørgslerne ikke bliver renset for farlige input.

»SQL-injection-huller er den fejl, man oftest ser, men det er samtidigt den farligste. Hvis man ved, hvad man gør som hacker, kan man få fuld adgang og aflure hele databasen,« forklarer han.

Kuren mod SQL-injections er nok velkendt hos mange udviklere, men bliver altså stadig glemt på mange professionelle websider: En kontrol af alle forespørgsler til databasen, så uvelkomne tegn kan blive sorteret fra.

»Problemet med SQL-injections har man mest på webshops og andre steder, hvor man skal logge ind. Så kan en hacker nemlig få adgang til brugernes passwords, og hvis det er virkelig dårligt lavet, deres kreditkort-oplysninger,« siger webkonsulenten.

  1. Manglende HTTPS på betalingssiderne. Når betalingskortet skal frem, skal kommunikationen selvfølgelig været sikret med HTTPS, som gør det svært for andre at kigge med.

»I dag køber de fleste en løsning udefra, fordi sikkerhedskravene fra DIBS og andre betalingsudbydere bliver højere. Men hvis man selv flikker en løsning sammen til betalingsflowet, skal man huske at sikre det med HTTPS,« siger Mads Kierulff.

  1. Minus-varer i indkøbskurven. I mange webbutikker kan man justere antallet af en vare med plus- og minus-knapper. Men hvis antallet af varer kan blive negativt, med flittig brug af minus-knappen, kan kunden give sig selv rabat.

»Køber man ti save og minus fem hamre, kan beløbet, man skal betale blive meget lavt. Det er en klassisk begynderfejl ikke at sikre, at tallet skal være positivt,« siger Mads Kierulff, som dog vurderer, at alle de store webbutikker nu har fået stoppet det trick.

  1. Javascript i kommentarfeltet. Hvis ikke kommentarfelter og diskussionsfora spærrer for Javascript, kan en hacker overtage andre kunders login.

»Kan hackeren lægge et stykke Javascript ind i for eksempel en kommentar, som andre brugere så læser, vil koden blive eksekveret, så hackeren kan overtage andres sessioner og så logge på den bruger,« forklarer Mads Kierulff.

Køber man en færdig løsning til at håndtere et forum eller kommentarer, vil Javascript være forbudt, men hvis folk selv får kodet en løsning, kan det gå galt, vurderer han.

Rådene til udviklere bliver fulgt op med generelle tips til alle webshop-kunder:

Brug ikke samme password på mange forskellige websider, og pas på webshops, der gemmer dine kreditkort-oplysninger.

»Det er ikke tilladt i Danmark at gemme kreditkort-data, men i udenlandske webshops kan det ske, uden at du får noget at vide. Så kan du handle næste gang uden at indtaste det hele igen, men dataene kan også blive stjålet af hackere,« siger udvikleren.

Store, anerkendte firmaer som Amazon tør han dog godt selv overlade sine betalingsoplysninger til.

Artiklen er en del af Version2's tema om it-sikkerhed, der kører i uge 7 og 8.

Send Tweet
Udskriv

IT-job & karriere

  • Se alle it-job
  • Importer din kompetenceprofil fra LinkedIn
.Net Web Developer
Udgivet 8. maj 15.44
Java udviklere – backend – gerne med Oracle erfaring
Udgivet 16. jun 2011 14.38
Software Engineering Manager
Udgivet 2. maj 9.51
Microsoft Dynamics AX Technical Consultant/Developer
Udgivet 27. apr 10.39

Kommentarer (9)

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Lars Lundin 23. feb. 2011 - 11.57
 
HBGary: Et aktuelt skræmme-eksempel

Sikkerhedsfirmaet HBGary fulgte ikke adskillige af de nævnte råd, men var sårbare bl.a. pga. SQL-injektion og genbrug af væsentlige passwords.

Desværre (for dem selv) prøvede de at infiltrere internetaktivisterne Anonymous, som kvitterede med et cyber-angreb, der nærmest har lagt HBGary i ruiner.

Der er en meget god gennemgang af HBGarys fejl her:

http://arstechnica.com/tech-policy/news/2011/02/how-one-security-firm-tr...

Så også et (selv-proklameret) sikkerhedsfirma har problemer med at holde deres web-sted sikkert.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Markus Petersen 23. feb. 2011 - 11.58
 
Nyhedsværdi?

Har det virkelig en nyhedsværdi, at webudviklere skal passe på SQL-injections (og inputvalidering generelt), kommunikationskryptering og XSS? Jeg synes kun det er punkt 3 der er interessant i denne artikel, da punktet forholder sig specifikt til webshops.

På den anden side kan man vel ikke sprede budskabet nok. ;)

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Mads Olesen 23. feb. 2011 - 12.13
 
Kursus i Anvendt Sikkerhed på AAU

Hvis der er nogle studerende på Aalborg Universitet der gerne vil lære at kode sikkert er der en fri studieaktivitet i Anvendt Sikkerhed her i foråret, der bl.a. omhandler webapplikations-sikkerhed.

For mere information se
http://www.sict.aau.dk/digitalAssets/15/15889_poster_dat.pdf

Disclaimer: Jeg er en af kursusholderne.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Svenne Krap 23. feb. 2011 - 12.44
 
Parameter binding

Selvom nøje test af input-variabler er uundværelig, er den største sikkerhed mod sql-injections dog "parameter binding" i sql-kald.

Kort sagt, har man en place-holder (fx. $1) i selve sql'en og overfører paramterne ved siden af (out-of-band).

Derved ved sql-serveren at parametre er parametre og kører ingen kode. Vupti, sql-injections kan ikke lade sig gøre mere (men det kan fx. cross-site-scripting stadigvæk, så parameter binding er ikke en beskyttelse mod alt!)

Dette kræver naturligvis også at din sql-server (og dit client-library) begge understøtter det... I php med pgsql kan man f.eks. kalde pg_query_params()

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Esben Rasmussen 23. feb. 2011 - 12.49
 
Hvordan kan en dansk virksomhed så...
»Det er ikke tilladt i Danmark at gemme kreditkort-data, men i udenlandske webshops kan det ske, uden at du får noget at vide. Så kan du handle næste gang uden at indtaste det hele igen, men dataene kan også blive stjålet af hackere,« siger udvikleren.

Så vidt jeg husker, så tilbyder Just-eat en løsning, hvor de netop gemmer kreditkortoplysninger.

Gør Just-eat så noget ulovligt eller er det fordi det slet ikke (længere) er en dansk virksomhed eller hvordan hænger det sammen?

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Jens Beltofte Sørensen 23. feb. 2011 - 14.33
 
Re: Hvordan kan en dansk virksomhed så...

Så vidt jeg husker kræver det en PCI certificering til pænt mange penge, hvis man selv skal håndtere kreditkortoplysningerne. De færreste webshops i DK benytter dette, da det simpelthen er for dyrt ifm. gevinsten ved det.

Så vidt jeg ved benytter DIBS et almindeligt FlexWindow fra DIBS i deres betalingsflow, dvs. hosted på DIBS' servere, og hvor Justeat ikke har adgang til kortinformationerne.

Hvis man kigger på danske webshops, må problemet med adgang til kreditkortoplysningerne hvis man udnytter et SQL injection hul, være ganske små. Eftersom de færreste webshops har disse oplysninger liggende. ´

Ligeledes burde problemet med manglende HTTPS på betalingssiden heller ikke være et stort problem hos danske webshops. Og i så fald problemet eksisterer burde det rapporteres til Nets ASAP.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Daniel Gertsen 23. feb. 2011 - 17.00
 
Sanitering af Database inputs

http://xkcd.com/327/

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Henrik Kramshøjs billede
Henrik Kramshøj 24. feb. 2011 - 08.46
 
OWASP.dk

Husk også at der jævnligt er møder i OWASP regi i det danske "chapter", se mere på www.owasp.dk

og ja, det er desværre også relevant at gentage disse råd .... alt for mange steder i DK er det meget nemt at hacke sig ind med bare en browser (og måske Tamper Data add-on til Firefox).

PCI certificering koster godt nok en del, men der er nogle stykker i Danmark der har valgt at gøre dette.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Søren Sprogø 25. mar. 2011 - 09.30
 
Manglende HTTPS

Må ærligt indrømme, at jeg bestemt heller ikke ser "Manglende HTTPS på betalingssiden" som en "typisk begynderfejl". Faktisk er det over 5 år siden jeg har set en shop, der ikke har styr på det.

For det første kører de fleste shops igennem et vindue/en adresse hos en betalingsgateway.

Kun en håndfuld shops er store nok til at have det integreret, og betale regningen for det (på f.eks. PCI-godkendelse). Og her vil manglende HTTPS blive fanget dels af PBS, når de skal godkende løsningen, og dels når de skal have PCI-godkendelsen.

Hvis du vil have et typisk sikkerhedsproblem på webshops, så er det nærmere at de kan "snydes" via modificerede parametre på ordrekvitteringssiden. Eller ved ikke at kontrollere krypteringen på den såkaldte callback-side (eller slet ikke benytte callback-siden).

Desuden er det sjældent at webshops har debatforum og kommentarfelter. Og endnu mere sjældent at man kan lægge javascript i dem.

Desuden kan man spørge sig selv: Hvad sker der egentligt, hvis det lykkedes nogen at hijacke en session? Hvad kan man rent faktisk bruge det til? For du skal jo stadig indtaste navn, adresse og kreditkort-informationer for at gennemføre en ordre.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer

Tilføj kommentar

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Log ind herunder eller opret en bruger for at skrive kommentarer
Du kan logge ind med din e-mail-adresse
Der er forskel på store og små bogstaver i adgangskoden.
Glemt adgangskode?

Seneste nyt

Kynisk it-guru: »Internettet er basalt set noget lort«

Udgivet 24. maj 6.59Opdateret 24. maj 6.59

Meego-afløseren Tizen klar til at tage kampen op med Android

Udgivet 23. maj 16.01Opdateret 23. maj 16.01

Massiv logning af danskernes internetbrug - men politiet bruger kun IP-adressen

Udgivet 23. maj 15.22Opdateret 23. maj 15.22

198 IBM-medarbejdere fritstillet med øjeblikkelig virkning

Udgivet 23. maj 14.28Opdateret 23. maj 15.10

Mystisk Project X afsløret: Rent flashlager giver fænomenal IOPS-ydelse

Udgivet 23. maj 14.19Opdateret 23. maj 14.19

Flere it-nyheder »

Tilmeld dig Version2's it-nyhedsbrev og vind den nye iPad.

Whitepapers

Kick-start your master data management initiative

Affecto Denmark

Affecto Data Quality Assessment: Er din indsigt og beslutning baseret på validt data?

Affecto Denmark

Framework til datamigrering i SAP miljøer - spar op til 50% på dine Data Migration udgifter

Affecto Denmark

Få et Data Warehouse (DW) review hos Affecto

Affecto Denmark

Ressourcehåndtering

Projectplace
  • Flere whitepapers

Branchenyheder

Projectplace opnår ISO sikkerhedscertificering

Projectplace

Konica Minoltas stand på drupa 2012 slog besøgsrekord

Konica Minolta Business Solutions Denmark

Komplex it er blevet Brocade Premier Partner

Komplex IT

Øg din effektivitet og produktivitet med bizhub C654/C754

Konica Minolta Business Solutions Denmark

Brugerfjendtlige it-løsninger gør brugerne til en sikkerhedstrussel

Projectplace

Seneste debat

  1. Verdens mest brugte browser hedder Chrome

    9 comments.
    Last update 1 time 13 minutter
    Skrevet af Ove Andersen
  2. HTML5 – det nye sort?

    12 comments.
    Last update 6 timer 15 minutter
    Skrevet af Kristian Dalgård
  3. Netflix bruger sit eget API 42 milliarder gange - om måneden

    2 comments.
    Last update 6 timer 51 minutter
    Skrevet af Martin Jensen
  4. Dart: Dynamisk Statisk Programmering

    20 comments.
    Last update 8 timer 23 minutter
    Skrevet af Lars Bjerregaard
  5. Microsoft fjerner umoderne bling-effekter i Windows 8

    49 comments.
    Last update 8 timer 37 minutter
    Skrevet af Jesper Lund Stocholm
  6. NemID sender Mac-styresystem fra 2009 ud i kulden

    31 comments.
    Last update 8 timer 41 minutter
    Skrevet af Jan Peter Bagge
  7. Clojure-opfinder fupper publikum med falske kodefakta

    2 comments.
    Last update 8 timer 47 minutter
    Skrevet af Allan Ebdrup
  8. Skulle du aldrig lave en WP app?

    33 comments.
    Last update 8 timer 49 minutter
    Skrevet af Lars Bjerregaard

Mere debat »

It-virksomheder

Incube
|
Zap Technology
|
Stay Secure Denmark
|
Queue-IT
|
Siemens
|
Motus
|
Pekke
|
Netop Business Solutions
|
Invokers
|
Serious Games Interactive
|
ITX
|
Visma Sirius A/S
 

Information

  • Kontakt redaktionen
  • Job- og annoncesalg
  • Teknisk support
  • Om Version2
  • Brugerbetingelser
  • Privatlivspolitik

Aktuelle emner

  • Agil udvikling
  • Android
  • Bruttolønsordning
  • Business Intelligence
  • Cloud computing
  • Download Windows 8
  • HTML5
  • Harddisk-priser
  • IE9
  • Intranet
  • It-sikkerhed
  • Kindle Fire
  • Multimedieskat
  • NemID
  • OS X Mountain Lion
  • Open source CMS
  • Projektledelse
  • Scrum
  • Sharepoint intranet
  • Storage
  • Ubuntu 11.10
  • Virtualisering
  • Windows 8
  • Windows Phone 7
  • iOS 5
  • iPhone 4S

Tjenester

  • Android-app
  • iPhone-app
  • RSS-feeds
Følg @version2dk
Tilmeld dig Version2's it-nyhedsbrev og vind den nye iPad.

Version2 udgives af

  • Mediehuset Ingeniøren A/S work Skelbækgade 4 1717 København V
  • Tlf. work 33265300