Arkiv

Inlägg taggade ‘javascirpt’

Intressant funktion från PTS brister i design

oktober 4th, 2009 Inga kommentarer

I dagarna lanserade PTS en lite intressant funktion där man med ett vanligt svensk telefonnummer kan ta reda på vilken operatör som numret är kopplat till. Vill ni testa själva kan ni gå in på följande adress:

PTS e-tjänster – Sök operatör

Rätt meningslös men ganska rolig funktion, men från en webbutvecklarens synvinkel har PTS gjort ett dåligt jobb när det kommer till att göra den användarvänlig. Visst, ett sökfält där man fyller i först ett riktnummer och sedan resten av telefonnumret är både logisk och lätt att förstå. Problemet ligger istället i hur man fyller i riktnummer. Det går inte att slå in riktnummer med tangentbordet utan måste välja utifrån en lista på hela 300 olika riktnummer! Även om de står i nummerordning så är det ortiligt omständigt och jobbigt att hitta det riktnummer som man vill åt. Den tid det dat att leta upp nummret för en biblotikarie kan jag slå vad om vilken datoranvändare som helst skulle kunna göra det snabbare om det var ett textfält istället så att man kunde slå in nummret med tangentbordet istället, jag menar hur lång tid tar det att slå in mellan 2-5 siffror?

Så frågan är om varför har de valt denna design? Det vet bara egentligen de utvecklare som gjorde tjänsten, men jag tror är att det är ett medvetet val från deras sida för att förhindra användare att missbruka tjänsten. Är det något som har ”kulhets-faktor” och är lätt att använda kan man räkna med att det blir en missbruk av tjänsten. Eller så är det helt enkelt så att detta är helt enkelt ett pinsamt misstag eller eventuellt rör sig om inkompetenta utvecklare. Att det är en teknisk begränsning har jag svårt att tro eftersom att man måste ha kontroller på serversidan som kontrollerar all indata från en användare innan den skickas vidare. Detta skulle man i och för sig kunna lösa med Javascript, men problemet är att ett sådant skydd är otroligt lätt att komma runt. Det räcker att gå in i webbläsarens inställningar och avaktivera Javascript och du är förbi den spärren. Att använda lista för riktnummer är lite skärare eftersom att det finns inte (vad jag känner till) en inställning som motsvarar inkaktivering av Javascipt , men det betyder inte att det även här går att ta sig runt även denna spärr. Har man Firefox och installerar plug-inet Firebug eller Web Developer så kan du ändra HTML-koden direkt i webbläsaren och byta ut listan mot en input-tagg och nu kan du skriva in alla möjliga värden.

Men leker vi med tanken att det är det inte finns någon server-side skydd och förlitar sig enbart på Html-kod och Javascript-kod för att se till att rätt data kommer in, då ligger de risigt till. Då är de öppna för alla sorts möjliga attacker och det är till och med möjligt att få hela databasen utskriven på sidan eller ta sig in i ytterligare system. Men om detta är fallet (vilket förtås det inte är tack och lov), då har vi göra med utvecklare som borde få sparken och bli bannlysta från branschen tills dess de har lärt sig hur man gör en applikation där säkerhet alltid kommer i första rummet.