Critical security advisoryCriticalFlagged by our vulnerability database: PHP2Shell is on CISA’s exploited list. Most WordPress hosting runs PHP. See if your site is affectedFlagged by our vulnerability database: PHP2Shell is being exploited. DetailsExploited: PHP2Shell. Check your site
HuttenlocherTechnologies
Updated 12 h ago

Vulnerability database

Every flaw the U.S. government’s cybersecurity agency (CISA) has confirmed attackers are using, plus the new WordPress plugin and theme bugs published each day, sorted by what they mean for a small business. We refresh it twice a day. If you see something your website or office runs, tell us.

1,762exploited flaws on CISA’s list
34added in the last 30 days
343new WordPress flaws this week
390,080entries in the database

784 results · page 1 of 16

  • Oct 27, 2026Crass is a Ruby CSS parser that is compliant with the CSS Syntax Level 3 specification.CVE-2026-116695 · Other software · rgrove · reported by GitHubMedium 5.3

    Crass is a Ruby CSS parser that is compliant with the CSS Syntax Level 3 specification. Prior to 1.0.8, Crass incorrectly treats a closing parenthesis after an escaped backslash as escaped while consuming the remnants of a bad URL. Crass therefore keeps declarations, style rules, or at-rules inside a bad URL token even though a browser treats them as live CSS. A sanitizer that parses untrusted CSS with Crass and reserializes it without rejecting the bad URL can allow CSS used for UI redress, external resource loading, or CSS-based data exfiltration, but this issue does not enable script execution in modern browsers. This issue is fixed in version 1.0.8.

    Product
    crass
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 13, 2026Razorpay IFSC Ruby gem through 2.0.62 contains a server-side request forgery vulnerability that allows attackers to redirect API requests by supplying a craftedCVE-2026-110222 · Other software · Razorpay · reported by VulnCheckMedium 6.9

    Razorpay IFSC Ruby gem through 2.0.62 contains a server-side request forgery vulnerability that allows attackers to redirect API requests by supplying a crafted IFSC code to IFSC.find or IFSC#get. Attackers can submit network-path references or absolute URIs that URI.join resolves as a new host, sending GET requests to internal or attacker-chosen hosts and returning parsed response fields.

    Product
    IFSC
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 8, 2026The image_optimizer Ruby gem 1.3.0 through 1.9.0 contains an OS command injection vulnerability in ImageOptimizer#identify_format that allows attackers to execuCVE-2026-107704 · Other software · jtescher · reported by VulnCheckCritical 9.3

    The image_optimizer Ruby gem 1.3.0 through 1.9.0 contains an OS command injection vulnerability in ImageOptimizer#identify_format that allows attackers to execute commands by supplying a crafted image path when the identify option is enabled. Attackers controlling the path, such as an uploaded file name, can append shell metacharacters like ';' that are executed via Ruby backticks with the Ruby process privileges.

    Product
    image_optimizer
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 4, 2026The gist RubyGem before 6.1.0 contains an improper certificate validation vulnerability that allows on-path attackers to intercept HTTPS traffic because http_coCVE-2026-105221 · Other software · defunkt · reported by VulnCheckCritical 9.1

    The gist RubyGem before 6.1.0 contains an improper certificate validation vulnerability that allows on-path attackers to intercept HTTPS traffic because http_connection in lib/gist.rb sets VERIFY_NONE. Attackers can present any certificate to read or modify GitHub API traffic, stealing OAuth tokens and login credentials to read and modify the victim's gists.

    Product
    gist
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 2, 2026crmne/ruby_llm at commit fa6f279847d6d7027814539d9c0dfc3bbdfd2a83 contains a polynomial-time regular expression denial-of-service condition in Mistral model capCVE-2026-67989 · Other software · reported by MITREHigh 7.5

    crmne/ruby_llm at commit fa6f279847d6d7027814539d9c0dfc3bbdfd2a83 contains a polynomial-time regular expression denial-of-service condition in Mistral model capability matching on Ruby 3.1.x

    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 2, 2026Uncaught exception, Improper Handling of Exceptional Conditions vulnerability in Apache Thrift Ruby bindings.CVE-2026-96277 · Websites & servers · Apache Software Foundation · reported by security@apache.orgHigh 8.7

    Uncaught exception, Improper Handling of Exceptional Conditions vulnerability in Apache Thrift Ruby bindings. This issue affects Apache Thrift: before 0.25.0. Users are recommended to upgrade to version 0.25.0, which fixes the issue.

    Product
    Apache Thrift
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 2, 2026Allocation of resources without limits or throttling vulnerability in Apache Thrift ruby bindings.CVE-2026-94656 · Websites & servers · Apache Software Foundation · reported by security@apache.orgHigh 8.2

    Allocation of resources without limits or throttling vulnerability in Apache Thrift ruby bindings. This issue affects Apache Thrift: before 0.25.0. Users are recommended to upgrade to version 0.25.0, which fixes the issue.

    Product
    Apache Thrift
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 1, 2026A flaw was found in rubygem-katello.CVE-2026-56098 · Other software · Red Hat · reported by Red HatMedium 4.3

    A flaw was found in rubygem-katello. The RegistryProxiesController in Katello contains an authorization bypass vulnerability due to an execution fall-through in the registry_authorize filter. While the application identifies unauthorized requests and triggers an error response via the unauthorized method, it fails to halt the execution of the current code path (missing return statement). This failure in the control flow allows the application to proceed into subsequent business logic and database validation filters. Consequently, the application reveals its internal state through differential responses, allowing an unprivileged attacker to enumerate valid Users, Organizations, and Products across the entire instance.

    Product
    Red Hat Satellite 6.16 for RHEL 8
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 1, 2026A flaw was found in rubygem-katello.CVE-2026-56097 · Other software · Red Hat · reported by Red HatMedium 6.5

    A flaw was found in rubygem-katello. An SQL injection vulnerability exists in the Red Hat Satellite Katello Registry Proxy. The application fails to sanitize input parameters used in database queries within the RegistryProxiesController. The methods check_blob_push_org_label and get_matching_products_from_org take user-supplied labels directly from the request path and interpolate them into raw SQL fragments. This flaw is accessible to a user with only the create_personal_access_tokens permission, even if the user access is restricted, with no Organization or Location assigned.

    Product
    Red Hat Satellite 6.16 for RHEL 8
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 1, 2026A flaw was found in rubygem-hammer_cli.CVE-2026-12545 · Other software · Red Hat · reported by Red HatMedium 6.7

    A flaw was found in rubygem-hammer_cli. A command injection vulnerability exists in Hammer CLI and the Railties (Ruby on Rails) component distributed with Satellite due to the insecure interpolation of the $EDITOR environment variable into the Ruby system() method. By passing a single interpolated string to system(), the application invokes a system shell (/bin/sh) that interprets shell metacharacters (e.g., ;, |, &).

    Product
    Red Hat Satellite 6.16 for RHEL 8
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Oct 1, 2026A flaw was found in rubygem-foreman_remote_execution.CVE-2026-12405 · Other software · Red Hat · reported by Red HatHigh 8.8

    A flaw was found in rubygem-foreman_remote_execution. A command injection vulnerability exists in the Red Hat Satellite API (/api/v2/job_invocations). When a job template has the effective_user property marked as overridable: true, the application fails to properly sanitize the effective_user input provided during the API request. The exploitation does not rely on the content or logic of the Job Template/playbook itself; rather, the injection occurs during the instantiation of the job execution environment by the Satellite server. An attacker with permissions to execute job templates can inject arbitrary shell commands into this parameter, which are executed on the target infrastructure with the privileges of the execution user.

    Product
    Red Hat Satellite 6.16 for RHEL 8
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 30, 2026Kobako is a Ruby gem that embeds a Wasm-isolated mruby interpreter inside applications, allowing execution of untrusted Ruby scripts (LLM-generated code, user fCVE-2026-55107 · Other software · elct9620 · reported by GitHubCritical 10

    Kobako is a Ruby gem that embeds a Wasm-isolated mruby interpreter inside applications, allowing execution of untrusted Ruby scripts (LLM-generated code, user formulas, student submissions, third-party plugins) in-process without giving them access to host memory, files, network, or credentials. From version 0.1.0 to before version 0.9.1, a guest mruby script running inside the Kobako sandbox can execute arbitrary Ruby in the host process, fully escaping the sandbox. This issue has been patched in version 0.9.1.

    Product
    kobako
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 29, 2026crmne/ruby_llm at commit fa6f279847d6d7027814539d9c0dfc3bbdfd2a83 contains polynomial-time regular expression denial-of-service conditions in think-tag responseCVE-2026-67987 · Other software · reported by MITREHigh 7.5

    crmne/ruby_llm at commit fa6f279847d6d7027814539d9c0dfc3bbdfd2a83 contains polynomial-time regular expression denial-of-service conditions in think-tag response parsing on Ruby 3.1.x. A malicious or anomalous model response containing many unterminated <think> tags can cause excessive CPU consumption in two consecutive regular expressions and delay chat-completion processing

    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 22, 2026Spree is an open source e-commerce solution built with Ruby on Rails.CVE-2026-94462 · Other software · spree · reported by GitHubHigh 7.1

    Spree is an open source e-commerce solution built with Ruby on Rails. From 5.4.0 until 5.4.4 and 5.5.4, PATCH /api/v3/store/carts/:id/associate in Spree::Api::V3::Store::CartsController#associate uses find_cart_for_association to locate a cart by prefixed_id but does not require a cart token or otherwise verify possession of the selected guest cart. An authenticated customer can derive reversible prefixed cart IDs, associate an eligible guest cart with the attacker's account, and receive billing and shipping address data from the cart. Exploitation requires a guest cart with address data on a store that does not require login for checkout, and reassignment can also disrupt the guest's in-progress cart. This issue is fixed in versions 5.4.4 and 5.5.4.

    Product
    spree
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 14, 2026Static Code Injection in Plesk extensions "Ruby" before 1.6.6 and "Node.js Toolkit" before 2.5.0 allows remote authenticated users to execute arbitrary code as CVE-2026-68489 · Other software · WebPros · reported by support@hackerone.comHigh 8.7

    Static Code Injection in Plesk extensions "Ruby" before 1.6.6 and "Node.js Toolkit" before 2.5.0 allows remote authenticated users to execute arbitrary code as root via custom environment variables.

    Product
    Plesk extension "Ruby"
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 14, 2026Pay is a payments engine for Ruby on Rails 6.0 and higher.CVE-2026-70658 · Other software · pay-rails · reported by GitHubHigh 7.4

    Pay is a payments engine for Ruby on Rails 6.0 and higher. Prior to 11.6.2, Pay::Webhooks::PaddleBillingController#valid_signature? in app/controllers/pay/webhooks/paddle_billing_controller.rb compares the computed 64-character SHA-256 HMAC with the attacker-controlled h1 token from the Paddle-Signature header using Ruby String#==. An unauthenticated remote attacker who can repeatedly submit requests to /pay/webhooks/paddle_billing and obtain sufficiently precise timing measurements can infer matching digest prefixes and recover a valid signature. A forged accepted webhook is enqueued through Pay::Webhooks::ProcessJob and can cause a host application to update billing state, provision paid features, record refunds, or trigger customer notifications. This issue is fixed in version 11.6.2.

    Product
    pay
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 14, 2026dd-trace-rb is Datadog's client library for Ruby.CVE-2026-50276 · Other software · DataDog · reported by GitHubHigh 7.5

    dd-trace-rb is Datadog's client library for Ruby. Prior to 2.32.0, W3C baggage extraction does not enforce DD_TRACE_BAGGAGE_MAX_ITEMS, which defaults to 64, or DD_TRACE_BAGGAGE_MAX_BYTES, which defaults to 8192, although those limits apply during baggage injection. A remote unauthenticated attacker can send a baggage HTTP header containing many comma-separated key-value pairs or a single very large value. The extraction path allocates entries while parsing the attacker-controlled header on every request, causing unbounded CPU and memory consumption in an HTTP service where the baggage propagation style is enabled, which is the default for most affected tracers. This can cause denial of service. This issue is fixed in version 2.32.0.

    Product
    dd-trace-rb
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 14, 2026Alchemy is an open source content management system engine written in Ruby on Rails.CVE-2026-57579 · Other software · AlchemyCMS · reported by GitHubHigh 7.5

    Alchemy is an open source content management system engine written in Ruby on Rails. Prior to 7.4.15, 8.0.15, 8.1.14, and 8.2.6, the unauthenticated GET /api/pages/nested endpoint implemented by Api::PagesController#nested in app/controllers/alchemy/api/pages_controller.rb returns an unfiltered page tree because it performs no authorization and does not scope descendants by the caller's ability. Anonymous callers can retrieve restricted and unpublished page metadata that the sibling show action denies. When elements=true is supplied, PageTreeSerializer also returns element and ingredient content from restricted pages because PageTreePreloader and the serializer do not apply an ability check to those records. This issue is fixed in versions 7.4.15, 8.0.15, 8.1.14, and 8.2.6.

    Product
    alchemy_cms
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 14, 2026The svg_optimizer gem before 0.3.0 for Ruby performs entity expansion on untrusted documents.CVE-2023-46035 · Other software · fnando · reported by MITREMedium 5.9

    The svg_optimizer gem before 0.3.0 for Ruby performs entity expansion on untrusted documents.

    Product
    svg_optimizer
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 10, 2026A NULL pointer dereference vulnerability exists in the Prism parser component of mruby 4.0.0.CVE-2026-79590 · Other software · reported by MITREMedium 6.5

    A NULL pointer dereference vulnerability exists in the Prism parser component of mruby 4.0.0. An attacker can provide a specially crafted Ruby source file that triggers the parser to pass a NULL pointer to nonnull string handling functions, resulting in undefined behavior and application crash.

    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 10, 2026Improper neutralization of special elements in data query logic in the GridFS component of the MongoDB Ruby Driver can cause a caller-supplied structured file iCVE-2026-88030 · Other software · MongoDB · reported by cna@mongodb.comMedium 6.1

    Improper neutralization of special elements in data query logic in the GridFS component of the MongoDB Ruby Driver can cause a caller-supplied structured file identifier to be interpreted as a query condition rather than as a literal identifier. An authenticated user who can influence the identifier passed by an affected application may obtain stored file content beyond the intended target or cause all GridFS file chunks in the affected bucket to be removed, rendering stored file content unreadable.

    Product
    Ruby Driver
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 9, 2026mrubyc through 4.0.0 contains a null pointer dereference vulnerability in the op_enter() handler in src/vm.c when processing untrusted bytecode.CVE-2026-86547 · Other software · mrubyc · reported by VulnCheckMedium 6.9

    mrubyc through 4.0.0 contains a null pointer dereference vulnerability in the op_enter() handler in src/vm.c when processing untrusted bytecode. Attackers can craft malicious .mrb bytecode files with OP_ENTER instructions at the top level to crash the embedding application and cause denial of service.

    Product
    mrubyc
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 4, 2026Avo is a framework to create admin panels for Ruby on Rails apps.CVE-2026-53769 · Other software · avo-hq · reported by GitHubMedium 6.5

    Avo is a framework to create admin panels for Ruby on Rails apps. From version 2.28.0 to before version 3.32.0, Avo's direct attachment upload endpoint lacks server-side upload authorization and bypasses the documented field-level upload policy methods such as upload_{FIELD_ID}?. An authenticated Avo user who can reach the Avo attachment upload endpoint can replace or add attachment content, including binary content, filename, and content-type metadata, on a resolved record even when both update? and upload_<field>? policies deny the operation. This primarily affects multi-role Avo Pro/Advanced-style deployments where non-administrator or restricted operator users can reach Avo and per-record or per-field operations are expected to be enforced by policies. This issue has been patched in version 3.32.0.

    Product
    avo
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 3, 2026rubyzip versions before 3.4.0 contain a path traversal vulnerability in Zip::Entry#extract that fails to properly validate extraction paths using prefix compariCVE-2026-85396 · Other software · rubyzip · reported by VulnCheckHigh 8.7

    rubyzip versions before 3.4.0 contain a path traversal vulnerability in Zip::Entry#extract that fails to properly validate extraction paths using prefix comparison without trailing separators. Attackers can craft archive entries with names like ../upload_backup/owned.sh to write files outside the intended extraction directory into sibling paths sharing the destination prefix.

    Product
    rubyzip
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Sep 1, 2026Mail is an internet library for Ruby designed to handle email generation, parsing, and sending.CVE-2026-63435 · Other software · mikel · reported by GitHubMedium 5.3

    Mail is an internet library for Ruby designed to handle email generation, parsing, and sending. Prior to 2.9.1, Mail::Utilities.q_value_decode and Mail::Utilities.b_value_decode used a single String#match and an overly greedy charset capture to decode only the first RFC 2047 encoded-word and mishandle surrounding or subsequent text. A crafted malformed encoded-word in an address display name or local part could cross ? delimiters and make decoded From, To, or Reply-To header values differ from the raw values inspected by a human reviewer or downstream parser, enabling apparent sender or recipient spoofing, phishing, or authorization-check bypass. This issue is fixed in version 2.9.1.

    Product
    mail
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 27, 2026The execute_ruby tool is documented as a read-only Ruby sandbox and is enforced by a pattern denylist together with replacements for the process-spawning methodCVE-2026-81097 · Other software · maquina-app · reported by VulnCheckHigh 8.6

    The execute_ruby tool is documented as a read-only Ruby sandbox and is enforced by a pattern denylist together with replacements for the process-spawning methods on Kernel. The pseudo-terminal library's spawn entry points are neither in the denylist nor replaced, so a normal tool call could reach them and start a shell, executing commands as the account running the server and outside the guarded methods. The denylist was introduced with the tool in 1.4.0 and never covered those entry points through 1.6.0. Version 1.6.1 restricts the requires the sandbox permits to a data-only list and blocks dynamic dispatch to execution entry points; 2.0.0 removes the tool.

    Product
    rails-mcp-server
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 27, 2026An issue was discovered in the resolv gem before 0.7.2 for Ruby.CVE-2026-80213 · Other software · Ruby · reported by MITREMedium 4

    An issue was discovered in the resolv gem before 0.7.2 for Ruby. Resolv::DNS::MessageEncoder wrote a DNS label's length into a single octet without checking its range. A label longer than 255 octets had its length stored modulo 256 but the label data was written unchanged, and thus the bytes on the wire described a different name than the one the application asked to encode. RFC 1035 section 2.3.4 limits a label to 63 octets, and the two high bits of the length octet are reserved for compression pointers. put_string packed the length with put_pack("C", d.length) and put_label used it for labels, and thus any value from 0 to 255 could end up as a label length octet, including the reserved 0x40-0xBF range and the 0xC0-0xFF pointer range. Resolv::DNS::Name.create did not check per-label or total name length either, and thus an attacker-controlled hostname reached the encoder unchanged. An application that resolves an attacker-controlled hostname sends a query whose wire bytes name a domain the attacker chose. A hostname suffix that the application validates against an allowlist becomes padding that never appears on the wire, and thus allowlist and egress checks can be bypassed. The re

    Product
    resolv
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 27, 2026An issue was discovered in the resolv gem before 0.7.2 for Ruby.CVE-2026-80212 · Other software · Ruby · reported by MITREHigh 7.5

    An issue was discovered in the resolv gem before 0.7.2 for Ruby. Resolv::DNS::Resource.get_class, Resolv::DNS::Resource::Generic.create, and Resolv::DNS::SvcParam::Generic.create generate a new class for each unknown DNS resource record (type, class) pair, or each unknown SvcParamKey, encountered while decoding a response. Each generated class was permanently registered both as a constant on Resource (or SvcParam::Generic) and as an entry in a class-lookup hash (ClassHash), and thus the class remained reachable through that constant after the response was discarded. Type and class are each 16-bit values, and thus an attacker controlling DNS responses (a spoofed response, or a malicious or hijacked upstream DNS server) has roughly 2^32 distinct (type, class) pairs to choose from. A single response of a few hundred kilobytes carrying tens of thousands of distinct unknown types permanently grows process memory by tens of megabytes; repeated responses accumulate without bound and are never reclaimed by garbage collection, because the constant keeps each class alive. Any code path that calls Resolv::DNS::Message.decode on attacker-influenced DNS responses is affected. resolv is a defaul

    Product
    resolv
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 25, 2026Doorkeeper is an OAuth 2 provider for Ruby on Rails.CVE-2026-44476 · Other software · doorkeeper-gem · reported by GitHubMedium 6.3

    Doorkeeper is an OAuth 2 provider for Ruby on Rails. In version 1.9.0, an attacker who knows only a dynamically registered client's client_id, which is public information, can authenticate as that client at the token endpoint and obtain an access token without providing its client_secret. This occurs because the Dynamic Client Registration feature creates applications with confidential: false hard-coded, even though the registration response returns a client_secret and advertises support for the client_secret_basic and client_secret_post authentication methods; since Doorkeeper treats a blank or missing secret as valid for non-confidential (public) clients, the secret is never verified. Only projects that have explicitly enabled Dynamic Client Registration, which is disabled by default, are affected. This issue is fixed in version 1.10.0.

    Product
    doorkeeper-openid_connect
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 25, 2026Nokogiri versions before 1.19.3 contain a memory leak in the XSLT Stylesheet transform method when processing Ruby strings containing null bytes.CVE-2026-79771 · Other software · sparklemotion · reported by VulnCheckMedium 6.9

    Nokogiri versions before 1.19.3 contain a memory leak in the XSLT Stylesheet transform method when processing Ruby strings containing null bytes. Attackers can exploit this by passing attacker-controlled input with null bytes to transform parameters, causing heap allocations to leak and enabling denial of service against long-running processes.

    Product
    nokogiri
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 19, 2026A flaw has been found in mruby 3.1.0.CVE-2022-4996 · Other software · reported by VulDBMedium 5.5

    A flaw has been found in mruby 3.1.0. Affected is the function udiv of the file bigint.c. Executing a manipulation can lead to floating point comparison with incorrect operator. It is possible to launch the attack remotely. The exploit has been published and may be used. It is best practice to apply a patch to resolve this issue.

    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 17, 2026websocket-driver is a WebSocket protocol handler with pluggable I/O.CVE-2026-61666 · Other software · faye · reported by GitHubHigh 8.9

    websocket-driver is a WebSocket protocol handler with pluggable I/O. Prior to 0.8.2, WebSocket::Driver.server() passes a malformed Host header to URI.parse in lib/websocket/http/request.rb without catching URI::InvalidURIError, allowing a remote client to crash a TCP-backed WebSocket server when the application does not catch the error from parse(). This issue is fixed in version 0.8.2.

    Product
    websocket-driver-ruby
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 14, 2026ZeroBrew version 0.3.1 and prior contains a missing integrity verification vulnerability in the Ruby compatibility shim that allows network attackers to executeCVE-2026-53970 · Other software · lucasgelfond · reported by VulnCheckHigh 7.5

    ZeroBrew version 0.3.1 and prior contains a missing integrity verification vulnerability in the Ruby compatibility shim that allows network attackers to execute arbitrary code by substituting malicious content at formula resource or URL-based patch URLs without checksum validation. Attackers can intercept or replace downloads for secondary resource and patch paths in shim.rb, injecting attacker-controlled build steps or source tree modifications that execute during source builds via 'zb install --build-from-source' without any integrity warning.

    Product
    ZeroBrew
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 13, 2026crmne/ruby_llm at commit fa6f279847d6d7027814539d9c0dfc3bbdfd2a83 contains a polynomial-time regular expression denial-of-service condition in RubyLLM::Utils.unCVE-2026-67991 · Other software · reported by MITREHigh 7.5

    crmne/ruby_llm at commit fa6f279847d6d7027814539d9c0dfc3bbdfd2a83 contains a polynomial-time regular expression denial-of-service condition in RubyLLM::Utils.underscore on Ruby 3.1.x. A very long crafted class, agent, or tool name can cause excessive CPU consumption and a denial of service.

    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 13, 2026amazing-print/amazing_print at commit dc890dfafdf07088ea901df53c19c2710e5c5234 contains a Ruby code injection condition in AwesomeMethodArray#grep.CVE-2026-67986 · Other software · reported by MITREHigh 8.4

    amazing-print/amazing_print at commit dc890dfafdf07088ea901df53c19c2710e5c5234 contains a Ruby code injection condition in AwesomeMethodArray#grep. A specially named method containing Ruby interpolation syntax can be interpolated into a dynamically constructed eval string when grep is called with a block, resulting in Ruby code execution in the host process. Exploitation requires an application path that allows an attacker to influence dynamic method names.

    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 7, 2026Ruby LSP is an implementation of the language server protocol for Ruby.CVE-2026-48122 · Other software · Shopify · reported by GitHubMedium 5.4

    Ruby LSP is an implementation of the language server protocol for Ruby. Several workspace-level settings in the Ruby LSP VS Code extension prior to version 0.10.4 could override the path to the Ruby executable, the version manager executables, or the Bundler `Gemfile` used at startup. A malicious repository containing a `.vscode/settings.json` could set these values to attacker-controlled targets. Opening and trusting the repository would then execute code with the privileges of the developer. The Ruby LSP gem and clients of the language server in other editors are not affected. Version 0.10.4 of the Ruby LSP VS Code extension fixes the issue.

    Product
    ruby-lsp
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Aug 7, 2026Ruby JSON is a JSON implementation for Ruby.CVE-2026-71847 · Other software · ruby · reported by GitHubHigh 8.7

    Ruby JSON is a JSON implementation for Ruby. From 2.20.0 until 2.21.2, Ruby's JSON native C extension clears the consumed JSON::ResumableParser input buffer but leaves state.start, state.cursor, and state.end pointing into released storage. When partial_value reconstructs an incomplete object containing duplicate keys, the duplicate-key warning path calls cursor_position, which dereferences those stale pointers. This results in a heap-use-after-free and can terminate the Ruby process. An attacker who can supply JSON stream data to an application using JSON::ResumableParser may cause process termination when the application calls partial_value on incomplete attacker-controlled input containing duplicate object keys. This issue has been fixed in version 2.21.2.

    Product
    json
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 31, 2026Savon is a Ruby SOAP client.CVE-2026-53510 · Other software · savonrb · reported by GitHubHigh 8.1

    Savon is a Ruby SOAP client. From 0.9.8 until 2.17.2, Savon::Model .all_operations interpolates attacker-controlled WSDL operation names into Ruby source passed to module_eval, allowing Ruby code execution in the application process. This issue is fixed in version 2.17.2.

    Product
    savon
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 30, 2026MessagePack for Ruby is an implementation of the MessagePack binary serialization format.CVE-2026-54522 · Other software · msgpack · reported by GitHubLow 2.1

    MessagePack for Ruby is an implementation of the MessagePack binary serialization format. Prior to 1.8.2, MessagePack::Buffer#clear in ext/msgpack/buffer.c leaves rmem_last, rmem_end, and rmem_owner stale after _msgpack_buffer_shift_chunk returns an rmem page to the shared pool, allowing a subsequent Buffer#write and a second MessagePack::Buffer to alias the page and disclose or corrupt cross-buffer data. This issue is fixed in version 1.8.2.

    Product
    msgpack-ruby
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 29, 2026MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients.CVE-2026-67432 · Other software · modelcontextprotocol · reported by GitHubHigh 7.5

    MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients. Prior to 0.23.0, MCP::Server::Transports::StreamableHTTPTransport in the mcp gem reads and parses an entire JSON-RPC POST body without a size limit, allowing an unauthenticated remote attacker to exhaust process memory. This issue is fixed in version 0.23.0.

    Product
    ruby-sdk
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 29, 2026MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients.CVE-2026-67431 · Other software · modelcontextprotocol · reported by GitHubHigh 8.3

    MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients. Prior to 0.23.0, MCP::Server::Transports::StreamableHTTPTransport in the mcp gem does not bind a session ID to a session owner, allowing an attacker with a stolen session ID to send tools/call requests that execute in the victim's session. This issue is fixed in version 0.23.0.

    Product
    ruby-sdk
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 29, 2026MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients.CVE-2026-67430 · Other software · modelcontextprotocol · reported by GitHubMedium 5.3

    MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients. Prior to 0.23.0, MCP::Server::Transports::StreamableHTTPTransport in the mcp gem does not expire sessions by default, so repeated initialize requests retain unbounded ServerSession objects and can exhaust process memory. This issue is fixed in version 0.23.0.

    Product
    ruby-sdk
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 29, 2026MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients.CVE-2026-63119 · Other software · modelcontextprotocol · reported by GitHubMedium 6.2

    MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients. Prior to 0.23.0, MCP::Server::Transports::StdioTransport and MCP::Client::Stdio in the mcp gem use IO#gets without a byte limit, allowing a peer that sends data without a newline to exhaust process memory. This issue is fixed in version 0.23.0.

    Product
    ruby-sdk
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 29, 2026MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients.CVE-2026-63118 · Other software · modelcontextprotocol · reported by GitHubMedium 6.9

    MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients. Prior to 0.23.0, MCP::Server::Transports::StreamableHTTPTransport in the mcp gem does not validate the HTTP Host or Origin request headers, which allows a malicious browser page to use DNS rebinding to reach a locally running MCP server and invoke exposed tools. This issue is fixed in version 0.23.0.

    Product
    ruby-sdk
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 28, 2026Pagy is agnostic pagination in plain Ruby.CVE-2026-54659 · Other software · ddnexus · reported by GitHubMedium 6.9

    Pagy is agnostic pagination in plain Ruby. From 43.0.0 until 43.5.6, Pagy::I18n.locale= in gem/lib/pagy/modules/i18n/i18n.rb stored locale values verbatim and later used them as <locale>.yml path components, allowing untrusted params[:locale] values with absolute paths or ../ sequences to create a file existence and readability oracle for YAML files. This issue is fixed in version 43.5.6.

    Product
    pagy
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 28, 2026sqlite3 provides Ruby bindings for the SQLite3 embedded database.CVE-2026-54620 · Other software · sparklemotion · reported by GitHubLow 2

    sqlite3 provides Ruby bindings for the SQLite3 embedded database. From 2.1.0 to 2.9.4, the callbacks used for SQLite aggregate functions can be freed while still referenced during aggregation, resulting in a use-after-free. This issue is fixed in version 2.9.5.

    Product
    sqlite3-ruby
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 28, 2026sqlite3 provides Ruby bindings for the SQLite3 embedded database.CVE-2026-54619 · Other software · sparklemotion · reported by GitHubLow 2

    sqlite3 provides Ruby bindings for the SQLite3 embedded database. In version 2.9.4 and earlier, redefining a SQLite function with a different arity frees the previously registered function handler while SQLite may still reference it, resulting in a use-after-free. This issue is fixed in version 2.9.5.

    Product
    sqlite3-ruby
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 28, 2026OAuth is a Ruby wrapper for the OAuth 1.0 and 1.0a protocols, providing clients and servers.CVE-2026-54605 · Other software · ruby-oauth · reported by GitHubHigh 7.2

    OAuth is a Ruby wrapper for the OAuth 1.0 and 1.0a protocols, providing clients and servers. From 0.5.5 to 1.1.5, OAuth::Consumer#token_request parses the raw Location header of a 300 to 399 redirect returned by the OAuth server and follows the redirect recursively, which can mutate the consumer's configuration and expose signed OAuth request metadata, including the Authorization header, to a cross-origin host. This issue is fixed in version 1.1.6.

    Product
    oauth
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 28, 2026OAuth2 is a Ruby wrapper for the OAuth 2.0 and 2.1 authorization frameworks, including OpenID Connect (OIDC).CVE-2026-54603 · Other software · ruby-oauth · reported by GitHubHigh 8.6

    OAuth2 is a Ruby wrapper for the OAuth 2.0 and 2.1 authorization frameworks, including OpenID Connect (OIDC). From 0.4.0 to 2.0.21, a protocol-relative redirect Location returned to OAuth2::Client#request overrides the request authority, so the bearer Authorization header is sent to an attacker-controlled host, leaking the credential. This issue is fixed in version 2.0.22.

    Product
    oauth2
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.
  • Jul 27, 2026Improper Handling of Highly Compressed Data (Data Amplification) vulnerability in Apache Thrift Ruby bindings.CVE-2026-49158 · Websites & servers · Apache Software Foundation · reported by security@apache.orgHigh 7.5

    Improper Handling of Highly Compressed Data (Data Amplification) vulnerability in Apache Thrift Ruby bindings. This issue affects Apache Thrift: before 0.24.0. Users are recommended to upgrade to version 0.24.0, which fixes the issue.

    Product
    Apache Thrift
    What to do
    Apply the vendor’s update. The NVD record links to the advisory.

Where this comes from: the exploited list is CISA’s Known Exploited Vulnerabilities catalog. Everything else is the whole National Vulnerability Database, where each record is published by the team that found the bug (Wordfence, Patchstack, WPScan, the vendors themselves and others); we show who. Exploit odds are FIRST’s EPSS, updated daily. Titles and categories are ours, so check the linked record before acting on a detail. For a write-up of the big ones, see our advisories. Every vendor, and every WordPress plugin and theme with a recorded flaw, also has its own page. All of it is free to reuse as JSON, CSV or RSS.

Weekly security brief

The flaws that hit local websites, every Friday.

One short email: what got exploited this week, which WordPress plugins broke, and what to check. Unsubscribe in one click.

Get in touch

Tell us what you're building.

A website, your marketing, a security check, an app, or the thing you've been running out of a spreadsheet for three years. A few lines is plenty.

01The person who'll do the work writes back
02A short call, then a written plan with the price
03Nothing starts until you say yes
04Hacked or down right now? Call, and we pick up the same day
843-331-6339

Not ready to talk yet? Run the free website check and see what Google sees.

What do you need?
Build
Grow
Protect
Urgent

No newsletter, no sales sequence. Just a reply.