<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://cve.radiocsirt.org</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Mon, 05 Oct 2026 17:21:55 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-74876 — openssl_encrypt before 1.4.0 Unverified Key Bundle Encryption</title>
      <link>https://cve.radiocsirt.org/vuln/cve-2026-74876</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; jahlives openssl_encrypt&lt;/p&gt;
&lt;p&gt;openssl_encrypt versions before 1.4.0 contain a vulnerability in PublicKeyBundle.from_dict() that creates key bundles from untrusted data without verifying signatures. Attackers can call from_dict() followed by to_identity() without signature verification to encrypt data using attacker-controlled public keys, leaking secrets.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; jahlives openssl_encrypt&lt;/p&gt;
&lt;p&gt;openssl_encrypt versions before 1.4.0 contain a vulnerability in PublicKeyBundle.from_dict() that creates key bundles from untrusted data without verifying signatures. Attackers can call from_dict() followed by to_identity() without signature verification to encrypt data using attacker-controlled public keys, leaking secrets.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/cve-2026-74876</guid>
    </item>
    <item>
      <title>GHSA-8h88-gxp3-j7pg — openssl-encrypt's unverified key bundle from_dict() + to_identity() path allows encryption to attacker keys</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-8h88-gxp3-j7pg</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: openssl-encrypt&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;The `PublicKeyBundle.from_dict()` method in `openssl_encrypt/modules/key_bundle.py` at **lines 329-361** creates bundles from untrusted data without verifying the signature. The docstring warns to call `verify_signature()` after creation, but the `to_identity()` method (line 363-391) can convert an unverified bundle directly to an `Identity` object.&lt;/p&gt;
&lt;p&gt;### Affected Code&lt;/p&gt;
&lt;p&gt;```python
@classmethod
def from_dict(cls, data: Dict) -&amp;gt; &amp;#34;PublicKeyBundle&amp;#34;:
    &amp;#34;&amp;#34;&amp;#34;
    SECURITY: Does NOT verify signature. Call verify_signature() after creation.
    &amp;#34;&amp;#34;&amp;#34;
    # Creates bundle without verification
```&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;If `from_dict()` followed by `to_identity()` is called without an intervening `verify_signature()` call, encryption could be performed against an attacker&amp;#39;s public key, leaking secrets. While `key_resolver.py` (lines 146-147) does verify before use, the unguarded API path remains directly callable.&lt;/p&gt;
&lt;p&gt;### Recommended Fix&lt;/p&gt;
&lt;p&gt;- Add a `verified` flag to `PublicKeyBundle` that must be set before `to_identity()` can be called
- Or have `to_identity()` automatically call `verify_signature()` and raise on failure
- Or make `from_dict()` require verification as part of construction&lt;/p&gt;
&lt;p&gt;### Fix&lt;/p&gt;
&lt;p&gt;Fixed in commit `f4a1ba6` on branch `releases/1.4.x` — from_dict() now verifies self_signature by default (verify=True parameter); raises ValueError on verification failure.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: openssl-encrypt&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;The `PublicKeyBundle.from_dict()` method in `openssl_encrypt/modules/key_bundle.py` at **lines 329-361** creates bundles from untrusted data without verifying the signature. The docstring warns to call `verify_signature()` after creation, but the `to_identity()` method (line 363-391) can convert an unverified bundle directly to an `Identity` object.&lt;/p&gt;
&lt;p&gt;### Affected Code&lt;/p&gt;
&lt;p&gt;```python
@classmethod
def from_dict(cls, data: Dict) -&amp;gt; &amp;#34;PublicKeyBundle&amp;#34;:
    &amp;#34;&amp;#34;&amp;#34;
    SECURITY: Does NOT verify signature. Call verify_signature() after creation.
    &amp;#34;&amp;#34;&amp;#34;
    # Creates bundle without verification
```&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;If `from_dict()` followed by `to_identity()` is called without an intervening `verify_signature()` call, encryption could be performed against an attacker&amp;#39;s public key, leaking secrets. While `key_resolver.py` (lines 146-147) does verify before use, the unguarded API path remains directly callable.&lt;/p&gt;
&lt;p&gt;### Recommended Fix&lt;/p&gt;
&lt;p&gt;- Add a `verified` flag to `PublicKeyBundle` that must be set before `to_identity()` can be called
- Or have `to_identity()` automatically call `verify_signature()` and raise on failure
- Or make `from_dict()` require verification as part of construction&lt;/p&gt;
&lt;p&gt;### Fix&lt;/p&gt;
&lt;p&gt;Fixed in commit `f4a1ba6` on branch `releases/1.4.x` — from_dict() now verifies self_signature by default (verify=True parameter); raises ValueError on verification failure.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-8h88-gxp3-j7pg</guid>
    </item>
  </channel>
</rss>
