En anledning till säkerhetsproblem är programmerare som inte tänker till ordentligt. Men ny forskning visar att det kanske inte spelar så stor roll om en programmerare är duktig på säkerhet och anstränger sig för att skriva säker kod. Det visar sig nämligen att det finns säkerhetsbrister i många av de programmeringsspråk som används i dag, skriver The Register.

IOActives säkerhetskonsult Fernando Arnaboldi presenterade en rapport på konferensen Black Hat Europe i förra veckan som beskriver det här. Hans grundtes är att språket i sig kan innebära att kod fungerar på sätt som programmerare inte kan förutsäga. Bland oväntade, och oönskade, beteenden märks säkerhetshål.

Läs också: Snillen spekulerar: då skriver maskiner mer kod än människor

Arnaboldi har hittat buggar i till exempel Javascript, Perl, PHP, Python och Ruby. Bland exempel märks en funktion i Jruby som innebär att fjärrkod laddas och körs och att oönskad information visas i felmeddelanden i Javascriptplattformen Node. Det finns alltså brister som kan utnyttjas av illasinnade hackare.

För att hitta de här problemen skapade Arnaboldi ett verktyg för att köra kod med olika indata, med olika versioner av språkmiljöerna, på olika operativsystem. Han testade till exempel 450 olika funktioner i Javascript och hela 3 814 i Python.

Att språk och plattformar har inbyggda säkerhetsbrister är ingen nyhet. Men frågan är dels om man har omfattningen klar för sig, dels om programmerare i allmänhet tänker på det här. Den nya forskningen kanske kan bidra till ett ökat säkerhetsmedvetande.

Läs också: Här är programmerartabbarna som ger osäker kod

Idealt bör så många säkerhetshål som möjligt hittas i tester, oberoende av vad som orsakat dem. Men det borde vara enklare att skriva bra tester om man är medveten om så många källor till säkerhetshål som möjligt.