Lucene search
+L
RustSecMost viewed

1471 matches found

RustSec
RustSec
•added 2026/11/10 12:00 p.m.•7 views

`verify_x509_cert` does not check the certificate validity period

tdxworkloadattestation::verification::x509::verifyx509cert, available with the host-verification feature, checked that issuercert issued cert and verified the certificate signature. It did not check the certificate's validity period, so it accepted expired and not-yet-valid certificates. With the...

5.9CVSS6AI score0.0011EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/10 12:00 p.m.•7 views

Panic on a GCP launch endorsement without TDX measurements

GcpTdxHost::verifylaunchendorsement, available with the host-gcp-tdx feature, read uefigolden.tdx.measurements0 without checking that the golden measurement contains a TDX measurement. If a launch endorsement's golden measurement had no TDX measurements, the call panicked with an index out of...

5.7CVSS6AI score0.00102EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/09 12:00 p.m.•7 views

`electrumd` was removed from crates.io for malicious code

electrumd attempted to send telemetry from the build environment to an arbitrary URL. The malicious crate had 5 versions published on 2026-01-26, approximately 10 months before removal, and had no evidence of actual usage. This crate had no dependencies on crates.io. Thanks to Bitbison for the...

5.9AI score
SaveExploits0
RustSec
RustSec
•added 2026/11/09 12:00 p.m.•7 views

`env-test-guard` was removed from crates.io for malicious code

env-test-guard attempted to exfiltrate credentials from the environment to an arbitrary URL. The malicious crate had 2 versions published on 2026-03-24 and 2026-03-25, approximately 8 months before removal, and had no evidence of actual usage. This crate had no dependencies on crates.io. Thanks t...

5.9AI score
SaveExploits0
RustSec
RustSec
•added 2026/11/09 12:00 p.m.•7 views

`gabby-types-sec` was removed from crates.io for malicious code

gabby-types-sec attempted to send telemetry from the build environment to an arbitrary URL. The malicious crate had 1 version published on 2026-02-17, approximately 9 months before removal, and had no evidence of actual usage. This crate had no dependencies on crates.io. Thanks to Bitbison for th...

6AI score
SaveExploits0
RustSec
RustSec
•added 2026/11/09 12:00 p.m.•7 views

`webhook_commands` was removed from crates.io for malicious code

webhookcommands attempted to send telemetry from the execution environment to an arbitrary URL. The malicious crate had 1 version published on 2026-02-13, approximately 9 months before removal, and had no evidence of actual usage. This crate had no dependencies on crates.io. Thanks to Bitbison fo...

6.2AI score
SaveExploits0
RustSec
RustSec
•added 2026/11/06 12:00 p.m.•7 views

`shinchina-test` was removed from crates.io for malicious code

shinchina-test attempted to send telemetry from the build environment to an arbitrary URL. The malicious crate had 1 version published on 2025-03-02, approximately 20 months before removal, and had no evidence of actual usage. This crate had no dependencies on crates.io. Thanks to Bitbison for th...

6AI score
SaveExploits0
RustSec
RustSec
•added 2026/11/06 12:00 p.m.•7 views

`shinchina` was removed from crates.io for malicious code

shinchina attempted to send telemetry from the build environment to an arbitrary URL. The malicious crate had 1 version published on 2025-03-01, approximately 20 months before removal, and had no evidence of actual usage. This crate had no dependencies on crates.io. Thanks to Bitbison for the...

6AI score
SaveExploits0
RustSec
RustSec
•added 2026/11/06 12:00 p.m.•7 views

Request smuggling through malformed chunked request trailers

The HTTP/1 chunked decoder accepts a bare line feed after the final chunk as the start of a trailer instead of rejecting the malformed request. When an upstream proxy reuses a connection and either pipelines the requests or does not take steps to validate the chunked stream, the decoder can consu...

6.1AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/04 12:00 p.m.•7 views

