Logótipo oficial do MASTR MASTR Apoiar o trabalho
Índice
← Início da wiki

Technical reference

Solana CPI: follow permissions into the called program

One instruction can call another program using accounts and privileges from the original request.

Source-based reference · Updated 12 September 2026

Os artigos de investigação e as referências são publicados em inglês. A navegação está disponível em sete idiomas.

Neste artigo
  1. The inner call
  2. Why the outer label is incomplete
  3. Inspect the recipient of authority
  4. Sources

The inner call

A cross-program invocation lets one Solana program invoke another. Account privileges propagate under runtime rules: a caller cannot simply turn a read-only account into a writable account or invent a user's signature. PDA signing provides a separate, checked mechanism for the deriving program.

Why the outer label is incomplete

The first instruction shown by a frontend may not describe every effect of the transaction. Its called programs can transfer tokens or modify supplied accounts within the permitted authority. A review stopping at the outer program name misses that call path.

Inspect the recipient of authority

Verify the invoked program ID and the accounts passed into it. Then trace writable and signer privileges through inner instructions. If application code accepts an arbitrary program account where it intended a known token or system program, runtime privilege rules alone do not prove the application's business intent was preserved. The finding should identify the missing program-identity or account constraint.

Sources

Leituras relacionadas

MASTR

Apoiar a investigação independente

As investigações, as provas originais e os guias são de acesso livre. Os donativos voluntários ajudam a financiar a investigação e a manter disponíveis as ferramentas MASTR.

Abrir carteira