- Layer 4 EntropyScanner: Shannon entropy, Base32/Base64 detection, CVE-2025-55284 ping/nslookup exfil, EchoLeak markdown pattern, DNS tunneling (iodine/dnscat) - Layer 5 UnicodeScanner: ASCII Smuggling (U+E0000 Tags Block), Variant Selectors, Zero-Width steganography, CamoLeak image-ordering (CVE-2025-53773), homoglyphs, BiDi override, high-entropy URL params - 30 DNS covert channel rules (dns-001 to dns-030) - ATLASMapper: 29 techniques (ATLAS v5.4.0 Feb 2026), added AML.T0062 (Agent Tool Invocation), AML.TA0015 (C2 tactic), memory poisoning, multi-agent trust, CamoLeak, Unicode steganography mappings - Rule count: 72 → 102 - Build: tsup 316ms, zero TypeScript errors
47 lines
1.2 KiB
TypeScript
47 lines
1.2 KiB
TypeScript
/** SOC-style dark theme constants */
|
|
export const theme = {
|
|
colors: {
|
|
bg: '#0f172a',
|
|
card: '#1e293b',
|
|
cardBorder: '#334155',
|
|
cardBorderHover: '#475569',
|
|
text: '#e2e8f0',
|
|
textBright: '#f1f5f9',
|
|
textMuted: '#94a3b8',
|
|
textDim: '#64748b',
|
|
|
|
threatNone: '#22c55e',
|
|
threatLow: '#3b82f6',
|
|
threatMedium: '#eab308',
|
|
threatHigh: '#f97316',
|
|
threatCritical: '#ef4444',
|
|
|
|
accent: '#8b5cf6',
|
|
accentHover: '#7c3aed',
|
|
},
|
|
font: "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, monospace",
|
|
} as const
|
|
|
|
export type ThreatColorKey = 'none' | 'low' | 'medium' | 'high' | 'critical'
|
|
|
|
export const THREAT_COLORS: Record<ThreatColorKey, string> = {
|
|
none: theme.colors.threatNone,
|
|
low: theme.colors.threatLow,
|
|
medium: theme.colors.threatMedium,
|
|
high: theme.colors.threatHigh,
|
|
critical: theme.colors.threatCritical,
|
|
}
|
|
|
|
/** Returns a CSSProperties-compatible inline style object for cards */
|
|
export function cardStyle(extra?: React.CSSProperties): React.CSSProperties {
|
|
return {
|
|
background: theme.colors.card,
|
|
border: `1px solid ${theme.colors.cardBorder}`,
|
|
borderRadius: 8,
|
|
padding: 20,
|
|
color: theme.colors.text,
|
|
fontFamily: theme.font,
|
|
...extra,
|
|
}
|
|
}
|