Memory exhaustion when parsing a crafted `iloc` box

heifer-isobmff read the item and extent counts of the iloc box item locations from the file and allocated memory for them before checking that the box was large enough to hold that many entries. Extents that declare no field at all take zero bytes each, so a small crafted file could declare an...

5.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/04 12:00 p.m.•7 views

Panic on chroma QP offsets enabled with an empty offset list

An HEVC Range Extensions stream can set cuchromaqpoffsetenabledflag in a slice while its picture parameter set carries an empty chroma QP offset list. The decoder then read the list at the signalled index, which panicked on the out-of-range access. A panic aborts the decoding thread, or the whole...

5.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/03 12:00 p.m.•7 views

Out-of-bounds read when decoding internal keys shorter than 16 bytes

InternalKeyRef::fromencoded is a safe constructor whose only length check is debugassert!encoded.len = 16, which is compiled out in release builds. Its accessors perform unchecked length arithmetic on the slice: userkey slices &encoded..len - 16, trailer/seqnum pass len - 16 and timestamp passes...

6.1AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/08/24 12:00 p.m.•7 views

Rejected authentication challenges can poison the Key Vault scope cache

Affected versions of KeyVaultAuthorizer::onchallenge cache the authentication scope from a WWW-Authenticate response before verifying that the challenge resource matches the requested endpoint. When verification rejects the challenge, the scope remains cached. A subsequent request through the sam...

5.8AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/06 12:00 p.m.•6 views

`sec-gemini` was removed from crates.io for malicious code

sec-gemini attempted to send telemetry from the build environment to an arbitrary URL. The malicious crate had 1 versions published on 2025-06-19, approximately 17 months before removal, and had no evidence of actual usage. This crate had no dependencies on crates.io. Thanks to Bitbison for the...

5.9AI score
SaveExploits0
RustSec
RustSec
•added 2026/11/05 12:00 p.m.•6 views

Unbounded response body buffering in Streamable HTTP clients

Before 3.9.0, the built-in Streamable HTTP clients in rmcp read non-streaming HTTP response bodies into memory with no size limit. Both the reqwest client transport-streamable-http-client-reqwest and the Unix socket client transport-streamable-http-client-unix-socket were affected: -...

6AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/04 12:00 p.m.•6 views

Panic on an HEVC tile layout that does not match the active SPS

An HEVC picture parameter set PPS stores explicit tile column widths and row heights computed against the sequence parameter set SPS active when it was parsed. A crafted stream can redefine that SPS afterwards, so that the tile sizes add up to more than the picture. The decoder then indexed past...

5.8AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/10/27 12:00 p.m.•6 views

xattr functions mark unwritten bytes as initialized when given a zero-length buffer

The extended-attribute functions in rustix::fs getxattr, lgetxattr, fgetxattr, listxattr, llistxattr and flistxattr write into a Buffer and then mark as many bytes initialized as the system call reported. When the buffer has zero length, the operating system treats the call as a size query: it...

6.3AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/08/24 12:00 p.m.•6 views

Rejected authentication challenges can poison the Key Vault scope cache

Affected versions of KeyVaultAuthorizer::onchallenge cache the authentication scope from a WWW-Authenticate response before verifying that the challenge resource matches the requested endpoint. When verification rejects the challenge, the scope remains cached. A subsequent request through the sam...

5.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/08/11 12:00 p.m.•6 views

`enter_l2_vcpu` passes the wrong RCX operand to `TDG.VP.ENTER`

tdxguest::tdcall::enterl2vcpu invokes the TDG.VP.ENTER TDCALL. RCX must carry the L2 VM index in bits 53:52 and the invalidation control value InvdTranslations, 0 to 3 in bits 1:0. The function computed that value as l2vmidx 52 | invdtranslations as u64, but then passed the raw l2vmidx in RCX...

4.6CVSS5.9AI score0.00149EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/11 12:00 p.m.•5 views

