Safeguard.sh Documentation Center
Enterprise Software Supply Chain Manager (ESSCM)

Risk Score (RS)

Understanding component integrity risk scoring in Safeguard.sh

Risk Score (RS)

The Risk Score (RS) provides a comprehensive risk assessment for each component in your SBOM, helping you identify and prioritize supply chain security concerns.

Overview

RS evaluates components based on multiple risk factors to generate an overall integrity score. Unlike vulnerability scores which focus on known CVEs, RS assesses the trustworthiness and supply chain integrity of each component.

RS Score Range

ScoreRisk LevelDescription
0-2Low RiskHigh integrity, well-attested
3-4Moderate RiskSome concerns, review recommended
5-6Elevated RiskMultiple concerns, attention needed
7-8High RiskSignificant concerns, remediation advised
9-10Critical RiskSevere concerns, immediate action required

Risk Factors

Supply Chain Attestation (SCAL)

The SCAL (Safeguard Component Attestation Level) is a key factor in RS calculation:

LevelNameDescriptionRisk Impact
SCAL 0Fully AttestedComplete build & source attestation with signaturesLowest
SCAL 1Attested Build & SourceBuild provenance and source verificationLow
SCAL 2Attested ComponentComponent has some attestationModerate
SCAL 3Known ComponentComponent is identified but unattestedHigh
SCAL 4Partially UnknownComponent has limited verificationHigher
SCAL 5Unknown ComponentComponent cannot be verifiedHighest

Provenance Verification

FactorLow RiskHigh Risk
Build SourceOfficial CI/CDUnknown origin
SignatureVerified signaturesNo signatures
Transparency LogIn public logNot logged
Build ReproducibilityReproducibleNot reproducible

Package Health

FactorLow RiskHigh Risk
MaintenanceActive developmentAbandoned
CommunityLarge, activeSmall, inactive
AgeMature, stableVery new or very old
TyposquattingNo similar namesPotential typosquat

Behavioral Analysis

FactorLow RiskHigh Risk
Install ScriptsNone or safeSuspicious scripts
Network AccessNoneUnexpected network calls
File SystemLimited accessBroad file access
Code ObfuscationNoneHeavily obfuscated

Viewing RS

In Explore SBOM

  1. Open a project from the Projects page
  2. Navigate to Explore SBOM
  3. Click the RS tab
  4. View RS scores for all components

RS Dashboard

The RS tab displays:

ColumnDescription
ComponentPackage name and version
RS ScoreNumeric risk score (0-10)
Risk LevelLow/Moderate/Elevated/High/Critical
SCAL LevelAttestation level (0-5)
Top Risk FactorsPrimary contributors to score

Filtering and Sorting

  • Filter by Risk Level - Show only High/Critical components
  • Filter by SCAL - Show components above a certain attestation level
  • Sort by RS - Highest risk first
  • Search - Find specific components

RS Details

Click on any component to view detailed RS breakdown:

Risk Breakdown

CategoryWeightScore
Attestation (SCAL)30%Based on SCAL level
Provenance25%Build verification
Package Health20%Maintenance status
Behavioral15%Runtime behavior
Historical10%Past security issues

Evidence

View specific evidence for each risk factor:

  • Attestation documents found/missing
  • Signature verification results
  • Provenance chain details
  • Behavioral analysis findings

Improving RS Scores

Quick Improvements

  1. Update to attested versions - Use versions with SCAL 0-1
  2. Replace unknown components - Swap SCAL 5 for verified alternatives
  3. Remove unused dependencies - Reduce attack surface
  4. Pin specific versions - Avoid version ranges

Long-term Strategy

  1. Prefer Gold Directory packages - Pre-verified components
  2. Establish component policies - Require maximum SCAL levels
  3. Monitor RS trends - Track improvements over time
  4. Vendor engagement - Request attestations from suppliers

RS Policies

Setting RS Thresholds

Create policies based on RS:

  1. Go to Policies & Gates
  2. Create new policy rule
  3. Set RS threshold (e.g., fail if any component > 6)
  4. Apply to projects

Policy Examples

PolicyRule
ProductionNo components with RS > 5
DevelopmentWarn on RS > 7
Critical SystemsRequire SCAL 0-1 for all components

API Access

# Get RS scores for a project
curl -X GET https://api.safeguard.sh/v1/projects/{id}/rs \
  -H "Authorization: Bearer $API_KEY"

# Get RS details for a component
curl -X GET https://api.safeguard.sh/v1/projects/{id}/components/{component}/rs \
  -H "Authorization: Bearer $API_KEY"

Best Practices

Monitoring

  • Review high RS components weekly
  • Set up alerts for RS increases
  • Track RS trends in dashboards

Remediation

  • Prioritize SCAL 5 components first
  • Create tickets for high RS components
  • Document accepted risks with mitigations

Prevention

  • Include RS checks in CI/CD
  • Block high RS components in security gates
  • Train developers on component selection

Next Steps

On this page