2013-07-10

waqur: (Евро)
OpenVPN реализует интересную защиту от сканирования портов: они называют это HMAC Firewall. Суть этой опциональной фичи заключается в том, что сервер проверяет HMAC в каждом пакете, прежде чем этот пакет будет принят на обработку. HMAC вычисляется по содержимому пакета и pre-shared ключу между клиентом и сервером (который хранится в файле ta.key). Таким образом, не зная pre-shared ключа, невозможно даже определить достоверно, слушает ли OpenVPN-сервер данный порт или нет (при условии, что вы не используете TCP-порт для сервера и у вас sysctl-параметр net.inet.udp.blackhole равен 1).

Разумеется, одного только знания pre-shared ключа недостаточно для входа в VPN; далее в процессе установления соединения начинается сессия Диффи-Хеллмана, однако она уже посложнее в реализации (RSA, LZO, уйма симметричных шифров на выбор, защита от replay-атак с использованием генератора случайных чисел криптографического качества и т.п.) — так что там возможен и buffer overrun, и DoS-атака (в т.ч. и исчерпание памяти на сервере), и многое другое.

HMAC firewall просто пресекает все эти вещи на корню. Вычислить фиксированную хэш-функцию пару раз — для этого даже куча не нужна. Это вообще хороший пример того, как следует делать подобные вещи, а вот port knocking — контрпример.

March 2024

S M T W T F S
     12
3456789
10111213141516
17181920212223
24252627282930
31      

На этой странице

Автор стиля

Развернуть

No cut tags
Page generated 2025-06-18 01:57 pm
Powered by Dreamwidth Studios