Transaction::from_json holds an input txid that is not 64 hex digits and writes the input as spending the zero txid

Transaction::fromjson, for a document with no hex member, held each input's txid member as given. An input txid that is not 64 hex digits "zz", "", 63 or 65 digits, characters that are not hex digits answered Ok: sourcetxid and tojson gave the text back, while tobinary wrote the input as spending...

6AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/11 12:00 p.m.•5 views

Signature::from_der reads a signature with bytes after it, a wrong sequence length or an unneeded zero as the signature

Signature::fromder read a DER-encoded ECDSA signature leniently. It read as the signature: the signature followed by other bytes; a sequence length shorter than its contents, or longer with bytes after them a length byte with its high bit set among them; and an R or S preceded by a zero byte it d...

6AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/10 12:00 p.m.•5 views

BEEF validation answers valid for a raw entry that is not a transaction

Beef::mergerawtx and BeefTx::fromrawtx accept raw bytes without a Result. For bytes that are not exactly one transaction a transaction followed by bytes, a cut transaction, bytes that are no transaction at all, Beef::sorttxs, verifystructure, verifyvalid and isvalid could answer valid, even with ...

6AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/10 12:00 p.m.•5 views

Transaction readers accept trailing bytes, so a parsed transaction can carry another transaction id

Transaction::frombinary and Transaction::fromhex read one transaction from the front of their input, did not check that the input ended there, and kept the whole input as the transaction's cached serialization: tobinary, tohex and id then answered for bytes that are not the transaction's...

6.1AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/10/30 12:00 p.m.•5 views

Agent server signs with confirm-constrained keys without calling `Agent::confirm`

A key added to an SSH agent with the confirm constraint what ssh-add -c sends must not be used to sign until the user approves each use. russh's agent server russh::keys::agent::server accepted the constraint, but when a sign request arrived for such a key it used a fixed true in place of the...

8.3CVSS6.1AI score0.00156EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/10/22 12:00 p.m.•5 views

OAuth client SSRF filter checks host strings, not resolved addresses

From 2.0.0 until 3.7.0, the rmcp OAuth client decided whether it may fetch an authorization server's metadata URL by inspecting only the host string. It rejected literal loopback, private and link-local IP addresses and known cloud metadata hostnames, but it did not resolve other hostnames. A...

5.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/10/20 12:00 p.m.•5 views

Unbounded tool schema cache in Streamable HTTP server transport

From 3.0.0 until 3.6.0, StreamableHttpService cached the result of ServerHandler::gettool in a process-wide map keyed by the tool name of incoming tools/call requests. The map had no size limit and no eviction, and it also cached unknown tool names. An entry was added while the request headers we...

5.8AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/10/05 12:00 p.m.•5 views

`astral-tl` is unmaintained

Astral deprecated astral-tl on October 5, 2026. All versions of the crate are unmaintained. For HTML parsing, Astral recommends astral-html as a replacement. astral-html: https://crates.io/crates/astral-html...

5.9AI score
SaveExploits0
RustSec
RustSec
•added 2026/10/01 12:00 p.m.•5 views

`pin-utils` is unmaintained

The upstream repository was archived on October 1, 2026, after the release of version 0.1.1. For local pinning, replace pinmut! with core::pin::pin!, available since Rust 1.68. For pin projection, replace unsafepinned! and unsafeunpinned! with pin-project or pin-project-lite. upstream repository:...

6AI score
SaveExploits0
RustSec
RustSec
•added 2026/08/24 12:00 p.m.•5 views

Rejected authentication challenges can poison the Key Vault scope cache

Affected versions of KeyVaultAuthorizer::onchallenge cache the authentication scope from a WWW-Authenticate response before verifying that the challenge resource matches the requested endpoint. When verification rejects the challenge, the scope remains cached. A subsequent request through the sam...

5.8AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/08/20 12:00 p.m.•5 views

Paths or symlinks ending in a slash escape the sandbox

