VulnPulse

最新のセキュリティ情報

10月21日(水)昨日

  • 重要05:56脆弱性アドバイザリPythonGitHub Advisory Database

    Pillow: Out-of-bounds access in _imagingmorph on a zero-width image

    影響: pip:Pillow <= 12.3.0 → 13.0.0 Summary A PPM or PGM file can declare a width of 0, which Pillow accepts, producing an image of size (0, N). Passing that image to ImageMorph.MorphOp.apply() makes the native morphology code index a row buffer at outrow[width - 1], which is outrow[-1] when the width is 0. The process crashes. Details The PPM parser reads width and height with no lower-bound check: - src/PIL/PpmImagePlugin.py:119 The native apply() writes the row edges with no guard that the width is positive: - src/_imagingmorp…

  • 重要05:53脆弱性アドバイザリPythonGitHub Advisory Database

    Pillow: GIF seek keeps rejected size after DecompressionBombError, allowing DoS

    影響: pip:Pillow >= 9.2.0, < 13.0.0 → 13.0.0 ============================================================================ GIF seek keeps rejected size after DecompressionBombError, allowing DoS Location: src/PIL/GifImagePlugin.py:293 in GifImageFile._seek() Commit: a707c6b21c313880d0771e54965d142dd42358b6 ============================================================================ A GIF of about 60 bytes can make Pillow allocate gigabytes of memory. This affects applications that catch the "image too large" error raised while stepping to…

  • 警告05:53脆弱性アドバイザリPythonGitHub Advisory Database

    Pillow: EPS load(scale) lets Ghostscript render past the decompression bomb limit

    影響: pip:Pillow >= 2.3.0, <= 12.3.0 → 13.0.0 ============================================================================ EPS load(scale) lets Ghostscript render past the decompression bomb limit Location: src/PIL/EpsImagePlugin.py:92 in Ghostscript() Commit: a707c6b21c313880d0771e54965d142dd42358b6 ============================================================================ When an application opens an untrusted Encapsulated PostScript file and asks Pillow to render it at a larger scale, Pillow has Ghostscript produce an image several ti…

  • 重要05:52脆弱性アドバイザリPythonGitHub Advisory Database

    Pillow: TiffDecode returns uninitialized memory as pixels for short JPEG strips

    影響: pip:Pillow >= 5.3.0, < 13.0.0 → 13.0.0 ============================================================================ TiffDecode returns uninitialized memory as pixels for short JPEG strips Location: src/libImaging/TiffDecode.c:554 in _decodeStrip() Commit: a707c6b21c313880d0771e54965d142dd42358b6 ============================================================================ Pillow hands back leftover process memory as image pixels when it opens a small crafted TIFF file. Anyone who can get an application to open their image, and can se…

  • 重要05:51脆弱性アドバイザリPythonGitHub Advisory Database

    Pillow: TIFF encoder ColorMap plane-size mismatch causes a heap out-of-bounds read

    影響: pip:Pillow <= 12.3.0 → 13.0.0 Summary A small attacker-supplied TIFF can be opened and loaded normally, then reach an out-of-bounds read when an application saves it back to TIFF with retained metadata. The fixed reproducer is a 1×1, 16-bit grayscale, PackBits-compressed TIFF containing tag 320 (ColorMap) with 768 SHORT values: three zero-filled planes of 256 entries each. No Python object is forged and no metadata is injected after loading. Pillow's TIFF encoder allocates 768 × 2 = 1536 bytes, then passes three plane point…

  • 重要05:50脆弱性アドバイザリPythonGitHub Advisory Database

    Pillow: Unbounded recursion parsing a PDF page tree or trailer chain (incomplete fix for CVE-2026-42310)

    影響: pip:pillow >= 5.1.0, < 13.0.0 → 13.0.0 Summary When an application appends to an existing PDF with Image.save(..., format="PDF", append=True), Pillow parses that file with PdfParser. Two recursive parsers have no effective bound. linearize_page_tree follows /Kids with no visited set or depth limit, so a cyclic or duplicated page tree recurses without end. read_prev_trailer rejects only an exactly repeated /Prev offset, so a long chain of unique offsets still recurses. The trailer-loop guard added for CVE-2026-42310 does not cover ei…

  • 警告05:49脆弱性アドバイザリPythonGitHub Advisory Database

    Pillow tiled-TIFF decoder reads past tile buffer in copy4 (Unpack.c:1290)

    影響: pip:pillow >= 8.2.0, < 13.0.0 → 13.0.0 Summary Pillow's libImaging _decodeTile decoder, used to decode tiled TIFF images, allocates a per-tile buffer using realloc(state->buffer, TIFFTileSize(tiff)). After each TIFFReadTile it then iterates tile_y from 0 up to current_tile_length and calls the configured row unpacker (here copy4) with the source pointer state->buffer + tile_y row_byte_size. When libtiff returns a tile_bytes_size smaller than the worst-case row_byte_size tile_length, the inner stride-and-copy loop walks past the real…

  • 重要05:42脆弱性アドバイザリPythonGitHub Advisory Database

    Pillow: OOB read in TiffDecode.c tile and RGBA paths leaks heap memory into pixels

    影響: pip:Pillow >= 8.1.0, < 13.0.0 → 13.0.0 ============================================================================ OOB read in TiffDecode.c tile and RGBA paths leaks heap memory into pixels Location: src/libImaging/TiffDecode.c:483 in _decodeTile() Commit: a707c6b21c313880d0771e54965d142dd42358b6 ============================================================================ Pillow reads past the end of a heap buffer when decoding certain malformed compressed TIFF files, and copies the bytes it reads into the pixels of the image it re…

  • 緊急05:40脆弱性アドバイザリPythonGitHub Advisory Database

    Pillow: Heap buffer overflow in ImagingJpegDecode

    影響: pip:Pillow <= 12.3.0 → 13.0.0 Summary JpegImageFile.draft() — which Image.thumbnail() calls automatically — requests 1/2, 1/4 or 1/8 scaled JPEG output and shrinks self._size and the tile extents to match, so _setimage() allocates a single-row decode buffer of ceil(W/s) samples. ImagingJpegDecode() sets cinfo.scale_num/scale_denom, calls jpeg_start_decompress(), and then reads scanlines into that buffer without ever comparing cinfo.output_width, cinfo.output_height or cinfo.out_color_components against state->xsize, state->…

  • 警告05:01脆弱性アドバイザリPythonGitHub Advisory Database

    AIOHTTP: Absolute-form request targets can spoof Request.scheme

    影響: pip:aiohttp <= 3.14.3 → 3.14.4 Summary An attacker sending an absolute-form request can spoof the scheme used. Impact If user code depends on the Request.scheme attribute for anything security related, an attacker may be able to circumvent this logic, tricking the application into thinking a connection is encrypted when it is not, or vice versa. Workaround A WAF rule to reject absolute-form requests (legitimate requests should only use this form for proxies).

  • 警告04:57脆弱性アドバイザリPythonGitHub Advisory Database

    AIOHTTP: Connector pool exhaustion via Max-Age overflow

    影響: pip:aiohttp <= 3.14.3 → 3.14.4 Summary An overflow in Max-Age processing can skip closing a connection. Impact An attacker may be able to exhaust the connection pool temporarily, until garbage collection resolves the connections.

  • 警告04:52脆弱性アドバイザリPythonGitHub Advisory Database

    AIOHTTP: Pure-Python parser request smuggling

    影響: pip:aiohttp <= 3.14.3 → 3.14.4 Summary The pure Python parser is vulnerable to an HTTP request smuggling attack. Impact If users are using the Python parser (AIOHTTP_NO_EXTENSIONS, or not a standard wheel installed), then an application may be vulnerable to a request smuggling attack. Workaround Switch to the default C parser.

  • 重要04:52脆弱性アドバイザリPythonGitHub Advisory Database

    AIOHTTP: File descriptor exhaustion in multipart requests

    影響: pip:aiohttp >= 2.0.0, < 3.14.4 → 3.14.4 Summary An attacker can exhaust file descriptors with specially crafted multipart requests. Impact If a handler uses Request.post(), it may be possible for an attacker to use an unlimited number of file descriptors, potentially resulting in resource exhaustion.

  • 緊急04:37脆弱性アドバイザリPythonGitHub Advisory Database

    uv's bundled CA store trusts an emSign root whose intermediate CA keys are compromised

    影響: pip:uv < 0.13.4 → 0.13.4 By default, uv verifies TLS connections against a vendored copy of the webpki-root-certs bundle. Versions before 0.13.4 include the emSign ECC Root CA - G3 root. Eight eMudhra intermediate CA certificates that chain to that root have compromised private keys, and the CA has revoked them. An attacker with one of the compromised keys can issue certificates that uv accepts for any hostname, and can be used to issue certificates to enable MITM attacks. uv 0.13.4 removes the root from its vendored b…

  • 緊急04:35脆弱性アドバイザリPythonGitHub Advisory Database

    certifi bundles emSign root CAs with compromised intermediate CA keys

    影響: pip:certifi >= 2019.03.09, < 2026.10.19 → 2026.10.19 Certifi versions before 2026.10.18 include the emSign ECC Root CA - G3 root certificate in their bundled CA store. Eight eMudhra intermediate CA certificates that chain to this root have compromised private keys and the CA has revoked them. An attacker with one of the compromised keys can issue valid-looking certificates for any hostname. If the attacker is also on-path, they can intercept or modify TLS traffic from clients that trust the certifi bundle. Examples include requests, urllib3 and p…

