Security audit of stealth-announcer Soroban contract#34
Conversation
Add security audit report and reproducer tests for stellar/stealth-announcer
|
@gloskull Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
|
@truthixify please review and merge |
|
WA-ANN-01 is the kind of finding that's easy to miss and has real downstream impact — the EVM/Stellar parity gap on The Low/Informational items (unbounded metadata, zero ephemeral pub key, indistinguishable CPI calls) are documented with the right severity rating and reproductions; none of these are blocking, but they're each worth a follow-up issue for hardening. Findings table format matches the template, the reproducers in |
Motivation
stealth-announcercrate and produce concrete, machine-verifiable reproducer tests for each finding.Description
stellar/stealth-announcer/audits/2026-05-gpt-5-3-codex.mddocumenting scope, findings (WA-ANN-01..04), reproductions, and recommendations.stellar/stealth-announcer/tests/audit.rsthat verify caller attribution, oversized metadata acceptance, zero ephemeral key acceptance, and permissionless CPI emission.stellar/stealth-announcer/Cargo.tomlto buildrlibin addition tocdylibso the contract client can be imported into tests.## Unreleasedchangelog entry atCHANGELOG.mdand disable test snapshot emission in the new tests via a testEnvconfig to avoid writing snapshot artifacts during normal runs.Testing
cargo fmt -p stealth-announcer -- --checkwhich completed successfully.cargo test -p stealth-announcerwhich passed all tests (the crate's 2 existing unit tests plus the 4 new audit tests; total 6 tests passed).Closes #1