VAITP Dataset

Dataset Statistics
Search for CVE
#
CVE
Vulnerability
ODC
Category
Subcategory
Accessibility Scope
Details
Total vulnerabilities in the dataset (not showing ignored and non-python related vulnerabilties): 1438
401
CVE-2023-40015
Vyper compiler's right-to-left evaluation causes side effect vulnerabilities

Vyper is a Pythonic Smart Contract Language. For the following (probably non-exhaustive) list of expressions, the compiler evaluates the arguments from right to left instead of left to right. `unsafe_add, unsafe_sub, unsafe_mul, unsafe_div, pow_mod256, |, &, ^ (bitwise operators), bitwise_or (deprecated), bitwise_and (deprecated), bitwise_xor (deprecated), raw_call, <, >, <=, >=, ==, !=, in, not in (when lhs and rhs are enums)`. This behaviour becomes a problem when the evaluation of one of the arguments produces side effects that other arguments depend on. The following expressions can produce side-effect: state modifying external call , state modifying internal call, `raw_call`, `pop()` when used on a Dynamic Array stored in the storage, `create_minimal_proxy_to`, `create_copy_of`, `create_from_blueprint`. This issue has not yet been patched. Users are advised to make sure that the arguments of the expression do not produce side effects or, if one does, that no other argument is dependent on those side effects.

Function
Input Validation and Sanitization
Insecure Parsing or Deserialization
Remote
394
CVE-2023-31543
Dependency confusion in pipreqs v0.3.0 to v0.4.11 allows arbitrary code execution via crafted PyPI package upload

A dependency confusion in pipreqs v0.3.0 to v0.4.11 allows attackers to execute arbitrary code via uploading a crafted PyPI package to the chosen repository server.

Function
Cryptographic
Unencrypted communication
Remote
393
CVE-2020-25658
Python-rsa vulnerable to Bleichenbacher timing attack: RSA decryption can be partially exploited by attackers

It was found that python-rsa is vulnerable to Bleichenbacher timing attacks. An attacker can use this flaw via the RSA decryption API to decrypt parts of the cipher text encrypted with RSA.

Timing/Serialization
Cryptographic
Cryptographic Implementation Error
Remote
390
CVE-2019-17526
SageMath Sage Cell Server through 2019-10-05 allowed Python code injection for arbitrary OS command execution

** DISPUTED ** An issue was discovered in SageMath Sage Cell Server through 2019-10-05. Python Code Injection can occur in the context of an internet facing web application. Malicious actors can execute arbitrary commands on the underlying operating system, as demonstrated by an __import__('os').popen('whoami').read() line. NOTE: the vendor's position is that the product is "vulnerable by design" and the current behavior will be retained.

Function
Input Validation and Sanitization
Command Injection
Remote
388
CVE-2008-4108
Local users can overwrite files using symlink attack in Python 2.4.5 via temporary file (tmp$RANDOM.tmp)

Tools/faqwiz/move-faqwiz.sh (aka the generic FAQ wizard moving tool) in Python 2.4.5 might allow local users to overwrite arbitrary files via a symlink attack on a tmp$RANDOM.tmp temporary file. NOTE: there may not be common usage scenarios in which tmp$RANDOM.tmp is located in an untrusted directory.

Function
Input Validation and Sanitization
Path Traversal
Local
387
CVE-2023-26145
Command Injection in pydash < 6.0.0 allows arbitrary code execution via manipulated arguments

This affects versions of the package pydash before 6.0.0. A number of pydash methods such as pydash.objects.invoke() and pydash.collections.invoke_map() accept dotted paths (Deep Path Strings) to target a nested Python object, relative to the original source object. These paths can be used to target internal class attributes and dict items, to retrieve, modify or invoke nested Python objects. The pydash.objects.invoke() method is vulnerable to Command Injection when the following prerequisites are satisfied: 1) The source object (argument 1) is not a built-in object such as list/dict (otherwise, the __init__.__globals__ path is not accessible). 2) The attacker has control over argument 2 (the path string) and argument 3 (the argument to pass to the invoked method). The pydash.collections.invoke_map() method is also vulnerable, but is harder to exploit as the attacker does not have direct control over the argument to be passed to the invoked function.

Function
Input Validation and Sanitization
Command Injection
Remote
386
CVE-2021-42771
Directory traversal in Babel (before 2.9.1) allows remote code execution via arbitrary locale .dat files

Babel.Locale in Babel before 2.9.1 allows attackers to load arbitrary locale .dat files (containing serialized Python objects) via directory traversal, leading to code execution.

Function
Input Validation and Sanitization
Insecure Parsing or Deserialization
Remote
382
CVE-2008-4126
PyDNS (python-dns) <2.3.1-5 in Debian: DNS spoofing, no random source ports, incomplete fix

PyDNS (aka python-dns) before 2.3.1-5 in Debian GNU/Linux does not use random source ports for DNS requests and does not use random transaction IDs for DNS retries, which makes it easier for remote attackers to spoof DNS responses, a different vulnerability than CVE-2008-1447. NOTE: this vulnerability exists because of an incomplete fix for CVE-2008-4099.

Function
Cryptographic
Inadequate random number generation
Remote
380
CVE-2013-2132
Pymongo < 2.5.2 Denial of Service via invalid DBRef, NULL pointer dereference

bson/_cbsonmodule.c in the mongo-python-driver (aka. pymongo) before 2.5.2, as used in MongoDB, allows context-dependent attackers to cause a denial of service (NULL pointer dereference and crash) via vectors related to decoding of an "invalid DBRef."

Function
Input Validation and Sanitization
Insecure Parsing or Deserialization
Remote
378
CVE-2013-2013
Local users can access sensitive data via the --password argument in python-keystoneclient before 0.2.4

The user-password-update command in python-keystoneclient before 0.2.4 accepts the new password in the --password argument, which allows local users to obtain sensitive information by listing the process.

Function
Input Validation and Sanitization
Insecure Parsing or Deserialization
Local
Introducing the "VAITP dataset": a specialized repository of Python vulnerabilities and patches, meticulously compiled for the use of the security research community. As Python's prominence grows, understanding and addressing potential security vulnerabilities become crucial. Crafted by and for the cybersecurity community, this dataset offers a valuable resource for researchers, analysts, and developers to analyze and mitigate the security risks associated with Python. Through the comprehensive exploration of vulnerabilities and corresponding patches, the VAITP dataset fosters a safer and more resilient Python ecosystem, encouraging collaborative advancements in programming security.

The supreme art of war is to subdue the enemy without fighting.

Sun Tzu – “The Art of War”

:: Shaping the future through research and ingenuity ::