5018470 matches found
PYSEC-2026-3810 Banks: Path traversal in `DirectoryPromptRegistry.set()` allows arbitrary file write outside the registry root
Summary DirectoryPromptRegistry.set interpolates the attacker-controllable Prompt.name into a Path expression with no canonicalization. An application that derives the prompt name from request data lets a caller write attacker-controlled bytes outside the configured registry directory. Details...
PYSEC-2026-3913 pypdf: Possible infinite loop for TreeObject.insert_child
Impact An attacker who uses this vulnerability can craft a PDF which leads to an infinite loop. This requires a usually writing code path where TreeObject.insertchild is involved. Patches This has been fixed in pypdf==6.16.0. Workarounds If you cannot upgrade yet, consider applying the changes fr...
PYSEC-2026-3863 Mistune: Denial of Service — RecursionError via Excessive Emphasis Markers in Markdown
Summary Mistune v3.3.2 is vulnerable to a Denial of Service DoS attack via uncontrolled recursion in the HTML rendering of deeply-nested emphasis tokens. By submitting Markdown containing approximately 1,000 consecutive asterisk characters, an attacker causes the Python process to crash with...
pypdf: Inefficient handling of non-whitespace inputs in read_until_whitespace
ImpactAn attacker who uses this vulnerability can craft a PDF which leads to long runtimes. This requires a call to readuntilwhitespace with an input which does not have whitespace for a long time. PatchesThis has been fixed in pypdf==6.15.0. WorkaroundsIf you cannot upgrade yet, consider applyin...
pypdf: Possible long runtimes/large memory usage when extracting XForm objects
ImpactAn attacker who uses this vulnerability can craft a PDF which leads to long runtimes and large memory consumption. This requires extracting the text of a page with lots of XForm objects, where some of them might be re-used. PatchesThis has been fixed in pypdf==6.16.1. WorkaroundsIf you cann...
NLTK: Quadratic CPU Exhaustion in `XMLCorpusView._read_xml_fragment()`
SummaryXMLCorpusView.readxmlfragment reads a corpus file in 1 KiB blocks, appendingeach block to a growing fragment string, then calls VALIDXMLRE.matchfragmenton the full accumulated buffer every iteration. Because each iteration rescans theentire accumulated fragment, the total amount of work...
Django REST framework: Potential bypass of Django `DATA_UPLOAD_MAX_MEMORY_SIZE` when parsing oversized JSON and urlencoded request bodies via DRF `request.data`
SummaryWhile investigating Django REST Framework's request parsing behavior, I identified that DRF's high-level request.data parsing appears to bypass Django's configured DATAUPLOADMAXMEMORYSIZE protection for application/json and application/x-www-form-urlencoded request bodies.In the tested...
PYSEC-2026-3864 Material for MkDocs: DOM XSS in search suggestions via query parameter
Impact Material for MkDocs 7.2.0 through 9.7.6 contains a DOM-based cross-site scripting vulnerability in the optional search.suggest feature. A crafted q URL parameter could execute JavaScript in the documentation site's origin after user interaction. Patches The issue is fixed in Material for...
Material for MkDocs: DOM XSS in search suggestions via query parameter
ImpactMaterial for MkDocs 7.2.0 through 9.7.6 contains a DOM-based cross-site scripting vulnerability in the optional search.suggest feature. A crafted q URL parameter could execute JavaScript in the documentation site's origin after user interaction. PatchesThe issue is fixed in Material for...
Omnigent Guardrail policy bypass: shell-command parser fails open in policies/builtins/_shell.py
Reporter: Aaron / Aeon — autonomous security agent https://github.com/aaronjmars/aeonProject: omnigent-ai/omnigent v0.1.0 Databricks — meta-harness running Claude Code / Codex / Pi "in check with policies and sandboxing"Component: omnigent/policies/builtins/shell.py shared parser → consumed by...
PYSEC-2026-3912 pypdf: Inefficient handling of non-whitespace inputs in read_until_whitespace
Impact An attacker who uses this vulnerability can craft a PDF which leads to long runtimes. This requires a call to readuntilwhitespace with an input which does not have whitespace for a long time. Patches This has been fixed in pypdf==6.15.0. Workarounds If you cannot upgrade yet, consider...
PYSEC-2026-3875 Omnigent: Unvalidated os_env.cwd in agent bundle yields arbitrary host filesystem access on runners without OMNIGENT_RUNNER_WORKSPACE
Summary An authenticated, non-admin user can obtain arbitrary host-filesystem read/write and host environment-secret disclosure on an Omnigent runner by uploading an agent bundle whose osenv.cwd points outside any intended workspace e.g. / or /home/. The cwd field is taken verbatim from the bundl...
Tornado: Urlencoded body parsing omits max_num_fields, so one request can stall the event loop
SummaryTornado parses application/x-www-form-urlencoded bodies with urllib.parse.parseqs and does not pass maxnumfields. A body made almost entirely of separators produces tens of millions of fields, and the parse happens on the event loop before the handler runs, so a single request stalls the...
sqlparse: Reindentation of tuple lists causes near-cap quadratic CPU consumption
SummaryWhen SQL is formatted with reindentation enabled, ReindentFilter repeatedly rebuilds prefixes of the current statement to calculate token offsets. An attacker who controls SQL sent to this opt-in formatting path can supply a parenthesized tuple list that remains just below the grouping-tok...
Scrapy: S3DownloadHandler sends signed S3 requests over plaintext HTTP by default
ProblemScrapy’s S3DownloadHandler sends signed S3 requests over plaintext HTTP by default.A normal request like s3://bucket/key is converted into http://bucket.s3.amazonaws.com/key unless request.meta"issecure" is explicitly set. The generated request is then signed with configured AWS credential...
NLTK: Uncontrolled resource consumption in RecursiveDescentParser via ambiguous or left-recursive grammars
nltk.parse.RecursiveDescentParser and SteppingRecursiveDescentParser enumerate parses top-down with no bound on the number of recursive steps. A small, crafted context-free grammar makes a short input consume unbounded CPU and/or exhaust the Python recursion stack, pinning a process indefinitely ...
PYSEC-2026-3928 Tornado: Urlencoded body parsing omits max_num_fields, so one request can stall the event loop
Summary Tornado parses application/x-www-form-urlencoded bodies with urllib.parse.parseqs and does not pass maxnumfields. A body made almost entirely of separators produces tens of millions of fields, and the parse happens on the event loop before the handler runs, so a single request stalls the...
PYSEC-2026-3911 pypdf: Possible long runtimes/large memory usage when extracting XForm objects
Impact An attacker who uses this vulnerability can craft a PDF which leads to long runtimes and large memory consumption. This requires extracting the text of a page with lots of XForm objects, where some of them might be re-used. Patches This has been fixed in pypdf==6.16.1. Workarounds If you...
PYSEC-2026-3869 NLTK: Uncontrolled resource consumption in RecursiveDescentParser via ambiguous or left-recursive grammars
nltk.parse.RecursiveDescentParser and SteppingRecursiveDescentParser enumerate parses top-down with no bound on the number of recursive steps. A small, crafted context-free grammar makes a short input consume unbounded CPU and/or exhaust the Python recursion stack, pinning a process indefinitely ...
PYSEC-2026-3910 pypdf: Possible long runtimes/large memory usage when retrieving outlines
Impact An attacker who uses this vulnerability can craft a PDF which leads to long runtimes and large memory consumption. This requires accessing the outlines of a document with either lots of entries or nested outlines with long re-used nesting paths. Patches This has been fixed in pypdf==6.16.1...