Skip to main content
With plerion iac, you can scan Infrastructure as Code (IaC) files for security findings and vulnerabilities. Supported formats include Terraform, CloudFormation, Bicep, ARM, Kubernetes, Helm, and Dockerfile.

Synopsis

plerion iac <subcommand> [options]

Subcommands

scan

Upload a zip file for IaC scanning.
plerion iac scan --file <file.zip> --name <artifact-name>
Maximum upload size is 4.4 MB. Zip your IaC files before uploading.

list-scans

List previous IaC scans.
plerion iac list-scans [options]
FlagTypeDescription
--idsstringFilter by scan IDs (comma-separated)
--artifact-namestringFilter by artifact names (comma-separated)
--statusstringFilter by status: SUCCESS, FAILURE (comma-separated)
--sort-bystringSort by field (id, createdAt, updatedAt, artifactName, status)
--sort-orderstringasc or desc
--per-pagenumberResults per page (default: 50, max: 1000)
--allflagFetch all pages automatically

get-findings

Get security findings from a completed scan.
plerion iac get-findings --scan-id <scan-id> [options]
FlagTypeDescription
--scan-idstring(required) Scan ID returned from iac scan
--idsstringFilter by finding IDs (comma-separated)
--statusstringFilter by result: PASSED, FAILED (comma-separated)
--severitystringFilter by severity: CRITICAL, HIGH, MEDIUM, LOW (comma-separated)
--detection-idstringFilter by detection IDs (comma-separated)
--typestringFilter by type (comma-separated, e.g. terraform, kubernetes)
--filestringFilter by file paths (comma-separated)
--sort-bystringSort by field (id, createdAt, updatedAt, artifactName, status)
--sort-orderstringasc or desc
--per-pagenumberResults per page (default: 50, max: 1000)
--allflagFetch all pages automatically

get-vulnerabilities

Get vulnerabilities from a completed scan.
plerion iac get-vulnerabilities --scan-id <scan-id> [options]
FlagTypeDescription
--scan-idstring(required) Scan ID returned from iac scan
--idsstringFilter by vulnerability IDs (comma-separated)
--severitystringFilter by severity: CRITICAL, HIGH, MEDIUM, LOW (comma-separated)
--vulnerability-idstringFilter by CVE/vulnerability IDs (comma-separated)
--severity-sourcestringFilter by severity source (comma-separated, e.g. nvd, github)
--filestringFilter by file paths (comma-separated)
--has-kevflagFilter for CISA Known Exploited Vulnerabilities
--has-exploitflagFilter for vulnerabilities with known exploits
--sort-bystringSort by field (id, vulnerabilityId, severityLevel, hasKev, hasExploit, file, createdAt, updatedAt)
--sort-orderstringasc or desc
--per-pagenumberResults per page (default: 50, max: 1000)
--allflagFetch all pages automatically

Examples

# Zip and scan a Terraform directory
zip -r infra.zip ./terraform/
plerion iac scan --file infra.zip --name infra.zip

# List all scans
plerion iac list-scans --output table

# List only successful scans
plerion iac list-scans --status SUCCESS

# Get all findings from a scan
plerion iac get-findings --scan-id scan-abc123 --all

# Get only failed findings
plerion iac get-findings --scan-id scan-abc123 --status FAILED

# Get critical and high severity findings
plerion iac get-findings --scan-id scan-abc123 --severity CRITICAL,HIGH

# Get vulnerabilities with known exploits
plerion iac get-vulnerabilities --scan-id scan-abc123 --has-exploit --output json

# Full workflow
zip -r infra.zip ./terraform/
plerion iac scan --file infra.zip --name infra.zip
# Note the scan ID from output, then:
plerion iac get-findings --scan-id <scan-id> --status FAILED --output table
plerion iac get-vulnerabilities --scan-id <scan-id> --severity CRITICAL,HIGH --all

Output columns (list-scans)

ColumnDescription
IDScan ID
ARTIFACTArtifact name (uploaded zip filename)
STATUSScan status (e.g. SUCCESS, FAILURE)
TYPESDetected IaC types (e.g. terraform, kubernetes)
FINDINGSTotal findings count
FAILEDFailed findings count
PASSEDPassed findings count
VULNSVulnerability count
TENANT IDTenant ID
ORG IDOrganization ID
CREATED ATScan creation timestamp
UPDATED ATScan update timestamp

Output columns (get-findings)

ColumnDescription
IDFinding ID
SCAN IDParent scan ID
DETECTION IDDetection rule ID
DETECTION TITLEDetection rule title
TYPEFinding type
RESULTPASSED or FAILED
SEVERITYSeverity level
FILESource file path
LINE RANGEAffected line range (e.g. 10-25)
RESOURCEResource identifier
DASHBOARD URLLink to finding in the Plerion dashboard
TENANT IDTenant ID
ORG IDOrganization ID
CREATED ATRecord creation timestamp
UPDATED ATRecord update timestamp

Output columns (get-vulnerabilities)

ColumnDescription
IDVulnerability record ID
CVE / VULN IDCVE or vulnerability identifier
TITLEVulnerability title
SEVERITYSeverity level
SEVERITY VALUENumeric severity score
DESCRIPTIONVulnerability description
FILESource file containing the vulnerable dependency
KEVCISA Known Exploited Vulnerability
EXPLOITHas known exploit
PACKAGESAffected package name(s)
PRIMARY URLLink to CVE or advisory
PUBLISHEDPublication date
TENANT IDTenant ID
ORG IDOrganization ID
CREATED ATRecord creation timestamp
UPDATED ATRecord update timestamp