From vulnerability information to explainable priorities.
A vulnerability intelligence project connecting technology profiles to explainable advisory findings with deterministic version matching and risk scoring.
The product
Cybersecurity Intelligence correlates public advisory information with registered technology profiles. Its product model separates source evidence, canonical advisories, affected-version matching and prioritized findings so an engineer can inspect why a technology was flagged.
- C#
- .NET
- ASP.NET Core
- React
- TypeScript
- PostgreSQL
- OpenTelemetry
The main flow
Register a technology profile
Technology and version information define the scope for correlation. The application uses a protected session; the access screen is its public entry.
Normalize advisory evidence
Source adapters convert provider records to canonical advisories, keeping external formats outside the domain model.
Inspect explainable findings
Version matching and risk scoring follow deterministic rules. Evidence and matching reasons support investigation; an LLM may explain a result rather than determine the match.
Architecture
Public advisory sources → adapters → canonical advisories → PostgreSQL
Technology profile → deterministic version matching + scoring → explainable findings
React ↔ ASP.NET Core API → Application → Domain · Worker → ingestion
A .NET modular monolith
ASP.NET Core API and Worker Service depend on Application and Domain. Infrastructure implements PostgreSQL, source and provider adapters. Domain and Application do not reference Infrastructure.
A versioned application boundary
React communicates through HTTP/JSON contracts. The product separates deterministic correlation from optional model explanations and instruments processing with OpenTelemetry.
Availability and limits
A portfolio project under active development. The public presentation describes its product model and architecture; it does not certify source coverage, live collection freshness or complete production readiness. Application access requires a session. Public demo and source links appear only when configured.