Systematic Review: Analysis of Coding Vulnerabilities across Languages
- 1 Stevenson Ranch, USA
Abstract
The boom of coding languages in the 1950s revolutionized how our digital w orld was construed and accessed. The languages invented then, including Fort ran, are still in use today due to their versatility and ability to underpin a large majority of the older portions of our digital world and applications. Fortran, or Form ula Translation, was a programming language implemented by IBM that shortened the apparatus of coding and the efficacy of the language syntax. Fortran marked the beginning of a new era of efficient programming by reducing t he number of statements needed to operate a machine several - fold. Since then, d ozens more languages have come into regular practice and have been increas ingly diversified over the years. Some modern languages include Python, Java, JavaScript, C, C++, and PHP. These languages significantly improved efficiency and also have a broad range of uses. Python is mainly used for website/software development, data analysis, task automation, image processing, and graphic design applications. On the other hand, Java is primarily used as a client-side programming language. Expanding the coding languages allowed for increasing accessibility but also opened up applications to pertinent security issues. These security issues have varied by prevalence and language. Previous research has narrowed its focus on individual languages, failing to evaluate the security. This research paper investigates the severity and frequency of coding vulnerabilities comparatively across different languages and contextualizes their uses in a systematic literature review.
- Petrosyan, A. (2023) Number of Data Breaches and Victims U.S. 2022. Statista. https://www.statista.com/statistics/273550/data-breaches-recorded-in-the-united-states-by-number-of-breaches-and-records-exposed/
- Olsen, K.A (2010) Two Cases of Bad Web Usability: Banking and Employee Self Service, UniTech 2010, Oslo, Tapir Forlag (19.05). http://medialt.no/pub/uikt/u2010/035-Olsen/index.html
- Caballero, C. (2019) Software Architecture: Therac-25 the Killer Radiation Machine. https://www.carloscaballero.io/software-architecture-therac-25/
- Ladkin, P.B. (1998) The Ariane 5 Accident: A Programming Problem? http://www.rvs.uni-bielefeld.de/publications/Incidents/DOCS/Research/Rvs/Misc/Additional/Reports/ariane.html
- Khandelwal, S. (2015) These Top 10 Programming Languages Have Most Vulnerable Apps on the Internet. https://thehackernews.com/2015/12/programming-language-security.html
- (2022) TIOBE Index. https://www.tiobe.com/tiobe-index/
- Mend (2022) Most Secure Programming Languages. https://www.mend.io/most-secure-programming-languages/
- Bless, G. (2021) Most Common Python Vulnerabilities and How To Avoid Them. https://infosecwriteups.com/most-common-python-vulnerabilities-and-how-to-avoid-them-5bbd22e2c360
- (2022) Stack Overflow Developer Survey 2021. https://insights.stackoverflow.com/survey/2021#most-popular-technologies-language
- Hollander, M. (2020) Most Common Security Vulnerabilities Using JavaScript. Secure Coding. https://www.securecoding.com/blog/most-common-security-vulnerabilities-using-javascript/
- Oracle (2022) Moved by Java Timeline. https://www.oracle.com/java/moved-by-java/timeline/
- DZoneRefcardz (2022) Java Application Vulnerabilities. https://dzone.com/refcardz/java-application-vulnerabilities#section-3
- Rahaman, S., et al. (2019) CryptoGuard: High Precision Detection of Cryptographic Vulnerabilities in Massive-Sized Java Projects. Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, London, 11-15 November 2019, 2455-2472. https://doi.org/10.1145/3319535.3345659
- HPE: Hewlett Packard Enterprise (2022) Making C Less Dangerous. https://www.hpe.com/us/en/insights/articles/making-c-less-dangerous-1808.html
- Parasoft (2020) Battling Buffer Overflows & Other Memory Management Bugs. https://www.parasoft.com/blog/battling-buffer-overflows-other-memory-management-bugs/