Python is een top-drie programmeer taal – en Julia is op de stijging
De MIT-gemaakt Julia programmeertaal blijft stijgen in de ontwikkelaar populariteit.
Van boven naar beneden, de technologie is bezaaid met de veiligheid fouten. Op het laagste niveau, we hebben de hardware fouten, zoals Intel ‘ s Meltdown en Spectre bugs. Net boven die we hebben programmeertaal gaten in de beveiliging, en de jongen, doen we hebben veel van hen!
WhiteSource, een open-source security bedrijf, deed onlangs een studie van open source beveiligingsproblemen in de zeven meest gebruikte talen in het afgelopen decennium. Om de bugs, het bedrijf gebruikt deze taal security database. Deze bevat gegevens over open-source kwetsbaarheden uit meerdere bronnen, zoals de National Vulnerability Database (NVD), beveiligingsadviezen, GitHub issue trackers, en open-source projecten issue trackers.
Hier is wat het bedrijf: Deze talen zijn C, Java, JavaScript, Python, Ruby, PHP en C++. Er zijn geen verrassingen.
Er is ook geen verrassing, want die taal had de meeste security bugs. Dat is de C, met een ruime marge. Bijna 50 procent van alle gerapporteerde beveiligingsproblemen waren in C.
Als Kees “Geval” Cook, Google-Linux kernel security engineer, zei onlangs: “C is een mooie assembler. Het is bijna machine code.” Bovendien, “C komt met een aantal zorgelijke bagage, ongedefinieerd gedrag, en andere zwakheden die leiden tot veiligheidsproblemen en kwetsbare infrastructuur.”
Maar, WhiteSource betoogd, “Dit is niet om te zeggen dat C is minder veilig dan andere talen. Het hoge aantal open source kwetsbaarheden in C kan worden verklaard door een aantal factoren. Voor starters, C is in gebruik voor meer dan een van de andere talen die we onderzocht en heeft het hoogste volume van de geschreven code. Het is ook een van de talen achter grote infrastructuur zoals OpenSSL en de Linux kernel. Door deze winnende combinatie van volume en centraliteit verklaart het hoge aantal bekende open-source kwetsbaarheden in C.”
Ze hebben een punt. Maar, het hebben geprogrammeerd en vochten met C voor tientallen jaren, het is echt veel te makkelijk te maken een verschrikkelijke veiligheid blunders in C. bijvoorbeeld, C bevat een groot deel van ongedefinieerd gedrag, die laat allerlei vervelende mogelijkheden open.
C++, echter, heeft de “eer” van het hebben van de meest high-ernst van de kwetsbaarheden in de afgelopen vijf jaar. Buffer fouten, die al lang geplaagd C, er wordt nu ook ontdekt vaak in C++.

De nummers niet vertellen het hele verhaal als het gaat om de taal die het minst of het meest, veilig.
(Afbeelding: WhiteSource)
×
language-security-bugs.jpg
Dat gezegd hebbende, JavaScript, misschien wel de meest populaire taal, is ook de enige die zag een “continue stijging in het aantal kwetsbaarheden in de afgelopen 10 jaar.”
Alvorens te veel plezier van JavaScript, de resultaten, WhiteSource punten uit, zijn misleidend. De meeste van JavaScript ‘ s algemene Zwakte Opsomming (CWE)s Path Traversal en crypto gaten in de beveiliging van JavaScript pakketten, die zijn nauwelijks gebruikt, onderhouden of ondersteund.
Dus, waarom zijn ze-en andere taalproblemen — opdagen? Nieuwe geautomatiseerde programma ‘ s, zoals de Source Code Analyse Tools, zijn het spotten van kwetsbaarheden, die anders zou zijn geweest over het hoofd gezien.
De ene taal, die is het resultaat goed op gaten in de beveiliging, is-tromgeroffel, gelieve — Python. Ja, die goede oude — vaak lol van — Python.
Bijna alle talen is een deel CWEs. Twee CWEs hoogtij vierde en aanbevolen bij de drie meest voorkomende 70 procent van de talen: Cross-Site-Scripting (XSS), aka CWE-79 en Input Validatie, ook wel bekend als CWE-20.
Andere CWEs die veel zijn: Informatie Lek/ Openbaarmaking (CWE-200), Path Traversal (CWE-22), en de CWE-264 Rechten, Voorrechten, en Toegang Controle. De laatste wordt verplaatst onlangs met de meer specifieke, nauw verwant — Oneigenlijk Access Control (CWE-284).
Maar C is echt de slechtste en Python het beste? WhiteSource vindt dat veel te eenvoudige conclusie: “Terwijl het spel van ‘mijn programmeertaal is veiliger dan de jouwe’ is zeker een leuke manier om tijd te doden … het vinden van het antwoord zal waarschijnlijk niet helpen u bij het maken van de meest innovatieve en veilige software.”
Nee, in plaats daarvan moet je je tijd besteden aan “het verblijf op de top van de bekende open-source kwetsbaarheden en begrijpen van de sterke en zwakke punten in de programmeertalen die u en uw team gebruik maken.”
In het einde, is beveiliging niet over de talen, maar hoe je ze kunt gebruiken.
Verwante Artikelen:
Microsoft: 70 procent van alle security bugs zijn geheugen veiligheid issuesGoogle open-source project voor ‘sandboxing’ – C/C++ – bibliotheken op LinuxGitHub: Onze afhankelijkheid scan heeft gevonden vier miljoen beveiligingsfouten in de openbare repo ‘ s
Verwante Onderwerpen:
Open Source
Beveiliging TV
Data Management
CXO
Datacenters