Mid Sweden University

miun.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
SQL Injection Vulnerabilities in Open-Source Projects
Mid Sweden University, Faculty of Science, Technology and Media, Department of Communication, Quality Management, and Information Systems (2023-).
Mid Sweden University, Faculty of Science, Technology and Media, Department of Communication, Quality Management, and Information Systems (2023-).
2024 (English)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
Abstract [en]

SQL injection attacks have been a problem since the early 2000s. Even though the issue is well known today, SQL injection vulnerabilities remain to be one of the most common security flaws. Our study looks at open source-projects written in Java and Python to examine the current state of SQL injection vulnerabilities. We take a deeper look into the vulnerabilities' code patterns and discuss suitable prevention methods.The open-source projects were mined from Github. The projects that contained a connection to a relational database were further analyzed with static analysis to find vulnerabilities. A subset of projects was picked out for deeper analysis of the source code. Among 167,644 Java projects that met the selection criteria, 24,416 were identified to have a connection to a relational database. The corresponding figures for Python were 294,637 and 20,994. Notably, concatenation is more prevalent in Java, whereas prepared statements are favored in Python. Additionally, the analysis revealed that the Python projects tended to have more recent updates and a higher number of contributors compared to the Java projects. Moreover, projects employing both prepared statements and concatenation were observed to be larger in size compared to those using only one of these methods or relying on hardcoded queries. With legacy projects and concatenation being more common in Java, it is suggested that Python projects better follow best practices when it comes to SQL injection. Although indications were found that the overall knowledge of SQL injection has increased since 2019, the use of identifier concatenation still is prevalent.

Place, publisher, year, edition, pages
2024. , p. 14
Keywords [en]
Open-Source, SQL Injection, Java, and Python
National Category
Software Engineering
Identifiers
URN: urn:nbn:se:miun:diva-51809OAI: oai:DiVA.org:miun-51809DiVA, id: diva2:1879376
Subject / course
Computer Engineering DT1
Educational program
Software Engineering TPVAG 120/180 higher education credits
Supervisors
Examiners
Available from: 2024-06-28 Created: 2024-06-28 Last updated: 2024-06-28Bibliographically approved

Open Access in DiVA

fulltext(1196 kB)147 downloads
File information
File name FULLTEXT01.pdfFile size 1196 kBChecksum SHA-512
b89fae8278a0f23e601a9b0c7d2ef8927c9e912ccebee83d712a07436a35ccf447b42f0ac3ec1fd5d11558149ac9cddd4f3e91d84d1fadd02eaae3c006b63d6b
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Brehmer, AronTeräs, Mina
By organisation
Department of Communication, Quality Management, and Information Systems (2023-)
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 147 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 449 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf