<?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://db.gcve.eu</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>Fri, 02 Oct 2026 18:47:21 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-63627</title>
      <link>https://db.gcve.eu/vuln/fkie_cve-2026-63627</link>
      <description>&lt;p&gt;mppx is a TypeScript interface for machine payments protocol. Prior to 0.8.2, FeePayerPolicy in src/tempo/internal/fee-payer.ts used decodeFunctionData to validate fee-sponsored calldata but did not reject trailing bytes. A client could append nonzero padding that increased intrinsic calldata gas while gas_limit and max_fee_per_gas remained within policy caps, causing the server fee_payer wallet to pay substantially more than the decoded transaction required. The tested 16 KB header limit bounded the demonstrated padding to about 5,500 bytes and produced approximately five times the normal transaction fee. This issue is fixed in version 0.8.2.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;mppx is a TypeScript interface for machine payments protocol. Prior to 0.8.2, FeePayerPolicy in src/tempo/internal/fee-payer.ts used decodeFunctionData to validate fee-sponsored calldata but did not reject trailing bytes. A client could append nonzero padding that increased intrinsic calldata gas while gas_limit and max_fee_per_gas remained within policy caps, causing the server fee_payer wallet to pay substantially more than the decoded transaction required. The tested 16 KB header limit bounded the demonstrated padding to about 5,500 bytes and produced approximately five times the normal transaction fee. This issue is fixed in version 0.8.2.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/fkie_cve-2026-63627</guid>
    </item>
    <item>
      <title>GHSA-727h-3vm5-qwq6 — mppx: Gas Draining with padding</title>
      <link>https://db.gcve.eu/vuln/ghsa-727h-3vm5-qwq6</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: mppx&lt;/p&gt;
&lt;p&gt;### Details
When the server acts as the fee_payer, `mppx` 0.6.27 validates calldata using viem&amp;#39;s `decodeFunctionData`, which is lenient about trailing bytes. The `FeePayerPolicy` caps `gas_limit` (≤ 2 M) and `max_fee_per_gas` (≤ 100 Gwei) but does **not** check calldata length.&lt;/p&gt;
&lt;p&gt;Tempo uses legacy calldata gas pricing: **16 gas per non-zero byte**. Appending `N` bytes of `0x01` padding inflates actual gas used by `N × 16` while keeping `gas_limit` and `max_fee_per_gas` within policy caps. The server cosigns and broadcasts the padded transaction, draining its fee-payer wallet.&lt;/p&gt;
&lt;p&gt;**Vulnerable code path:** `FeePayerPolicy` in `fee-payer.ts` (mppx 0.6.27) enforces `maxGas = 2_000_000` and `maxFeePerGas = 100 Gwei` but has no `calldata.length` bound. The policy check passes because the inflated gas comes from intrinsic calldata cost, not the declared `gas_limit`.&lt;/p&gt;
&lt;p&gt;**Note:** In the experiment, a 16 KB `max_header_length` is enforced, which caps the maximum effective padding at roughly 5,500 bytes. The default padding in this PoC (5,500 bytes) is within that limit.&lt;/p&gt;
&lt;p&gt;### PoC
The PoC is provided below. It is configured to reproduce the attack on Tempo Moderate testnet within a Docker environment. Download the PoC and run:
```bash
unzip mppx_typescript_PoC.zip
cd mppx_typescript
docker build -t mppx-padding .
docker run --rm mppx-padding
``` 
There are more details in `mppx_typescript/README.md`&lt;/p&gt;
&lt;p&gt;### Impact
A malicious client can force the server to pay ~**5x** the normal transaction fe…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: mppx&lt;/p&gt;
&lt;p&gt;### Details
When the server acts as the fee_payer, `mppx` 0.6.27 validates calldata using viem&amp;#39;s `decodeFunctionData`, which is lenient about trailing bytes. The `FeePayerPolicy` caps `gas_limit` (≤ 2 M) and `max_fee_per_gas` (≤ 100 Gwei) but does **not** check calldata length.&lt;/p&gt;
&lt;p&gt;Tempo uses legacy calldata gas pricing: **16 gas per non-zero byte**. Appending `N` bytes of `0x01` padding inflates actual gas used by `N × 16` while keeping `gas_limit` and `max_fee_per_gas` within policy caps. The server cosigns and broadcasts the padded transaction, draining its fee-payer wallet.&lt;/p&gt;
&lt;p&gt;**Vulnerable code path:** `FeePayerPolicy` in `fee-payer.ts` (mppx 0.6.27) enforces `maxGas = 2_000_000` and `maxFeePerGas = 100 Gwei` but has no `calldata.length` bound. The policy check passes because the inflated gas comes from intrinsic calldata cost, not the declared `gas_limit`.&lt;/p&gt;
&lt;p&gt;**Note:** In the experiment, a 16 KB `max_header_length` is enforced, which caps the maximum effective padding at roughly 5,500 bytes. The default padding in this PoC (5,500 bytes) is within that limit.&lt;/p&gt;
&lt;p&gt;### PoC
The PoC is provided below. It is configured to reproduce the attack on Tempo Moderate testnet within a Docker environment. Download the PoC and run:
```bash
unzip mppx_typescript_PoC.zip
cd mppx_typescript
docker build -t mppx-padding .
docker run --rm mppx-padding
``` 
There are more details in `mppx_typescript/README.md`&lt;/p&gt;
&lt;p&gt;### Impact
A malicious client can force the server to pay ~**5x** the normal transaction fe…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/ghsa-727h-3vm5-qwq6</guid>
    </item>
  </channel>
</rss>
