<?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://vulnerability.circl.lu</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>Thu, 01 Oct 2026 21:00:05 +0000</lastBuildDate>
    <item>
      <title>CVE-2025-69263 — pnpm Lockfile Integrity Bypass Allows Remote Dynamic Dependencies</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2025-69263</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; pnpm, Red Hat JBoss Enterprise Application Platform 8, Red Hat JBoss Enterprise Application Platform Expansion Pack&lt;/p&gt;
&lt;p&gt;pnpm is a package manager. Versions 10.26.2 and below store HTTP tarball dependencies (and git-hosted tarballs) in the lockfile without integrity hashes. This allows the remote server to serve different content on each install, even when a lockfile is committed. An attacker who publishes a package with an HTTP tarball dependency can serve different code to different users or CI/CD environments. The attack requires the victim to install a package that has an HTTP/git tarball in its dependency tree. The victim&amp;#39;s lockfile provides no protection. This issue is fixed in version 10.26.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; pnpm, Red Hat JBoss Enterprise Application Platform 8, Red Hat JBoss Enterprise Application Platform Expansion Pack&lt;/p&gt;
&lt;p&gt;pnpm is a package manager. Versions 10.26.2 and below store HTTP tarball dependencies (and git-hosted tarballs) in the lockfile without integrity hashes. This allows the remote server to serve different content on each install, even when a lockfile is committed. An attacker who publishes a package with an HTTP tarball dependency can serve different code to different users or CI/CD environments. The attack requires the victim to install a package that has an HTTP/git tarball in its dependency tree. The victim&amp;#39;s lockfile provides no protection. This issue is fixed in version 10.26.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2025-69263</guid>
    </item>
    <item>
      <title>GHSA-7vhp-vf5g-r2fw — pnpm Has Lockfile Integrity Bypass that Allows Remote Dynamic Dependencies</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-7vhp-vf5g-r2fw</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: pnpm&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;HTTP tarball dependencies (and git-hosted tarballs) are stored in the lockfile without integrity hashes. This allows the remote server to serve different content on each install, even when a lockfile is committed.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;When a package depends on an HTTP tarball URL, pnpm&amp;#39;s tarball resolver returns only the URL without computing an integrity hash:&lt;/p&gt;
&lt;p&gt;`resolving/tarball-resolver/src/index.ts`:
```javascript
return {
  resolution: {
    tarball: resolvedUrl,
    // No integrity field
  },
  resolvedVia: &amp;#39;url&amp;#39;,
}
```&lt;/p&gt;
&lt;p&gt;The resulting lockfile entry has no integrity to verify:
```yaml
remote-dynamic-dependency@http://example.com/pkg.tgz:
  resolution: {tarball: http://example.com/pkg.tgz}
  version: 1.0.0
```&lt;/p&gt;
&lt;p&gt;Since there is no integrity hash, pnpm cannot detect when the server returns different content.&lt;/p&gt;
&lt;p&gt;This affects:
- HTTP/HTTPS tarball URLs (`&amp;#34;pkg&amp;#34;: &amp;#34;https://example.com/pkg.tgz&amp;#34;`)
- Git shorthand dependencies (`&amp;#34;pkg&amp;#34;: &amp;#34;github:user/repo&amp;#34;`)
- Git URLs (`&amp;#34;pkg&amp;#34;: &amp;#34;git+https://github.com/user/repo&amp;#34;`)&lt;/p&gt;
&lt;p&gt;npm registry packages are not affected as they include integrity hashes from the registry metadata.&lt;/p&gt;
&lt;p&gt;### PoC&lt;/p&gt;
&lt;p&gt;See attached [pnpm-bypass-integrity-poc.zip](https://github.com/user-attachments/files/23819648/pnpm-bypass-integrity-poc.zip)&lt;/p&gt;
&lt;p&gt;The POC includes:
- A server that returns different tarball content on each request
- A `malicious-package` that depends on the HTTP tarball
- A `victim` project that depends on `malicious-package`&lt;/p&gt;
&lt;p&gt;To run:
```bash
cd pnpm-bypass-int…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: pnpm&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;HTTP tarball dependencies (and git-hosted tarballs) are stored in the lockfile without integrity hashes. This allows the remote server to serve different content on each install, even when a lockfile is committed.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;When a package depends on an HTTP tarball URL, pnpm&amp;#39;s tarball resolver returns only the URL without computing an integrity hash:&lt;/p&gt;
&lt;p&gt;`resolving/tarball-resolver/src/index.ts`:
```javascript
return {
  resolution: {
    tarball: resolvedUrl,
    // No integrity field
  },
  resolvedVia: &amp;#39;url&amp;#39;,
}
```&lt;/p&gt;
&lt;p&gt;The resulting lockfile entry has no integrity to verify:
```yaml
remote-dynamic-dependency@http://example.com/pkg.tgz:
  resolution: {tarball: http://example.com/pkg.tgz}
  version: 1.0.0
```&lt;/p&gt;
&lt;p&gt;Since there is no integrity hash, pnpm cannot detect when the server returns different content.&lt;/p&gt;
&lt;p&gt;This affects:
- HTTP/HTTPS tarball URLs (`&amp;#34;pkg&amp;#34;: &amp;#34;https://example.com/pkg.tgz&amp;#34;`)
- Git shorthand dependencies (`&amp;#34;pkg&amp;#34;: &amp;#34;github:user/repo&amp;#34;`)
- Git URLs (`&amp;#34;pkg&amp;#34;: &amp;#34;git+https://github.com/user/repo&amp;#34;`)&lt;/p&gt;
&lt;p&gt;npm registry packages are not affected as they include integrity hashes from the registry metadata.&lt;/p&gt;
&lt;p&gt;### PoC&lt;/p&gt;
&lt;p&gt;See attached [pnpm-bypass-integrity-poc.zip](https://github.com/user-attachments/files/23819648/pnpm-bypass-integrity-poc.zip)&lt;/p&gt;
&lt;p&gt;The POC includes:
- A server that returns different tarball content on each request
- A `malicious-package` that depends on the HTTP tarball
- A `victim` project that depends on `malicious-package`&lt;/p&gt;
&lt;p&gt;To run:
```bash
cd pnpm-bypass-int…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-7vhp-vf5g-r2fw</guid>
    </item>
  </channel>
</rss>