10月20日(火)

  • 重要02:08脆弱性アドバイザリPythonGitHub Advisory Database

    aiohttp server lacks an initial request/header timeout

    影響: pip:aiohttp <= 3.14.3 → 3.14.4 Summary The keepalive timeout was not used during the initial portion of a request. Impact An attacker could keep an idle connection open indefinitely before sending any data. Workaround Use a reverse proxy (as recommended for all production deployments) with sensible keepalive limits.

  • 重要02:07脆弱性アドバイザリPythonGitHub Advisory Database

    aiohttp: Multiple instances of excessive or unbounded memory/CPU use

    影響: pip:aiohttp <= 3.14.3 → 3.14.4 Summary Multiple cases were found where aiohttp could use excessive or unbounded memory, or excessive CPU consumption on attacker controlled requests. Impact An attacker could cause resource exhaustion through specially crafted requests.

  • 警告02:01脆弱性アドバイザリPythonGitHub Advisory Database

    Mercury: Stored / DOM Cross-Site Scripting (XSS): mr.Markdown renders untrusted content as raw, unsanitized HTML

    影響: pip:mercury >= 3.0.0, < 3.2.11 → 3.2.11 Summary Mercury turns Jupyter notebooks into shared web apps/dashboards. The mr.Markdown widget converts its input to HTML with python-markdown and no sanitization step. MarkdownWidget is an ipywidgets.HTML widget, whose value is written to the page as raw HTML (via innerHTML) with no sanitization, so the result reaches the DOM verbatim. When an app passes untrusted data (database rows, user submissions, uploaded file contents, or an external/LLM API response) to mr.Markdown, HTML/JS in that da…

  • 緊急02:00脆弱性アドバイザリPythonGitHub Advisory Database

    Mercury: Unauthenticated Remote Code Execution in /api/terminals - access control bypass

    影響: pip:mercury >= 3.0.0, <= 3.2.3 → 3.2.4 Summary A missing comma in mercury_app/block_handler.py's BLOCKED_PATTERNS list causes the blocklist to fail to cover the /api/terminals endpoint. As a result, any unauthenticated attacker can spawn a full, interactive OS-level shell on the host running Mercury. Details The blocklist in mercury_app/block_handler.py is defined as: BLOCKED_PATTERNS = [ # JupyterLab UI + API r"/lab(?!/(?:extensions/|api/settings(?:/|$)|api/translations(?:/|$)))(?:/.)?" r"/api/terminals(?:/.)?", r"/api/shutdown(?:/…

  • 警告01:51脆弱性アドバイザリPythonGitHub Advisory Database

    Graphify Fortran extractor: incomplete cpp #include hardening allows arbitrary host-file read/exfiltration when indexing an untrusted repo

    影響: pip:graphifyy >= 0.7.2, < 0.9.70 → 0.9.70 Summary The Fortran extractor's C-preprocessor step (graphify/extractors/fortran.py, _cpp_preprocess) applies an incomplete #include hardening. The -nostdinc -I /dev/null flags it relies on (comment "Security (F-007)") do not stop a capital-F Fortran source file from including absolute paths (#include "/etc/passwd") or from path-traversing out of the corpus (#include "../../../../home/victim/.ssh/id_rsa"). cpp always searches the directory of the file being preprocessed for quoted includes and…

  • 緊急01:49脆弱性アドバイザリPythonGitHub Advisory Database

    Mercury: Unauthenticated Remote Code Execution via /api/kernels

    影響: pip:mercury <= 3.2.5 → 3.2.6 Mercury runs a JupyterLab server with anonymous access by default (mercury_app/__main__.py sets --IdentityProvider.token='' when no --token/MERCURY_TOKEN is given; when tokenless it also sets --ServerApp.disable_check_xsrf=True). It relies on a blocklist (mercury_app/block_handler.py BLOCKED_PATTERNS: /lab, /api/terminals, /api/shutdown, /files) to keep anonymous users off dangerous Jupyter endpoints. The vulnerability /api/kernels is NOT in the blocklist (and cannot be — Mercury needs kernels…

  • 重要01:11脆弱性アドバイザリPythonGitHub Advisory Database

    LoopX serve-status permissive CORS policy exposes control-plane state and private Markdown files

    影響: pip:loopx >= 0.0.1, < 0.4.5 → 0.4.5 Summary loopx serve-status sends Access-Control-Allow-Origin: on every response, including its unauthenticated GET routes. Because the endpoint is unauthenticated and bound to a fixed, well-known loopback port, any website the operator visits can read LoopX control-plane state and the contents of Markdown files inside every registered goal repo, using a plain fetch() with no user interaction. The write endpoints are not affected — they are correctly Origin-checked. This report is strictly about…

10月17日(土)

  • 緊急05:08脆弱性アドバイザリPythonGitHub Advisory Database

    LMCache: Remote code execution via unsafe deserialization in multiprocess mode transport

    影響: pip:lmcache >= 0.3.9, < 0.5.6 → 0.5.6 Summary LMCache is vulnerable to Unauthenticated Remote Code Execution via Pickle Deserialization on the Multiprocess ZMQ Transport Details LMCache multiprocess mode, also called distributed mode, opens an unauthenticated ZeroMQ ROUTER so worker processes can register and share KV cache blocks. The intended clients are sibling LMCache processes. There is no CURVE, ZAP, password, or message authentication on that socket. LMCache used only inside a vLLM process does not open this port. The transp…

  • 緊急04:44脆弱性アドバイザリAnthropic (Claude)PythonGitHub Advisory Database

    Claude Agent SDK: Argument Injection via resume Option Allows Arbitrary Command Execution

    影響: pip:claude-agent-sdk < 0.2.121 → 0.2.121 The Claude Agent SDK for Python passed the resume option to the Claude CLI without validation, allowing a value beginning with - to be interpreted as a separate CLI flag. An attacker who controlled the resume value could inject an --mcp-config flag defining a stdio MCP server, resulting in arbitrary command execution at CLI startup that bypassed the SDK's permission controls. Exploitation required an application to pass untrusted input as the session ID to resume. Users are advised to update to…

10月16日(金)

  • 警告05:22脆弱性アドバイザリPythonGitHub Advisory Database

    Pipecat: Public exposure of Pipecat’s development runner can allow unauthenticated bot session creation

    影響: pip:pipecat-ai >= 0.0.98, <= 1.5.0 → 1.6.0 Pipecat’s built-in development runner exposes endpoints that create bot sessions and, for the Daily transport, paid Daily rooms. These development endpoints intentionally do not authenticate callers. The runner binds to localhost by default and is designed exclusively for local development. It is not built or supported as a production server. Exploitation therefore requires an operator to deliberately make the development runner reachable from an untrusted network, such as by setting --host 0.0…

  • 警告05:22脆弱性アドバイザリPythonGitHub Advisory Database

    JupyterLab: Command link trust prompt in JupyterLab can trust a document other than the one clicked

    影響: pip:jupyterlab >= 4.6.0, <= 4.6.3 → 4.6.4, pip:jupyterlab >= 4.5.7, <= 4.5.10 → 4.5.11, pip:notebook >= 7.5.6, <= 7.6.2 → 7.6.3, pip:jupyterlite-core >= 0.7.5, <= 0.8.3 → 0.8.4 Description A Markdown file or a notebook output can carry a button that runs a JupyterLab command. Since 4.5.7 the first click on such a button opens a prompt naming the command, with Cancel, Run Once and Trust. Choosing Trust runs the command and marks the document trusted, so its later buttons run without a prompt. Which document gets marked is decided when the user answers, not when they click. Both trust commands read whichever document is current at that moment: markdownviewer:trust uses…