Python Crypto Misuses in the Wild

09/02/2021
by   Anna-Katharina Wickert, et al.
0

Background: Previous studies have shown that up to 99.59 using crypto APIs misuse the API at least once. However, these studies have been conducted on Java and C, while empirical studies for other languages are missing. For example, a controlled user study with crypto tasks in Python has shown that 68.5 crypto task. Aims: To understand if this observation holds for real-world code, we conducted a study of crypto misuses in Python. Method: We developed a static analysis tool that covers common misuses of 5 different Python crypto APIs. With this analysis, we analyzed 895 popular Python projects from GitHub and 51 MicroPython projects for embedded devices. Further, we compared our results with the findings of previous studies. Results: Our analysis reveals that 52.26 libraries API design helps developers from misusing crypto functions, which were much more common in studies conducted with Java and C code. Conclusion: We conclude that we can see a positive impact of the good API design on crypto misuses for Python applications. Further, our analysis of MicroPython projects reveals the importance of hybrid analyses.

READ FULL TEXT

page 4

page 5

research
03/20/2023

Method Chaining Redux: An Empirical Study of Method Chaining in Java, Kotlin, and Python

There are possible benefits and drawbacks to chaining methods together, ...
research
03/10/2021

Blindspots in Python and Java APIs Result in Vulnerable Code

Blindspots in APIs can cause software engineers to introduce vulnerabili...
research
03/23/2021

Revisiting Dockerfiles in Open Source Software Over Time

Docker is becoming ubiquitous with containerization for developing and d...
research
07/30/2019

What should I document? A preliminary systematic mapping study into API documentation knowledge

Background: Good API documentation facilities the development process, i...
research
02/09/2021

PyART: Python API Recommendation in Real-Time

API recommendation in real-time is challenging for dynamic languages lik...
research
01/03/2020

CryptoExplorer: An Interactive Web Platform Supporting Secure Use of Cryptography APIs

Research has shown that cryptographic APIs are hard to use. Consequently...
research
11/10/2020

Characterization and Automatic Update of Deprecated Machine-Learning API Usages

Due to the rise of AI applications, machine learning libraries have beco...

Please sign up or login with your details

Forgot password? Click here to reset