checkId: check.binaryanalysis.debuginfod.available plugin: stellaops.doctor.binaryanalysis severity: warn tags: [binaryanalysis, debuginfod, symbols, security, air-gap]

Debuginfod Availability

This Stella Ops Doctor check verifies that a debuginfod endpoint is configured and reachable so binary analysis can recover debug information on demand. It is part of the binary-analysis diagnostics surfaced by stella doctor; see the Doctor overview for how checks are run and reported.

What It Checks

Verifies the DEBUGINFOD_URLS environment variable and debuginfod service connectivity. The check:

Air-Gap Behavior

When the deployment is sealed by AirGap policy, or STELLAOPS_DOCTOR_OFFLINE_PROFILE=true forces Doctor offline mode, this check returns Skip with airGapSealed=true instead of contacting public or external debuginfod endpoints.

Sealed deployments should provide symbols through a local debuginfod mirror or offline symbol bundles imported from the offline kit. Point DEBUGINFOD_URLS at the internal mirror when available; otherwise rely on the binary-analysis offline corpus and symbol-recovery fallback checks.

Why It Matters

Debuginfod provides on-demand debug information (DWARF, source) for ELF binaries. It is the primary mechanism for symbol recovery in binary analysis. Without a reachable debuginfod endpoint, binary matching accuracy drops significantly, reducing the effectiveness of vulnerability correlation and reachability analysis.

Common Causes

How to Fix

Docker Compose

environment:
  DEBUGINFOD_URLS: "https://debuginfod.fedoraproject.org"

Test connectivity:

docker exec <binaryindex-container> curl -I https://debuginfod.fedoraproject.org

Bare Metal / systemd

# Set the environment variable
export DEBUGINFOD_URLS="https://debuginfod.fedoraproject.org"

# Or add to service file
sudo systemctl edit stellaops-binaryindex
# Add: Environment=DEBUGINFOD_URLS=https://debuginfod.fedoraproject.org

# Verify connectivity
curl -I https://debuginfod.fedoraproject.org

Kubernetes / Helm

binaryAnalysis:
  debuginfod:
    urls: "https://debuginfod.fedoraproject.org"

For air-gapped environments, deploy a local debuginfod instance or use offline symbol bundles. See the ground-truth corpus guide for offline setup.

Verification

stella doctor run --check check.binaryanalysis.debuginfod.available