Specifiche SentinelCore


Caratteristiche Principali

📥 Acquisizione Vulnerabilità Multi-Scanner

Scanner Supportati Nativamente:

Commercial Scanners:

  • Tenable Nessus Professional/Expert: API v2 integration, import automatico scan results
  • Qualys VMDR: API integration con asset correlation
  • Rapid7 Nexpose/InsightVM: Real-time import via webhook
  • Acunetix: Web vulnerability import con severity mapping
  • Burp Suite Enterprise: REST API integration per web app scanning

Open Source Scanners:

  • OpenVAS/Greenbone: XML import con CVE enrichment
  • OWASP ZAP: JSON/XML import, CI/CD integration
  • Nikto: Web server scanner import
  • Nmap + NSE scripts: Network vulnerability detection
  • Trivy: Container/IaC vulnerability scanning (roadmap v2.0)

Cloud-Native Scanners (roadmap v2.5):

  • AWS Inspector
  • Azure Security Center
  • Google Cloud Security Command Center

Import Methods:

  • API REST: Real-time push da scanner (webhook)
  • File upload: Manual/scheduled upload XML/JSON/CSV
  • Scheduled pull: Sentinel Core scarica periodicamente da scanner API
  • Email import: Forward scan report via email → automatic parsing

Format Support:

  • Nessus XML (.nessus)
  • OpenVAS XML
  • Qualys XML
  • JSON generic (schema-flexible)
  • CSV (with column mapping)
  • SARIF (Static Analysis Results Interchange Format)

Deduplication Intelligente:

  • Stesso CVE rilevato da scanner multipli → singola entry
  • Asset matching via IP, hostname, MAC address, cloud instance ID
  • Version-aware: CVE su Apache 2.4.41 ≠ CVE su Apache 2.4.50
  • Temporal deduplication: Re-scan non crea duplicati se vulnerabilità già presente

🏷️ Catalogazione e Enrichment Automatico

Vulnerability Metadata:

CVSS (Common Vulnerability Scoring System):

  • CVSS v3.1 scoring (preferred)
  • CVSS v2 legacy support
  • Base score (severity intrinseca)
  • Temporal score (exploit availability, remediation level)
  • Environmental score (asset criticality, collateral damage)
  • Vector string parsing (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)

EPSS (Exploit Prediction Scoring System):

  • Daily updates da FIRST.org
  • Probabilità 0-100% exploit nei prossimi 30 giorni
  • Percentile ranking (questa CVE è più sfruttabile del X% delle altre)
  • Historical trending (EPSS score evoluzione nel tempo)

CVE Database Correlation:

  • NVD (National Vulnerability Database) enrichment
  • CVE description, references, CWE mapping
  • Published date, last modified date
  • Vendor advisories links (Microsoft, RedHat, Debian, etc.)

CWE (Common Weakness Enumeration):

  • Weakness category (e.g. CWE-79: XSS, CWE-89: SQL Injection)
  • OWASP Top 10 mapping
  • SANS Top 25 mapping
  • Attack pattern references (CAPEC)

Exploit Intelligence:

  • Metasploit modules availability
  • ExploitDB references
  • Public PoC (Proof of Concept) availability
  • Active exploitation in the wild (da threat intel feeds)
  • Ransomware gang targeting (da CTI reports)

Asset Context:

  • Operating System + version
  • Installed software inventory
  • Service/port exposure (internal vs external)
  • Geographic location (datacenter, cloud region)
  • Business unit ownership
  • Asset criticality (from CMDB integration)
  • Environment (production, staging, development)

🎯 Prioritizzazione Intelligente

Risk Scoring Algorithm:

Risk Score (0-100) = 
  (CVSS Base × 0.30) +
  (EPSS Score × 0.25) +
  (Business Impact × 0.25) +
  (Asset Exposure × 0.15) +
  (Exploit Availability × 0.05)

Fattori Dettagliati:

1. CVSS Base (0-10 → 0-30 punti):

  • Critical (9.0-10.0): 30 punti
  • High (7.0-8.9): 22 punti
  • Medium (4.0-6.9): 15 punti
  • Low (0.1-3.9): 5 punti

2. EPSS Score (0-100% → 0-25 punti):

  • EPSS >50% (high probability): 25 punti
  • EPSS 20-50%: 18 punti
  • EPSS 5-20%: 10 punti
  • EPSS <5%: 3 punti

3. Business Impact (0-25 punti):

  • Asset criticality:
    • Critical (payment processing, auth): 25 punti
    • High (production web/API): 18 punti
    • Medium (internal tools): 10 punti
    • Low (dev/test): 3 punti
  • Data sensitivity: +5 punti se PII/PCI/PHI
  • Revenue impact: +5 punti se downtime costa >€10k/ora

4. Asset Exposure (0-15 punti):

  • Internet-facing: 15 punti
  • DMZ (limited exposure): 10 punti
  • Internal network: 5 punti
  • Isolated/air-gapped: 0 punti
  • Port exposure: +3 punti se porta critica (RDP, Telnet, SMB)

5. Exploit Availability (0-5 punti):

  • Public exploit + active campaigns: 5 punti
  • Public exploit (Metasploit, ExploitDB): 4 punti
  • PoC available: 3 punti
  • Exploit theoretical: 1 punto
  • No exploit info: 0 punti

Risk Tiers:

  • Critical Risk (80-100): Remediate entro 24h (P1)
  • High Risk (60-79): Remediate entro 7 giorni (P2)
  • Medium Risk (40-59): Remediate entro 30 giorni (P3)
  • Low Risk (20-39): Remediate entro 90 giorni (P4)
  • Informational (<20): Monitor, no SLA

