
Обнаруживает сетевые скрытые каналы с использованием энтропии Шеннона и коэффициента бимодальности Сарла для выявления эксфильтрации зашифрованных полезных нагрузок ICMP/TCP и утечек на основе таймингов.
Детерминированный криптографический сетевой скрытый канал и детектор утечек на основе энтропии Шеннона
Разработано Çınar (@prox0959)
Академический уровень | Ноль внешних зависимостей | Анализ за доли миллисекунды
Современные межсетевые экраны, системы глубокой проверки пакетов (DPI) и системы предотвращения утечек данных (DLP) анализируют заголовки пакетов и ищут шаблоны открытого текста. Продвинутые устойчивые угрозы (APT) и сложное вредоносное ПО обходят эти периметры с помощью скрытых каналов (определённых в DoD 5200.28-STD и в академическом контроле информационных потоков):
0, $T_1$ для бита 1). Полезная нагрузка на 100% безобидна, но ритм утекает конфиденциальные данные.SpectralCovert обнаруживает оба вектора, используя чистую математическую статистику: информационную энтропию Шеннона, коэффициент бимодальности Сарла и спектральный анализ джиттера — без внешних зависимостей.
Информационная энтропия количественно определяет степень неопределённости или сжимаемости байтовой последовательности:
$$H(X) = - \sum_{i=1}^{n} P(x_i) \log_2 P(x_i)$$
$$H_{norm} = \frac{H(X)}{\min(8.0, \log_2(N))}$$
Когда злоумышленник модулирует биты $0$ и $1$ по временам межпакетного прибытия ($\Delta t_i = t_i - t_{i-1}$), естественный сетевой джиттер преобразует дискретные задержки в бимодальное гауссово смешанное распределение.
$$BC = \frac{\gamma^2 + 1}{\kappa}$$
Где:
socket, struct, math, statistics, argparse, time, random). pip install не требуется.abcdef..., Linux последовательный).Запускает полный набор проверок, тестирующий безобидные базовые значения против зашифрованной эксфильтрации через ICMP-хранилище и модулированных временны́х каналов:
python spectralcovert.py --demo
Предпросмотр вывода бенчмарка:
========================================================================
ACADEMIC BENCHMARK: COVERT CHANNEL DETECTION VALIDATION
========================================================================
[PHASE 1] EVALUATING ICMP STORAGE CHANNELS (PAYLOAD SHANNON ENTROPY)
------------------------------------------------------------------------
[*] Test 1: Benign Windows ICMP Echo Request (32 bytes)
Payload: b'abcdefghijklmnopqrstuvwa'...
Entropy: [===========---------] 4.438 / 8.000 bits [NORMAL TEXT / OS PING]
Verdict: BENIGN (Score: 0/100)
[*] Test 2: Covert Exfiltration - Encrypted AES Stolen Key in ICMP Payload
Payload (hex): 6d379ecb7647003cb5e0b4554c7fb491...
Entropy: [===========---------] 4.750 / 8.000 bits [NORMAL TEXT / OS PING]
Verdict: ALERT_COVERT_EXFILTRATION (Score: 95/100)
-> Near-maximum entropy density (95.0% of theoretical limit, 4.750 bits/byte)
-> Abnormal byte diversity (87.5% unique symbols) - High confidence encrypted payload
[+] Phase 1 Passed: 100% Accuracy on Storage Exfiltration Channels.
[PHASE 2] EVALUATING COVERT TIMING CHANNELS (IPD & SPECTRAL ANALYSIS)
------------------------------------------------------------------------
[*] Generating benign traffic stream (100 packets, ~200ms interval + jitter)...
Sample Size: 99 intervals
Mean Delay: 199.554 ms | StdDev: 5.633 ms
Sarle's Bimodality Coefficient: 0.3486 (Threshold: 0.555)
Verdict: BENIGN_NATURAL_JITTER (Threat Score: 10/100)
[*] Generating Covert Timing Channel modulating: 'ETH2026'
Bit 0 delay -> 40ms, Bit 1 delay -> 140ms + simulated network jitter
Sarle's Bimodality Coefficient: 1.0282 (Threshold: 0.555)
Detected Dual Clusters: T0 ~ 38.4 ms | T1 ~ 112.3 ms
Verdict: COVERT_TIMING_CHANNEL_DETECTED (Threat Score: 92/100)
--- Bimodal Inter-Packet Delay Histogram ---
32.6 - 46.9 ms | ######################### (33)
46.9 - 61.2 ms | ## (3)
61.2 - 75.5 ms | (0)
75.5 - 89.7 ms | (0)
89.7 - 104.0 ms | (0)
104.0 - 118.3 ms | (0)
118.3 - 132.6 ms | (1)
132.6 - 146.9 ms | ############## (19)
[+] Covert Message Reconstruction Attempt:
Original Secret : 'ETH2026'
Decoded Payload : 'ETH2026'
Match Confirmed : True
[+] Phase 2 Passed: 100% Accuracy on Covert Timing Channel Detection.
Симулируйте эксфильтрацию данных с помощью модуляции задержек и исследуйте бимодальное распределение в реальном времени:
python spectralcovert.py --simulate-leak "CONFIDENTIAL_KEY"
Проверяйте произвольный текст или шестнадцатеричные байтовые последовательности на аномалии энтропии:
python spectralcovert.py --analyze-text "sk-proj-938210384019283019283019283019283"
Обнаружение скрытых каналов — это ведущая область исследований в области безопасности компьютерных систем (например, Information Security Group в ETH Zurich, Network and System Security в TU Munich и Oxford Cyber Security).
Этот проект демонстрирует владение:
SpectralCovert/
├── core/
│ ├── __init__.py # Package entry
│ ├── entropy.py # Shannon & normalized entropy, Chi-Squared test, OS baselines
│ ├── timing.py # IPD analyzer, Sarle's bimodality coefficient, secret bit recovery
│ ├── channel_sim.py # Synthetic benign & covert traffic generator
│ └── visualizer.py # ASCII spectral histogram & terminal formatting
├── tests/
│ └── test_covert.py # Automated unit test suite
├── spectralcovert.py # Main CLI & benchmark runner
├── README.md # Technical documentation & mathematics
├── LICENSE # MIT License
└── .gitignore
Выпущено под лицензией MIT. Создано Çınar (@prox0959).
@software{spectralcovert2026,
author = {prox0959},
title = {SpectralCovert: Deterministic Network Covert Channel and Shannon Entropy Leak Detector},
year = {2026},
url = {https://github.com/prox0959/SpectralCovert}
}