Install any skill in seconds. Free to start, no credit card required.
Get Started Free →trailofbits/cairo-vulnerability-scanner
Scans Cairo/StarkNet smart contracts for 6 critical vulnerabilities including felt252 arithmetic overflow, L1-L2 messaging issues, address conversion problems, and signature replay.
Passed 18 of 22 test cases with the skill, and 14 of 22 without it.
and 3 more in the full report
5 fixed13 passed either way3 still failing1 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 5 test cases the skill fixed. Same model, same prompt, with and without the skill.
We want to configure our CI pipeline using Caracal to specifically detect L1 message handlers that omit sender validation. Which specific Caracal detector flag should we pass to `caracal detect`?
| Checked | Without skill | With skill |
|---|---|---|
| Specifies the detector flag `unchecked-l1-handler-from` | Missed | Passed |
The instructions your model reads when the skill loads.
Systematically scan Cairo smart contracts on StarkNet for platform-specific security vulnerabilities related to arithmetic, cross-layer messaging, and cryptographic operations. This skill encodes 6 critical vulnerability patterns unique to Cairo/StarkNet ecosystem.
.cairo// Cairo contract indicators
#[contract]
mod MyContract {
use starknet::ContractAddress;
#[storage]
struct Storage {
balance: LegacyMap<ContractAddress, felt252>,
}
#[external(v0)]
fn transfer(ref self: ContractState, to: ContractAddress, amount: felt252) {
// Contract logic
}
#[l1_handler]
fn handle_deposit(ref self: ContractState, from_address: felt252, amount: u256) {
// L1 message handler
test cases passed, vs 14 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.