Prioritization Overrides:

Manual Override:

  • Security team può forzare priority (e.g. compliance requirement)
  • Requires justification + approval (audit trail)

Automatic Overrides:

  • Zero-day: Auto-escalate a Critical indipendentemente da CVSS
  • Ransomware targeted: CVE in active ransomware campaigns → Critical
  • Compliance mandate: PCI-DSS critical findings → force P1
  • Exploit confirmed (da Intellidog se integrato): +20 punti Risk Score

Remediation Effort Estimation:

  • Trivial (patch available, reboot): 1-2 ore
  • Easy (patch + config change): 4-8 ore
  • Medium (patch + testing + coordination): 1-3 giorni
  • Hard (workaround, vendor not responsive): 1-2 settimane
  • Very Hard (architectural change, no fix available): >1 mese

Algorithm considera effort vs risk per suggerire optimal sequencing.


👥 Workflow e Team Orchestration

Team Management:

Team Structure:

  • Teams: Gruppi logici (e.g. “Infrastructure Team”, “Web Team”, “Database Team”)
  • Members: Utenti assegnati a team con ruoli
  • Roles: Team Leader, Senior Engineer, Engineer, Junior
  • Skills: Tag competenze (Linux, Windows, AWS, Docker, Apache, etc.)
  • Capacity: Workload massimo (e.g. max 10 task simultaneous)

Assignment Rules (Automatic):

Rule-Based Assignment:

yaml

rules:
  - name: "Web vulnerabilities to Web Team"
    condition: asset.tags contains "web" AND vuln.category == "web"
    team: "Web Team"
    priority: high
  
  - name: "Database vulns to DB Team"
    condition: asset.software contains "mysql|postgresql|mongodb"
    team: "Database Team"
  
  - name: "Critical always to senior"
    condition: vuln.risk_score >= 80
    team_member_role: "Senior Engineer"

Load Balancing:

  • Considera workload corrente di ogni team member
  • Distribuisce equamente tra membri con skill match
  • Evita overload: se team saturo → escalation a manager

Smart Assignment:

  • Historical performance: Assegna a chi ha track record migliore su quel tipo di vuln
  • Availability: Rispetta calendar integration (vacanze, training)
  • Timezone: Assegna considerando timezone per response time ottimale

Task Lifecycle:

Task States:

  1. Open: Vulnerabilità rilevata, non ancora assegnata
  2. Assigned: Assegnata a team/person, in coda
  3. In Progress: Team member ha preso in carico
  4. Pending Approval: Fix proposto, richiede approval (per prod changes)
  5. Approved: Approval ottenuto, deployment schedulato
  6. Remediated: Fix applicato, pending verification
  7. Verified: Re-scan conferma vulnerabilità risolta
  8. Closed: Task completato
  9. Rejected: Non vulnerabilità reale (false positive)
  10. Risk Accepted: Management accetta il rischio (con justification)

SLA Tracking:

  • Ogni task ha deadline basato su priority
  • Real-time countdown dashboard
  • Alert escalation quando SLA breach imminente:
    • 75% SLA elapsed → reminder al team member
    • 90% SLA elapsed → escalation a team leader
    • 100% SLA breach → escalation a manager + incident report

Collaboration Features:

  • Comments: Team discussion thread su ogni task
  • @mentions: Notifica colleghi per input
  • File attachments: PoC, config files, screenshots
  • Activity log: Chi ha fatto cosa quando (audit trail)

Approval Workflows:

Change Approval (per prod):

  1. Engineer propone fix → crea Change Request
  2. Team Leader reviews → technical approval
  3. Change Advisory Board (se critical asset) → business approval
  4. Deployment window scheduling
  5. Post-deployment verification

Risk Acceptance:

  • Se vulnerabilità non patchabile (legacy system)
  • Requires: Justification, mitigating controls, expiration date
  • Approval: CISO o equivalent
  • Regular review: Ogni 90 giorni

sentinelcore-dognettechnologies
#image_title

🔔 Notification System

Notification Channels:

Email:

  • SMTP configuration con TLS
  • HTML templates customizable (logo, colors)
  • Attachment support (report PDF)
  • Digest mode: Daily/Weekly summary vs real-time

Slack:

  • Workspace integration via webhook/OAuth
  • Channel routing per severity (#critical, #high, #medium)
  • Rich formatting con buttons (Assign to me, Mark False Positive)
  • Thread replies → sync back to Sentinel Core comments

Telegram:

  • Bot API integration
  • Group notifications con mention
  • Direct message per assignment personali
  • Inline keyboard per quick actions

Microsoft Teams:

  • Webhook connector
  • Adaptive cards con action buttons
  • Channel notifications

Webhook Generici:

  • POST JSON a qualsiasi URL
  • Customizable payload template
  • Retry logic con exponential backoff
  • Signature verification (HMAC)

PagerDuty/Opsgenie:

  • Integration nativa per on-call management
  • Incident creation automatica per Critical vulnerabilities
  • Escalation policy sync

Notification Rules:

Routing Logic:

yaml

notifications:
  - trigger: "vulnerability.risk_score >= 80"
    channels: ["slack:#critical", "pagerduty", "email:ciso@company.com"]
    immediate: true
  
  - trigger: "task.sla_breach_warning"
    channels: ["email:team_leader", "slack:@team_leader"]
  
  - trigger: "task.assigned_to_me"
    channels: ["email:assignee", "telegram:assignee"]
  
  - trigger: "daily_digest"
    schedule: "0 9 * * *"  # 9 AM daily
    channels: ["email:all_team_members"]
    content: "summary"
```

**Notification Throttling:**
- Max 1 notification ogni 15 min per stesso evento (evita spam)
- Digest mode per eventi low-priority
- Quiet hours: No notifications 22:00-08:00 (configurable)

---

### **📊 Reportistica Multi-Livello**

**Dashboard Real-Time:**

**Executive Dashboard:**
- **KPI Metrics:**
  - Total vulnerabilities (trend graph)
  - Critical/High/Medium/Low breakdown (pie chart)
  - Mean Time To Remediate (MTTR) - target vs actual
  - SLA compliance rate (%)
  - Risk score evolution (line chart last 90 days)
- **Top Risks**: 10 vulnerabilità highest risk score
- **Team Performance**: Remediation rate per team
- **Compliance Status**: % vulnerabilities affecting compliance

**Operational Dashboard:**
- **My Tasks**: Vulnerabilities assigned to logged user
- **Team Workload**: Task distribution tra team members
- **Upcoming Deadlines**: Task con scadenza <7 giorni
- **Blockers**: Task in stato "Pending Approval" >3 giorni
- **Recent Activity**: Live feed azioni (assignments, closures, comments)

**Technical Dashboard:**
- **Vulnerability Heatmap**: Asset (Y-axis) vs Severity (color)
- **Attack Surface**: External vs Internal vulnerabilities
- **Technology Breakdown**: Vulnerabilities per software (Apache, OpenSSL, etc.)
- **Age Distribution**: Histogram vulnerabilità per età (days open)
- **Re-opened Issues**: Vulnerabilità che ritornano (patch non efficace?)

**Report Types:**

**1. Executive Summary Report:**
- **Audience**: C-level, Board
- **Frequency**: Monthly
- **Content**:
  - 1-page overview con key metrics
  - Risk trend (improving/stable/worsening)
  - Top 3 critical findings con business impact
  - Budget impact analysis (se breach avvenisse)
  - Comparison vs industry benchmark
- **Format**: PDF con charts, presentazione-ready

**2. Technical Vulnerability Report:**
- **Audience**: Security team, DevOps
- **Frequency**: Weekly o on-demand
- **Content**:
  - Detailed vulnerability list con CVSS, EPSS, CVE
  - Affected assets per vulnerability
  - PoC links, exploit details
  - Remediation steps (vendor advisory, patch commands)
  - Verification procedures (come testare post-patch)
  - Rollback plan (se patch causa problemi)
- **Format**: PDF/HTML con code snippets, CLI commands

**3. Compliance Report:**
- **Audience**: Compliance officer, Auditor
- **Frequency**: Quarterly o pre-audit
- **Content**:
  - Mapping vulnerabilities → compliance controls
    - "CVE-2024-1234 affects PCI-DSS Requirement 6.2"
    - "10 vulnerabilities impact ISO 27001 A.12.6.1"
  - Gap analysis: Quali controlli non compliant
  - Evidence: Screenshot, config file, patch logs
  - Remediation timeline con milestone
  - Risk acceptance register (con approval trail)
- **Format**: PDF con digital signature, audit-trail embedded

**4. Team Performance Report:**
- **Audience**: Team Leader, Manager
- **Frequency**: Monthly
- **Content**:
  - Remediation rate per team member
  - MTTR per engineer (chi è più veloce?)
  - SLA compliance per team
  - Workload distribution (chi è overloaded?)
  - Training needs identification (se engineer lento su tipo vuln specifico)
- **Format**: PDF/CSV, può alimentare performance review

**5. Trend Analysis Report:**
- **Audience**: CISO, Security Architect
- **Frequency**: Quarterly
- **Content**:
  - Vulnerability discovery rate trend
  - Remediation velocity trend
  - Technology debt analysis (software EOL con vulns accumulate)
  - Attack surface evolution
  - Recommendation: "Apache instances crescono, consider automation"
- **Format**: PDF con predictive charts

**Export Formats:**
- **PDF**: Standard, branding customizable
- **HTML**: Interactive, embeddable in wiki/intranet
- **CSV**: Per analisi custom (Excel, Tableau, Power BI)
- **JSON**: Per integration automation (scripts, SIEM)
- **XML**: Per legacy systems integration
- **DOCX**: Per editing ulteriore (aggiungere sezioni custom)

**Scheduled Reports:**
- Cron-like scheduling (e.g. "1st Monday every month 9 AM")
- Auto-email a distribution list
- Auto-upload a SFTP/S3/SharePoint
- Retention policy (conserva report per X mesi)

---

### **🔗 Integrazione SOAR & Automation**

**SOAR Platforms Supportati:**

**Splunk SOAR (Phantom):**
- Playbook automation per remediation
- Bi-directional sync: Vuln → SOAR incident, SOAR resolution → Sentinel Core closure
- Actions: Isolate asset, patch via Ansible, re-scan

**Palo Alto Cortex XSOAR (Demisto):**
- Custom integrations via Python
- Incident enrichment con Sentinel Core vulnerability data
- Orchestration: Patch → Test → Rollback se fail

**IBM Resilient:**
- Incident creation automatica per Critical
- Workflow customization per compliance requirement
- Integration con ServiceNow via Resilient

**Rapid7 InsightConnect:**
- Low-code automation builder
- Trigger: New Critical vuln → Slack alert → Jira ticket → Ansible patch

**Microsoft Sentinel (Azure):**
- Log ingestion da Sentinel Core
- Correlation con altri security signals (Azure AD, Defender)
- Automated response via Logic Apps

**Google Chronicle SOAR:**
- Threat intelligence enrichment
- Automated playbooks per cloud vulnerabilities (GCP)

**Swimlane:**
- Visual workflow builder
- Case management integration

**Automation Use Cases:**

**1. Auto-Ticketing:**
```
Trigger: New vulnerability (risk_score >= 60)
Action:
  - Create Jira ticket
  - Assign to appropriate team (via Sentinel Core assignment rules)
  - Add labels: security, vulnerability, [severity]
  - Link CVE references
  - Set due date based SLA
```

**2. Auto-Patching (Low-Risk):**
```
Trigger: New vulnerability (risk_score < 40) + patch available
Action:
  - Check if dev/staging environment
  - Run Ansible playbook: update package
  - Re-scan asset
  - If patch successful: Close vulnerability
  - If patch fails: Create ticket for manual intervention
```

**3. Compliance Escalation:**
```
Trigger: Vulnerability affects PCI-DSS + SLA breach imminent
Action:
  - Send email to Compliance Officer
  - Create high-priority ServiceNow incident
  - Schedule emergency Change Advisory Board meeting
  - Document in compliance risk register
```

**4. Threat Intelligence Enrichment:**
```
Trigger: New vulnerability imported
Action:
  - Query VirusTotal for CVE
  - Query MISP for IoC
  - Check Shodan for asset exposure
  - Update vulnerability with enriched data
  - If active exploitation detected: Escalate to Critical

API Automation:

REST API Endpoints:

  • POST /api/vulnerabilities – Import vulnerability
  • GET /api/vulnerabilities?risk_score_gte=80 – Query high-risk
  • POST /api/vulnerabilities/{id}/assign – Assign to team
  • PATCH /api/vulnerabilities/{id} – Update status
  • POST /api/scan/trigger – Trigger re-scan via scanner API
  • GET /api/reports/generate – Generate report programmatically

Webhook Triggers:

  • On vulnerability created (per scanner integration)
  • On vulnerability remediated (per SOAR closure)
  • On SLA breach (per escalation automation)
  • On risk score change (per prioritization automation)

CI/CD Integration:

yaml

# GitLab CI example
security_scan:
  stage: security
  script:
    - trivy image myapp:latest --format json --output trivy-report.json
    - curl -X POST https://sentinel-core/api/vulnerabilities/import \
        -H "Authorization: Bearer $API_TOKEN" \
        --data-binary @trivy-report.json
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request"


## **Casi d'Uso**

### **Caso 1: Enterprise con 1000+ Server - Vulnerability Chaos**

**Scenario:**  
Azienda retail italiana 2000 dipendenti, 1200 server (fisici + VM + cloud). Usano Nessus + OpenVAS + Qualys. Ricevono 15.000+ vulnerabilità/mese. Team security (3 persone) sommerso, non sanno da dove iniziare. MTTR 45 giorni. Audit ISO 27001 failed per "unmanaged vulnerabilities".

**Problema:**
- Scanner multipli generano duplicati
- Nessuna prioritizzazione → trattano tutte uguali
- No tracking chi fa cosa
- Management non ha visibility

**Implementazione Sentinel Core:**

**Week 1: Setup**
- Deploy Sentinel Core su VM dedicata
- Integrazione Nessus + OpenVAS + Qualys via API
- Import storico 30 giorni: 15.000 vulnerabilities → deduplicate → 8.500 unique

**Week 2: Prioritization**
- Configurazione risk scoring customizzato:
  - Asset business-critical (payment, e-commerce): +20% weight
  - External exposure: +15% weight
  - PCI-DSS scope: force High priority minimum
- Risultato: 8.500 vulnerabilità → 150 Critical, 800 High (focus su queste)

**Week 3: Team Orchestration**
- Creazione 4 team: Infrastructure, Windows, Linux, Applications
- Assignment automatico vulnerabilities per OS/technology
- Ogni team riceve ~200 High tasks, manageable

**Week 4-8: Workflow**
- Slack integration: Alert Critical in canale dedicato
- Jira integration: Auto-ticket creation
- SLA enforcement: Critical 7 giorni, High 30 giorni
- Dashboard executive: CISO vede progress real-time

**Risultati dopo 3 mesi:**
- **MTTR**: 45 giorni → 12 giorni (73% reduction)
- **Critical backlog**: 150 → 8 (95% cleared)
- **High backlog**: 800 → 120 (85% cleared)
- **SLA compliance**: 35% → 92%
- **Team morale**: Improved (lavoro organizzato vs chaos)
- **Audit ISO 27001**: Passed, auditor impressed by tracking system
- **ROI**: Evitata remediation consulting esterno (~€80k)

---

### **Caso 2: MSP Gestisce 50 Clienti - Multi-Tenancy**

**Scenario:**  
MSP gestisce security per 50 PMI clienti. Ogni cliente ha 10-50 asset. Usavano spreadsheet Excel per tracking vulnerabilities. Clienti chiedono report mensili compliance. Team MSP (5 persone) passava 2 giorni/mese solo a preparare report.

**Implementazione:**
- **Multi-tenant deployment**: Istanza Sentinel Core per ogni cliente (isolamento dati)
- **Standardizzazione scanning**: OpenVAS automated scan settimanale tutti clienti
- **Template remediation**: Playbook Ansible per patch comuni (Apache, OpenSSL, kernel)
- **White-label reporting**: Report con logo cliente

**Workflow Automatizzato:**
```
Lunedì: OpenVAS scan automatico 50 clienti (overnight)
Martedì: Import automatico risultati in Sentinel Core
Mercoledì: Assignment automatico task a team MSP
Gio-Ven: Team MSP lavora su remediation
Fine mese: Report automatico generato e inviato a clienti

Risultati:

  • Report generation time: 2 giorni/mese → 1 ora/mese (96% reduction)
  • Remediation velocity: +40% (grazie automation Ansible)
  • Client satisfaction: NPS +25 punti (clienti apprezzano report professionali)
  • Upselling: 15 clienti hanno comprato “managed remediation” premium service (+€30k annual recurring revenue)
  • Team efficiency: Gestiscono 50 clienti con 5 persone (prima 3 full-time solo per reporting)

Caso 3: DevOps Team – Shift-Left Security

Scenario:
Startup SaaS 80 dipendenti, rilasci settimanali. Vogliono “shift-left” security: trovare vulnerabilities prima di produzione. Usano GitLab CI/CD. Security team (2 persone) non riesce stare dietro a velocity dev.

Implementazione CI/CD Integration:

Pipeline GitLab:

yaml

stages:
  - build
  - test
  - security
  - deploy

security_scan:
  stage: security
  script:
    # Scan Docker image
    - trivy image $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA --format json -o trivy.json
    
    # Scan dependencies
    - npm audit --json > npm-audit.json
    
    # Upload to Sentinel Core
    - |
      curl -X POST $SENTINEL_CORE_URL/api/vulnerabilities/import \
        -H "Authorization: Bearer $CI_SENTINEL_TOKEN" \
        -F "trivy=@trivy.json" \
        -F "npm_audit=@npm-audit.json" \
        -F "pipeline_id=$CI_PIPELINE_ID" \
        -F "commit_sha=$CI_COMMIT_SHA"
    
    # Check if Critical vulnerabilities found
    - |
      CRITICAL_COUNT=$(curl -s "$SENTINEL_CORE_URL/api/vulnerabilities/count?severity=critical&pipeline_id=$CI_PIPELINE_ID" \
        -H "Authorization: Bearer $CI_SENTINEL_TOKEN")
      
      if [ "$CRITICAL_COUNT" -gt 0 ]; then
        echo "❌ Found $CRITICAL_COUNT critical vulnerabilities. Pipeline blocked."
        exit 1
      fi
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request"
```

**Policy:**
- Critical vulnerabilities → Pipeline bloccata, no merge
- High vulnerabilities → Warning, merge consentito ma Jira ticket creato
- Medium/Low → Log only

**Risultati dopo 6 mesi:**
- **Vulnerabilities in production**: -87% (trovate prima in CI/CD)
- **Security debt**: Praticamente zero (no accumulo vulns)
- **Developer happiness**: High (immediate feedback, no sorprese post-deploy)
- **Security team workload**: -60% (developers fixano direttamente in dev phase)
- **Incident response**: Solo 2 security incidents vs 12 anno precedente

---

### **Caso 4: Financial Services - Compliance PCI-DSS**

**Scenario:**  
Banca online deve mantenere PCI-DSS compliance. 300 server in scope (cardholder data environment). QSA audit trimestrale. Vulnerability management è PCI-DSS Requirement 6.1/6.2 critical.

**PCI-DSS Requirements:**
- Req 6.1: Scan mensile con ASV approved scanner
- Req 6.2: Patch Critical entro 30 giorni discovery
- Req 11.2: Internal vulnerability scan trimestrale + after significant changes

**Implementazione:**
- **Scanner**: Qualys (ASV approved) per external, Nessus internal
- **Sentinel Core**: Orchestration + compliance reporting
- **Policy enforcement**:
  - Critical PCI scope: SLA 30 giorni (rigido)
  - Automatic escalation CISO se SLA breach risk
  - Change management integration: Ogni patch in prod richiede CAB approval

**Compliance Dashboard:**
- Real-time view: "X Critical vulnerabilities, Y giorni rimanenti per compliance"
- Historical: Last 4 quarters scan results (dimostra continuous compliance)
- Exception tracking: Risk acceptance con justification (per auditor)

**Audit Preparedness:**
```
QSA Request: "Show vulnerability management process"

Response:
1. Monthly ASV scan results (automated via Sentinel Core)
2. Remediation tracking: Tutte Critical risolte entro 30 giorni (evidence: Sentinel Core audit log)
3. Exception register: 2 vulnerabilities risk-accepted (CISO approval documented)
4. Re-scan verification: Post-patch scans confirm closure (automated)

Risultati:

  • QSA Audit: Passed 4 trimestri consecutivi, zero findings Req 6.1/6.2
  • Compliance confidence: 100% (real-time dashboard elimina sorprese)
  • Audit preparation time: 2 settimane → 2 giorni (report già pronti)
  • Sanction avoidance: PCI non-compliance può costare €5k-100k/mese + brand damage

Caso 5: Healthcare – HIPAA + Zero Trust

Scenario:
Ospedale 500 letti, Electronic Health Records (EHR) system. Dati pazienti = HIPAA protected health information (PHI). Recent ransomware attack settore healthcare → Board esige miglioramento security.

Challenge:

  • Legacy systems: Windows Server 2012 (EOL), medical devices non-patchabili
  • Compliance: HIPAA Security Rule richiede vulnerability management
  • Zero Trust initiative: Segment network, least privilege

Implementazione:

  1. Asset Discovery + Criticality Tagging:
    • Sentinel Core import da AD + network scan
    • Tagging: PHI-access, Medical-Device, Administrative
    • Critical: EHR servers, database, PACS (radiology)
  2. Risk-Based Prioritization:
    • PHI-access assets: Vulnerabilities auto-escalate +20 risk score
    • Medical devices: Virtual patching (can’t patch device, patch network controls)
    • Administrative: Standard remediation
  3. Network Segmentation Validation:
    • Integration con Firedog: Verify segmentation correct
    • Sentinel Core + Firedog correlation: “Database server vulnerable, but firewall blocks external access → Risk reduced”
  4. Compensating Controls:
    • Windows 2012 (EOL, no patches):
      • Network isolation (solo EHR app accede)
      • EDR monitoring (CrowdStrike)
      • Virtual patching (Firedog blocca exploit patterns)
    • Documented in Sentinel Core: “Risk accepted con compensating controls”

Compliance Reporting:

  • HIPAA Security Rule §164.308(a)(5): Risk Analysis → Sentinel Core risk scores
  • §164.308(a)(8): Evaluation periodic → Quarterly vulnerability scan reports
  • Audit trail: Chi ha fatto cosa, quando (required per HIPAA audit)

Risultati:

  • Ransomware preparedness: Attack surface ridotta 65%
  • Legacy systems: Secured via compensating controls (virtual patching + monitoring)
  • HIPAA audit: Passed, auditor praised “systematic risk management”
  • Board confidence: Dashboard executive mostra security posture improving
  • Patient safety: Zero security incidents affecting patient care

FAQ – Sentinel Core

Generale

Q: Sentinel Core fa scanning attivo o solo gestione?
A: Sentinel Core è vulnerability management platform, non uno scanner attivo. Aggrega risultati da scanner esterni (Nessus, OpenVAS, Qualys, etc.) e li orchestra. Perché separazione? Permette di usare scanner migliori per caso specifico (web app → Burp, network → Nessus, container → Trivy).

Q: Posso usare Sentinel Core senza scanner commerciali?
A: Sì, completamente compatibile con scanner open source:

  • OpenVAS (network vulnerability scanning)
  • OWASP ZAP (web application)
  • Nikto (web server)
  • Nmap + NSE scripts (network discovery + basic vuln detection)
  • Trivy (container/IaC)

Funzionalità identiche, solo coverage scanner varia.

Q: Quanto costa?
A: €3.000/anno licenza base:

  • Scansioni illimitate (import da qualsiasi scanner)
  • Storage fino 100.000 vulnerabilità storiche
  • Team/user illimitati
  • Support standard email 48h

Scale-up:

  • 100k-500k vulnerabilities storage: +€1.000/anno
  • Premium support 24/7: +€2.000/anno
  • Professional services (onboarding, integration): €150/ora

Q: Quanti team/utenti posso avere?
A: Illimitati nella licenza base. Supporta organizzazioni 5-500+ persone senza costi aggiuntivi per utenti.


Scanner Integration

Q: Se uso Nessus + OpenVAS, come evito duplicati?
A: Deduplication automatica:

  • Stesso CVE su stesso asset (match IP + hostname) → merged in singola vulnerability
  • Mantiene metadati da entrambi scanner (per comparison)
  • UI mostra “Detected by: Nessus, OpenVAS”

Q: Supportate scanner cloud nativi (AWS Inspector, Azure Security Center)?
A: Roadmap v2.5 (Q4 2025). Attualmente workaround:

  • Export risultati da AWS Inspector (JSON)
  • Import manuale/scheduled in Sentinel Core via API

Q: Posso importare scan result vecchi (storico)?
A: Sì, import storico utile per:

  • Trend analysis (vulnerabilities scoperte mese scorso)
  • Baseline comparison
  • Audit trail completo

Supporta date retroattive nell’import.

Q: Import automatico vs manuale?
A: Entrambi supportati:

Automatic (preferred):

  • Scanner webhook → push real-time a Sentinel Core
  • Scheduled pull: Sentinel Core scarica periodicamente da scanner API (cron-like)

Manual:

  • Upload file via UI (drag & drop)
  • Email forwarding: Forward scan report email → automatic parsing

Q: Cosa succede se scanner trova vulnerabilità già risolta?
A: Re-scan validation:

  • Se vulnerability in stato “Remediated” e scanner la ritrova → auto-reopen task
  • Alert: “Vulnerability CVE-2024-1234 re-appeared, patch ineffective?”
  • Common cause: Patch rollback, misconfiguration, system restore

Risk Scoring & Prioritization

Q: Posso customizzare l’algoritmo di risk scoring?
A: Sì, completamente configurabile:

  • Pesi dei fattori (CVSS, EPSS, Business Impact, etc.) modificabili
  • Aggiungere fattori custom (e.g. “Compliance Impact” weight)
  • Per asset/technology specific overrides

UI Configuration:

yaml

risk_scoring:
  cvss_weight: 0.30
  epss_weight: 0.25
  business_impact_weight: 0.25
  asset_exposure_weight: 0.15
  exploit_availability_weight: 0.05
  
  # Custom overrides
  overrides:
    - condition: "asset.tags.compliance == 'PCI-DSS'"
      business_impact_weight: 0.40  # Increase business impact for PCI
```

**Q: EPSS score cos'è e come funziona?**  
A: **Exploit Prediction Scoring System** (FIRST.org):
- Machine learning model che predice probabilità exploit nei prossimi 30 giorni
- Basato su: Social media mentions, exploit code availability, attacker TTPs
- Score 0-100%: 5% = bassa probabilità, 90% = quasi certo verrà sfruttato
- **Perché utile**: CVE con CVSS 9.0 ma EPSS 2% < CVE con CVSS 7.0 ma EPSS 80%

**Q: Come definisco "Business Impact" degli asset?**  
A: **3 metodi**:

**1. Manual tagging**:
```
Asset: web-prod-01
Tags: critical, payment-processing, revenue-impact-high
Business Impact Score: 25/25

2. CMDB integration:

  • Import da ServiceNow/Jira Service Management
  • Automatic sync asset criticality

3. Rule-based:

yaml

rules:
  - asset.name matches "prod-*": business_impact = 25
  - asset.name matches "staging-*": business_impact = 10
  - asset.tags contains "pci-scope": business_impact = 25

Q: Vulnerabilità “Informational” sono inutili?
A: Non sempre:

  • Info disclosure (version banner) → útil per attacker reconnaissance
  • TLS weak cipher (non exploitable ora) → future risk
  • Best practice: Remediate comunque quando possibile (hardening)

Sentinel Core permette hide/filter Info se troppo rumore.


Team Management & Workflow

Q: Come funziona auto-assignment a team?
A: Rule engine con match condition → team:

yaml

assignment_rules:
  # Technology-based
  - condition: "vuln.software matches 'apache|nginx'"
    team: "Web Team"
  
  - condition: "vuln.software matches 'mysql|postgresql|mongodb'"
    team: "Database Team"
  
  # Asset-based
  - condition: "asset.os == 'Windows'"
    team: "Windows Team"
  
  - condition: "asset.tags contains 'aws'"
    team: "Cloud Team"
  
  # Severity-based
  - condition: "vuln.risk_score >= 80"
    team_member_role: "Senior Engineer"  # Only senior handle Critical
  
  # Skill-based
  - condition: "vuln.cve_id in ['CVE-2024-1234', 'CVE-2024-5678']"
    team_member_skill: "kubernetes"  # Requires K8s expertise

Load balancing: Se team ha 3 membri, distribuisce equamente (round-robin + current workload).

Q: SLA sono rigidi o posso estendere?
A: Flessibili con justification:

  • Extension request: Team member può chiedere +X giorni
  • Requires: Justification (e.g. “Vendor not responsive, patch ETA 2 weeks”)
  • Approval: Team Leader o Manager (dipende da policy)
  • Audit trail: Logged per compliance

Q: Cosa succede se nessuno prende task entro X giorni?
A: Escalation automatica:

  1. Task assigned → 24h no action → reminder email assignee
  2. 72h no action → escalation Team Leader
  3. 7 giorni no action (Critical) → escalation Manager + CISO
  4. Create incident report: “Task abandoned”

Q: Supporta approval workflow per prod changes?
A: Sì, configurable approval matrix:

Example Policy:

yaml

approval_required:
  - condition: "asset.environment == 'production' AND vuln.risk_score >= 60"
    approvers: ["team_leader"]
  
  - condition: "asset.tags contains 'critical-infrastructure'"
    approvers: ["team_leader", "change_advisory_board"]
  
  - condition: "remediation.requires_downtime == true"
    approvers: ["business_owner", "team_leader"]

Approval flow: Engineer propone fix → Approval request → Approver reviews → Approve/Reject → Deployment.


SOAR Integration

Q: Serve SOAR platform per usare Sentinel Core?
A: No, SOAR è opzionale per automation avanzata. Sentinel Core funziona standalone con workflow integrati.

Quando serve SOAR:

  • Automation cross-platform (Sentinel Core + SIEM + EDR + Firewall)
  • Complex playbook (e.g. isolate asset → backup data → patch → restore → verify)
  • Enterprise con team security operations mature

PMI: Sentinel Core workflow built-in sono sufficienti (assignment, notification, ticketing).

Q: Quali automation sono possibili senza SOAR?
A: Built-in automation Sentinel Core:

  • Auto-assignment team
  • Auto-ticketing (Jira, ServiceNow)
  • Auto-notification (Slack, email, PagerDuty)
  • Scheduled re-scan (trigger scanner API)
  • Report generation & distribution

Con SOAR (additional):

  • Auto-patching orchestration (Ansible, Chef, Puppet)
  • Network isolation (call firewall API)
  • Evidence collection (filesystem snapshot, memory dump)
  • Multi-tool correlation (Sentinel Core + SIEM + Threat Intel)

Q: Integration con Ansible per auto-patching?
A: Sì, via webhook trigger:

Sentinel Core → Webhook → Ansible Tower/AWX → Run playbook

yaml

# Ansible playbook example
- name: Patch Apache CVE-2024-1234
  hosts: "{{ target_host }}"
  tasks:
    - name: Update Apache
      apt:
        name: apache2
        state: latest
      
    - name: Restart Apache
      service:
        name: apache2
        state: restarted
    
    - name: Verify patch
      command: apache2 -v
      register: apache_version
    
    - name: Report back to Sentinel Core
      uri:
        url: "{{ sentinel_core_url }}/api/vulnerabilities/{{ vuln_id }}/verify"
        method: POST
        headers:
          Authorization: "Bearer {{ api_token }}"
        body_format: json
        body:
          status: "remediated"
          patch_version: "{{ apache_version.stdout }}"
```

**Q: Sentinel Core può triggerare security orchestration tools?**  
A: **Sì, via webhook/API**. Example integration points:
- **New Critical vuln** → Trigger SOAR incident response playbook
- **SLA breach** → Trigger escalation workflow (PagerDuty)
- **Vulnerability remediated** → Trigger verification re-scan (Nessus API)
- **Risk accepted** → Update firewall rules (compensating control)

---

### **Reporting & Compliance**

**Q: Report sono veramente audit-ready?**  
A: **Sì, designed per auditor**:

**Audit Requirements Met**:
- ✅ **Timestamp NTP-synced**: Ogni evento ha timestamp certificato
- ✅ **Immutability**: Eventi logged non modificabili (append-only audit log)
- ✅ **Digital signature** (optional): PDF report con firma digitale
- ✅ **Evidence trail**: Screenshot, config file diff, patch command output
- ✅ **Approval chain**: Chi ha approvato cosa, quando (per Change Management)
- ✅ **Retention policy**: Configurable (e.g. 7 anni per financial services)

**Auditor Feedback** (real cases):
- ISO 27001 auditor: "Best vulnerability tracking system I've seen in SMB"
- PCI-DSS QSA: "Report provided sufficient evidence for Req 6.1/6.2, zero questions"

**Q: Supporta multiple compliance framework simultaneously?**  
A: **Sì, multi-framework dashboard**:

**UI View**:
```
Asset: web-prod-01
Compliance Status:
├─ PCI-DSS: 85% (12/14 requirements met)
│  └─ Req 6.2: ⚠️ 3 High vulnerabilities open >30 giorni
├─ ISO 27001: 92% (A.12.6.1 compliant)
├─ NIS2: 78% (Art. 21 partially compliant)
└─ HIPAA: 88% (§164.308 compliant)

Report: Può generare report singolo framework o combined.

Q: Posso customizzare report layout/logo?
A: Sì, white-labeling completo:

  • Upload logo (header/footer)
  • Color scheme (primary/secondary colors)
  • Font customization
  • Custom cover page con disclaimer text
  • Footer text (e.g. “Confidential – Property of XYZ Corp”)

Template system: Save multiple templates per use case (Executive vs Technical vs Auditor).

Q: Report possono essere auto-distribuiti?
A: Sì, scheduled delivery:

Distribution methods:

  • Email a distribution list (e.g. security-team@company.com)
  • Upload SFTP/S3/Azure Blob/Google Cloud Storage
  • SharePoint integration (upload to document library)
  • Webhook POST (per integration custom)

Schedule: Cron-like (e.g. “First Monday of month, 9 AM, email to CISO”).


Technical

Q: Requisiti hardware?
A: Minimum (SMB, <5000 vulnerabilities):

  • CPU: 4 cores @ 2.5GHz
  • RAM: 8GB
  • Disk: 50GB SSD
  • Database: PostgreSQL 12+ (can be same host)

Recommended (Medium enterprise, <50k vulnerabilities):

  • CPU: 8 cores @ 3GHz
  • RAM: 16GB
  • Disk: 200GB SSD
  • Database: PostgreSQL dedicated host, 8GB RAM

Large enterprise (>50k vulnerabilities):

  • CPU: 16+ cores
  • RAM: 32GB+
  • Disk: 500GB SSD (NVMe preferred)
  • Database: PostgreSQL cluster (HA), 16GB+ RAM
  • Load balancer: Nginx/HAProxy per API scaling

Q: Sentinel Core scala horizontally?
A: Roadmap v3.0 (2026): Microservices architecture con horizontal scaling.

Attualmente (v2.x): Vertical scaling + database optimization:

  • Single application instance (API + worker processes)
  • PostgreSQL può scalare independently (read replicas)
  • Redis cache per API response (reduce DB load)

Scale achieved: Customers managing 100k+ vulnerabilities su single instance (beefy VM).

Q: Serve connessione Internet?
A: Dipende da use case:

Internet required per:

  • EPSS score updates (daily sync da FIRST.org)
  • CVE database enrichment (NVD sync)
  • Email notifications (SMTP relay)
  • Webhook notifications (Slack, PagerDuty, etc.)
  • Scanner API communication (se scanner cloud-based)

Offline capable:

  • Vulnerability import (se file-based)
  • Risk scoring (con dati cached)
  • Team management & workflow
  • Reporting

Air-gapped environments: Deploy con sync manual periodico (export/import via USB) o proxy dedicato.

Q: Database supportati?
A: – PostgreSQL 12+ (✅ Preferred, best performance + features)

  • UUID native support
  • JSONB per metadata flessibili
  • Full-text search
  • Partitioning per large datasets
  • MySQL/MariaDB 8.0+ (✅ Supported, limited features)
    • No UUID native (use BINARY(16))
    • JSON support (not JSONB)
  • Microsoft SQL Server (❌ Roadmap v2.5)
  • Oracle (❌ No plans, licensing cost)

Q: Supporta container deployment (Docker/Kubernetes)?
A: Sì, Docker first-class:

Docker Compose (quickstart):

yaml

version: '3.8'
services:
  sentinel-core:
    image: sentinelsuite/sentinel-core:latest
    ports:
      - "8080:8080"
    environment:
      DATABASE_URL: postgresql://user:pass@db:5432/sentinel
      REDIS_URL: redis://cache:6379
    depends_on:
      - db
      - cache
  
  db:
    image: postgres:15
    volumes:
      - postgres_data:/var/lib/postgresql/data
  
  cache:
    image: redis:7-alpine

Kubernetes (Helm chart in sviluppo, Q3 2025):

  • Horizontal pod autoscaling
  • Persistent volumes per database
  • Ingress integration (NGINX, Traefik)
  • Secrets management (Vault, Sealed Secrets)

Q: API rate limiting?
A: Sì, configurabile per security:

Default limits:

  • Authenticated requests: 1000/hour per API token
  • Unauthenticated: 100/hour per IP (per prevent abuse)
  • Webhook callbacks: 10000/hour (per scanner integration high-volume)

Customizable per use case (CI/CD potrebbe bisogno higher limit).

Response quando limit exceeded:

http


HTTP/1.1 429 Too Many Requests
Retry-After: 3600
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1672531200

{
  "error": "Rate limit exceeded",
  "message": "Max 1000 requests per hour. Resets at 2024-01-15T10:00:00Z"
}
ItalianoitItalianoItaliano