// VEYRA CODE

Understand what is actually shipping.

Veyra Code reads your authorized repositories the way an application security engineer would: it maps what the application exposes, where trust boundaries are supposed to be, and where the code fails to enforce them.

READ-ONLY GITHUB APP · EPHEMERAL ANALYSIS · WORKING COPY DESTROYED AFTER EACH RUN
// 01 · WHAT IS ANALYZED
01

Static application security testing

Injection, unsafe deserialization, path traversal, server-side request forgery, template injection, and the other classes that turn a single unvalidated input into a compromise.

SAST
02

Dependency analysis

Direct and transitive dependencies resolved against known vulnerability data, with reachability considered so an unused package does not generate the same urgency as one on a live request path.

SCA
03

Secret detection

Credentials, API keys, tokens, and private keys committed to source — including history, where secrets most often survive long after someone thinks they removed them.

SECRETS
04

Authentication logic

How sessions are issued, validated, and revoked. Where authentication is applied inconsistently, and which routes silently skip it.

AUTHN
05

Authorization logic

Whether the code verifies that the authenticated caller is permitted to act on the specific object requested — the check most commonly missing in multi-tenant applications.

AUTHZ
06

Database access patterns

Queries that are not scoped to a tenant, raw query construction, over-permissive selects, and data access that bypasses application-level controls.

DATA
07

Input validation

Where untrusted input enters, how far it travels before it is validated, and which sinks it can reach.

FLOW
08

Cross-repository correlation

Services rarely live alone. Veyra links a route in one repository to the service, client, or shared library in another so a boundary that spans repositories is still visible.

GRAPH
// 02 · HOW ACCESS WORKS

Your source code is some of your most sensitive data.

Veyra is built to hold as little of it as possible, for as short a time as possible.

01Customer authorizes repositories
02GitHub App issues short-lived, read-only token
03Veyra control plane schedules assessment
04Ephemeral isolated scanner starts
05Repository retrieved into the sandbox
06Security analysis runs
07Normalized findings generated
08Working copy destroyed
09Findings retained per your policy

Permissions Veyra requests

Repository contents: read. Metadata: read. Pull requests: read, only when the feature requires it. Veyra does not request write access, and cannot modify, merge, or delete your source code. Any future capability that needs additional permission will be requested separately and explicitly.

Language and ecosystem coverage.

Coverage depth varies by ecosystem. Where analysis is shallower, Veyra says so in the assessment rather than reporting a clean result it cannot support.

EcosystemStatic analysisDependenciesRoute discovery
JavaScript / TypeScriptFullnpm, yarn, pnpmExpress, Fastify, Next.js, NestJS
PythonFullpip, Poetry, uvDjango, Flask, FastAPI
RubyFullBundlerRails
GoFullGo modulesnet/http, Gin, Echo, Chi
Java / KotlinFullMaven, GradleSpring Boot
PHPStandardComposerLaravel, Symfony
C# / .NETStandardNuGetASP.NET Core
Infrastructure as codeFullTerraform, Docker, Kubernetes manifests

Working in something not listed? Tell us what you build — coverage is prioritized by what customers actually ship.

// 03 · EXAMPLE

What a code finding looks like.

This is the canonical example used across this site. It comes from an intentionally vulnerable demonstration application, not from a customer.

customer-api · src/routes/invoices.ts
// invoices are fetched by id for any authenticated session
router.get('/invoices/:invoiceId', requireAuth, async (req, res) => {
  const invoice = await db.invoices.findById(req.params.invoiceId)
  if (!invoice) return res.status(404).json({ error: 'not_found' })
  return res.json(invoice)  // returned without ownership validation
})

The route authenticates. It does not authorize. Veyra links the handler to the public endpoint that reaches it and to the billing datastore behind it, which is what raises this from a code smell to a critical finding. See the full finding on the homepage

Common questions

Does Veyra store our source code?
A working copy exists only inside an ephemeral, isolated analysis environment for the duration of the assessment, and is destroyed when the run completes. Veyra retains findings and the minimum metadata needed to describe them — file paths, line references, and the code excerpts included as evidence — according to the retention policy on your plan. See the Trust Center.
Is our code sent to a third-party AI provider?
The system is designed to minimize sensitive code exposure. Analysis runs inside Veyra-controlled infrastructure, and where AI assisted reasoning is applied, it operates on the minimum context required rather than shipping whole repositories to external providers. Current subprocessors are listed in the Trust Center.
Can Veyra open pull requests to fix issues?
No. Veyra requests read-only access and cannot modify your repositories. Findings include specific remediation guidance and can be exported into a GitHub issue for your team to action.
What happens to monorepos?
A monorepo counts as one repository. Veyra maps the services and packages inside it and correlates across them, which is usually where cross-boundary issues hide.

Start with a baseline assessment.

Authorize your assets and receive a prioritized view of what is actually exposed.