Python er nu en top-tre programmeringssprog – og Julia er på fremmarch
MIT-oprettet Julia programmeringssprog fortsætter sin opstigning i udvikler popularitet.
Fra top til bund, teknologi er fyldt med sikkerhedsmæssige fejl. På det laveste niveau, vi har hardware fejl som Intel ‘ s Nedsmeltning og Spectre fejl. Lige over dem, vi har programmeringssprog sikkerhedshuller, og en dreng, har vi en masse af dem!
WhiteSource, en open-source-sikkerhed selskab, som for nylig lavede en undersøgelse af open source sikkerhedshuller i de syv mest udbredte sprog i løbet af det seneste årti. For at finde de fejl, som virksomheden brugte det sprog sikkerheds-database. Denne indeholder oplysninger om open source-sårbarheder fra flere kilder såsom National Vulnerability Database (NVD), sikkerhedsbulletiner, GitHub udstede trackers, og open source-projekter udstede trackers.
Her er, hvad virksomheden fundet: Disse sprog er C, Java, JavaScript, Python, Ruby, PHP og C++. Der er ingen overraskelser.
Der er heller ikke nogen overraskelse at der sprog havde den mest sikkerhed bugs. Det er C, med en bred margin. Næsten 50 procent af alle rapporterede sårbarheder var i C.
Som Kees “Sag” Cook, Google Linux-kernen sikkerhed ingeniør, sagde for nylig: “C er et fancy assembler. Det er næsten maskinkode.” Hertil kommer, at “C kommer med nogle bekymrende bagage, udefineret adfærd, og andre svagheder, der fører til sikkerhedshuller og sårbar infrastruktur.”
Men, WhiteSource hævdet, at “Dette er ikke til at sige, at C er mindre sikker end de andre sprog. Det høje antal af open source sårbarheder i C kan forklares med flere faktorer. For startere, C har været i brug i længere tid end nogen af de andre sprog, vi undersøgte og har det højeste antal skrevet kode. Det er også et af de sprog, bag store infrastrukturprojekter som OpenSSL-og Linux-kernen. Denne kombination af volumen og den centrale placering forklarer det høje antal af kendte open-source sårbarheder i C.”
De har en pointe. Men, der er programmeret og kæmpede med C i årtier nu, det virkelig er alt for nemt at gøre frygtelige sikkerhed brølere i C. For eksempel C indeholder en stor del af udefineret adfærd, der efterlader alle former for ubehagelige muligheder åbne.
C++, men har den “ære” i at have de mest sjældne og meget alvorlige sårbarheder i de seneste fem år. Buffer fejl, der længe har plaget C, er nu også ved at blive opdaget, ofte i C++.

Tallene fortæller ikke hele historien, når det kommer til, hvilket sprog der er mindst eller mest sikker.
(Billede: WhiteSource)
×
language-security-bugs.jpg
Det sagt, JavaScript, måske den mest populære sprog, er også den eneste, der så en “kontinuerlig stigning i antallet af sårbarheder i de seneste 10 år.”
Før du gør alt for meget sjov af JavaScript, og de resultater, WhiteSource påpeger, er vildledende. De fleste af JavaScript er Fælles Svaghed Tælling (CWE)s Vej Traversal-og kryptografiske sikkerhed huller fra JavaScript-pakker, som er knap anvendes, vedligeholdes eller støttet.
Så, hvorfor er de — og andre sproglige problemer-viser op? Nye automatiserede programmer, såsom Kildekode Analyse Værktøjer, er lokalisering af sårbarheder, som ellers ville have været overset.
Et sprog, som er blevet vist godt på sikkerhedshuller, er-trommehvirvel, bedes — Python. Ja, gode gamle-ofte lavet sjov — Python.
Næsten alle sprog dele nogle CWEs. To CWEs enerådende, og fremhævede blandt de tre mest almindelige 70 procent af sprog: Cross-Site-Scripting (XSS), alias CWE-79 og Validering af Input, ellers kendt som CWE-20.
Andre CWEs at vise en masse, er: Oplysninger Lækage/ Videregivelse (CWE-200), Sti-Traversal (CWE-22), og CWE-264 Tilladelser, Privilegier og Adgang til Kontrol. Den sidste er ved at blive fortrængt for nylig med dens mere konkrete, nære slægtning — Forkert Access Control (CWE-284).
Men er C virkelig det værre og Python de bedste? WhiteSource mener, at der er alt for simpel en konklusion: “Mens spillet af ‘min programmeringssprog er mere sikker end din’ er helt sikkert en sjov måde at fordrive tiden … finde svaret vil sandsynligvis ikke hjælpe dig med at skabe det mest innovative eller sikker software derude.”
Nej, i stedet bør du bruge din tid på “at bo på toppen af kendte open-source sårbarheder og forstå de stærke og svage punkter i programmering sprog, du og dit team bruger.”
I den sidste ende er sikkerhed ikke om sprog, men hvordan du bruger dem.
Relaterede Historier:
Microsoft: 70 procent af alle sikkerhed bugs er hukommelse sikkerhed issuesGoogle åbne kilder projekt for sandboxing C/C++ – biblioteker på LinuxGitHub: Vores afhængighed scan har fundet fire millioner sikkerhedshuller i offentlige genkøbsforretninger
Relaterede Emner:
Open Source
Sikkerhed-TV
Data Management
CXO
Datacentre