Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📊 ScapAnalyzer

Browser-based OpenSCAP compliance report comparison and exemption engine

Live Demo License: MIT No Backend


Comparison Matrix Overview


What is ScapAnalyzer?

ScapAnalyzer is a fully client-side, zero-backend tool for analyzing and comparing OpenSCAP compliance reports. Drag and drop your XML or HTML reports from any browser — nothing is uploaded anywhere. All processing and storage happens locally in the browser using IndexedDB.

It is designed to complement SCAP Suite by providing a professional audit and review layer on top of generated scan reports.

🚀 Live Version: y8765.github.io/ScapAnalyzer/


✨ Key Features

📋 Multi-Server Comparison Matrix

Comparison Matrix

Load multiple XCCDF/ARF XML or HTML reports and instantly see a side-by-side compliance matrix. Each cell shows the result for that rule on that host — color-coded by status (Pass, Fail, Error, Non-Relevant).


🔍 Smart Filtering & Search

Narrow down results instantly:

  • Search by rule name, rule ID, or description
  • Filter chips: Differences only · All Fail · Exempted · All Pass · Non-Relevant
  • Severity filter: High · Medium · Low
  • Category grouping for organized viewing

🛡️ Exemption Management Engine

Create and manage a local exemption policy for rules that are intentionally non-compliant:

  • Global exemptions — apply across all loaded servers
  • Scoped exemptions — apply to specific servers only
  • Attach approval details, rationales, and timestamps
  • Export / Import policies as a portable JSON file

📤 Rich Export Options

Export your consolidated compliance matrix to:

Format Description
📥 CSV Raw data for spreadsheet tools
📊 Excel (XLSX) Formatted workbook with color-coded cells (powered by SheetJS)
📄 Standalone HTML Self-contained interactive matrix page — share via email or archive offline

🛠️ Usage

Option A: Use the Hosted Version (No Setup)

Open y8765.github.io/ScapAnalyzer/ in any modern browser and drag in your reports.

Option B: Run Locally (Offline / Air-Gapped)

git clone https://github.com/Y8765/ScapAnalyzer.git
cd ScapAnalyzer

Then open index.html directly in your browser, or serve it with any static server:

python -m http.server 8000
# Open http://localhost:8000

Integration with SCAP Suite

If you have SCAP Suite installed, click the 📊 Open ScapAnalyzer button in the Compliance Gallery — it will open ScapAnalyzer automatically (local clone if detected, otherwise the hosted version).


📂 Project Structure

ScapAnalyzer/
├── css/
│   └── styles.css        # Core styling and glassmorphism design tokens
├── js/
│   ├── app.js            # Application shell and initialization
│   ├── comparator.js     # Comparison matrix builder and filter engine
│   ├── exemptions.js     # Exemption database and policy manager
│   ├── exporter.js       # CSV, Excel, and standalone HTML exporters
│   ├── parser.js         # XCCDF & ARF XML parser and HTML report scavenger
│   ├── storage.js        # IndexedDB persistence layer
│   ├── ui.js             # DOM renderer and modal/dialog handlers
│   └── xlsx.bundle.js    # Bundled SheetJS library for Excel export
├── samples/              # Sample OpenSCAP reports for testing
├── index.html            # Main application entrypoint
└── README.md

🤝 Related Projects

  • SCAP Suite — Remote OpenSCAP scanning platform that generates the reports ScapAnalyzer analyzes

📄 License

MIT License — see LICENSE for details.

About

ScapAnalyzer compares OpenSCAP security reports side-by-side and allows creating and managing compliance results, exemptions policies at ease. It serves as a powerful complement to ScapSuite.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages