Files
vulncheck/app/services
vulncheck c952a42bc2 fix(eol): three-tier severity + EOL-SOON; nessus Essentials import fallback
Two tester findings.

1. Windows Server 2016 wrongly flagged as EOL (HIGH) though it still
   gets monthly CUs until 2027-01. Cause: is_eoas (active-support
   ended 2022) was treated the same as is_eol → MEDIUM/critical-ish
   finding even while security patches still flow.

   New three-tier model in _build_eol_status():
     - is_eol      : security support ENDED (eolFrom past, no ESU) →
                     HIGH, cvss 9.0, title "EOL".
     - is_eol_soon : eolFrom within EOL_SOON_DAYS (90) but future →
                     MEDIUM, cvss 5.5, title "EOL SOON (Nd)".
     - is_eoas only: mainstream support ended, security patches still
                     flow → LOW, cvss 3.0, title "end-of-active-support".
   Server 2016 (eoas 2022, eol 2027-01) now → LOW today, flips to
   MEDIUM "EOL SOON" ~90d before Jan 2027, HIGH after.
   _days_until() handles eolFrom given as a bool (endoflife quirk).
   Both check_eol + check_os_eol share _build_eol_status now.

2. Nessus "Scan + Import" failed with "Server disconnected without
   sending a response" on launch. That's the Nessus Essentials (free)
   API-launch limitation — it drops the connection and the scan never
   enters 'running'. The job now catches the launch NessusAPIError: if
   the scan already has completed/imported results it imports those
   (flagged via job.launch_warning + a clear stage message); otherwise
   it fails with an actionable hint ("this edition may not allow
   API-triggered scans — launch in the Nessus UI then Sync now").

eol-check loops (router + scheduler) updated to also surface
is_eol_soon findings.
2026-06-01 08:19:19 +02:00
..
2026-02-08 10:15:20 +01:00