Snyk has a proof-of-concept or detailed explanation of how to exploit this vulnerability.
The probability is the direct output of the EPSS model, and conveys an overall sense of the threat of exploitation in the wild. The percentile measures the EPSS probability relative to all known EPSS scores. Note: This data is updated daily, relying on the latest available EPSS model version. Check out the EPSS documentation for more details.
In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.
Test your applicationsUpgrade github.com/consensys/gnark/backend/plonk/bn254
to version 0.11.0 or higher.
Affected versions of this package are vulnerable to Exposure of Sensitive Information to an Unauthorized Actor due to the handling of multiple commitments within the circuit. An attacker can manipulate the soundness of the entire circuit by choosing all but the last commitment, which are used as random challenges for optimized non-native multiplication, lookup checks, and other operations. This is only exploitable if the native Groth16 verifier is implemented or used with multiple commitments.
This vulnerability can be mitigated by following gnark maintainers' recommendation to use only a single commitment and then derive in-circuit commitments as needed using the std/multicommit
package.