cap-primitives resolves a path inside a sandboxed directory one component at a time and opens the last component with ONOFOLLOW, so that a symlink there cannot lead out of the directory. When the path ended in /, the resolver added the slash back to the last component before opening it. With a...

6AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/08/11 12:00 p.m.•5 views

Inverted bitmap validation in `invalidate_l2_cached_ept`

tdxguest::tdcall::invalidatel2cachedept takes a bitmap that selects the L2 VMs whose cached EPT translations should be invalidated. Bits 1 through 3 select L2 VMs 1 through 3, and all other bits are reserved. The input check was inverted: if l2vmidxbitmap & !0b1110 == 0 return...

4.6CVSS5.8AI score0.00304EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/04/19 12:00 p.m.•5 views

Out-of-bounds write in `aes::unwrap_key`

openssl::aes::unwrapkey guarded the size of its output buffer with an inverted assertion, out.len + 8 = in.len. Instead of rejecting an out buffer too small for the unwrapped key, it rejected buffers larger than needed and accepted buffers that were too small. When out is shorter than in.len - 8...

9.2CVSS8.5AI score0.00251EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/11 12:00 p.m.•4 views

Panic when decoding malformed Ed25519 keys from Base64

In version 0.11.1 and earlier of vodozemac, Ed25519PublicKey::frombase64 and Ed25519SecretKey::frombase64 panic on malformed input instead of returning an error, if the input decodes to 31 or 33 bytes instead of the expected 32 bytes. An attacker who can supply a key to an application using...

6AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/07 12:00 p.m.•4 views

eazip: symlink-target validation checks the wrong argument, allowing extraction path escapes on Windows

When extracting archives, eazip validates symlink entries before writing them. The validation function validatesymlink src/utils/mod.rs scans for backslash and NUL bytes, but passes the symlink's name where the symlink's target was intended: rust memchr2b'\', b'\0', name.asbytes // should be...

6.3AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/11/06 12:00 p.m.•4 views

`top_level_crate` was removed from crates.io for malicious code

toplevelcrate attempted to send telemetry from the build environment to an arbitrary URL. The malicious crate had 1 version published on 2025-03-01, approximately 20 months before removal, and had no evidence of actual usage. This crate had no dependencies on crates.io. Thanks to Bitbison for the...

6AI score
SaveExploits0
RustSec
RustSec
•added 2026/10/30 12:00 p.m.•4 views

`sqlcipher-src` via C SQLite CVE-2026-119375

SQLite versions before 3.54.0 can return uninitialized page-cache memory when a process opens a database file together with a sibling write-ahead-log -wal file whose page size differs from the database's. A crafted pair of files can make ordinary queries return stale bytes from the process's...

6.8CVSS5.7AI score0.00195EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

Unbounded retries on truncated responses in the name server pool

When an upstream answer had the TC truncated bit set, the resolver's name server pool disabled UDP and sent the query again. It did this for every truncated answer, including answers that already came over TCP, and it kept no count of retries. A name server that sets TC on every answer, which...

8.7CVSS6AI score0.00343EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

`Resolver::lookup` and `lookup_ip` returned records that failed DNSSEC validation

With DNSSEC validation enabled, Resolver::lookup and Resolver::lookupip returned Ok with the records even when validation found the response bogus. The result was only visible in each record's proof status, which callers had to inspect themselves. Applications that enable validation and treat a...

8.7CVSS7.2AI score0.00231EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

Inverted NSEC3 comparison lets one record "prove" that almost any name does not exist

When DNSSEC validation looks for the NSEC3 record that covers a hashed name, the last record in the zone's hash chain needs special handling, because its next hashed owner name sorts before its own hash. For that record the two comparisons were reversed: it was treated as covering every hash belo...

8.3CVSS6AI score0.00279EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

Recursor followed every glueless name server in a referral (no fixed hickory-recursor release)

For referrals whose name servers are outside the delegated zone and come without glue, the recursor resolved every listed name server, with no cap on referral width and no per-query work budget. Someone who controls a zone can use this to make each client query send a large number of queries to a...

8.7CVSS6.1AI score0.00409EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

Spoofed malformed UDP datagrams abort DNS lookups

While waiting for a reply on a UDP connection, the client parsed every datagram that arrived from the name server's address and port before checking its message ID. If parsing failed, the attempt ended with an error instead of dropping the datagram and waiting for the real reply. The receive loop...

8.2CVSS6AI score0.00367EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

Recursor kept querying cyclic glueless sibling delegations

Two zones can each delegate to name servers named only inside the other zone, with no glue records the cyclic sibling case in RFC 9471 section 2.3. Such delegations can never be resolved, but the recursor did not stop when it came back to a zone it was already resolving. It kept sending queries...

8.7CVSS6AI score0.00343EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

NXDOMAIN accepted for an empty non-terminal that the NSEC record proves exists

When an NSEC record's next domain name is below the queried name, the queried name exists as an empty non-terminal RFC 8020 section 3.1. The NSEC validator did not check for this case and accepted an NXDOMAIN response backed by such a record as secure. The response code is not covered by any...

6.3CVSS6.1AI score0.0012EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

NXDOMAIN accepted for a proven empty non-terminal (hickory-proto)

Up to 0.26.0-alpha.1, hickory-proto's NSEC validation accepted an NXDOMAIN response as secure even when the covering NSEC record's next domain name was below the queried name, which proves the name exists as an empty non-terminal. Because the response code is not signed, someone who can modify DN...

6.3CVSS6.1AI score0.0012EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

DNSSEC validation accepted an unrelated signed RRset as the answer (hickory-proto)

Up to 0.26.0-alpha.1, hickory-proto's DNSSEC validation treated a response with a non-empty answer section as a positive answer if its records validated, without checking that any of them matched the queried name and type. Someone who can answer or modify DNS responses could return a genuine sign...

6.9CVSS6AI score0.00126EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

Zone file lexer panics on a token of 4096 or more characters

The zone file lexer read each token in a loop capped at 4,096 iterations, with an assert! on the loop counter as a safety bound. A single token long enough to reach that bound, for example a very long name or character string in a zone file, triggered the assertion and the parser panicked instead...

8.7CVSS6AI score0.00343EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

NSEC3 records from another zone were accepted in proofs of nonexistence

When DNSSEC validation used NSEC3 records to prove that a name or record type does not exist, it compared only the hashed first label of each NSEC3 owner name with the hash of the name being checked. The rest of the owner name, which says which zone the record belongs to, was not checked. Someone...

8.7CVSS6AI score0.00255EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

DNSSEC validation cache could reuse an Insecure result for a different name

The DNSSEC validation cache used a 64-bit hash of the query as its key, and two keys with the same hash counted as equal. The Hash implementation of Name hashed the bytes of the labels but not where one label ends and the next begins, so names that differ only in the placement of dots such as ab....

8.2CVSS6AI score0.00281EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

DNSSEC validation accepted a validly signed but unrelated RRset as the answer

When a response had a non-empty answer section, DNSSEC validation treated it as a positive answer as long as the records in it validated. It did not check that any of those records had the queried name and either the queried type or type CNAME. An attacker who can answer or modify DNS responses c...

6.9CVSS5.9AI score0.00126EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/09/03 12:00 p.m.•4 views

Panic on a malformed `alpn` value when parsing SVCB or HTTPS records from text

When an SVCB or HTTPS record is parsed from its text zone file form, the alpn service parameter value is split into a list of protocol names. That step called expect on the result, on the assumption that it could not fail. A malformed value, such as one with an unbalanced quote alpn="h, two comma...

8.7CVSS6AI score0.00343EPSS
SaveExploits0Affected Software1
Total number of security vulnerabilities1471