Заштитените пакети криптографски не истекуваат, затоа пакет што бил валиден пред пет минути е валиден и сега, бидејќи шифрирањето и заштитата на интегритетот не кажуваат ништо за тоа кога се создадени бајтите. Напаѓач што може да го пресретне и препрати сообраќајот не мора да го пробие шифрарот. Затоа секој сериозен тунелски протокол носи состојба на низата покрај своите клучеви.

Механизмот е мал, а неговите режими на откажување лесно се мешаат со загуба на пакети.

Валиден шифриран текст не е свеж шифриран текст

Автентикацијата одговара на едно прашање: дали овие бајти дојдоа неизменети од оној што го има клучот. Таа не одговара дали примачот ги гледа за прв пат. Преигран пакет совршено го поминува првиот тест, и токму затоа само проверката на интегритетот не може да запре преигрување и затоа на протоколот му е потребно второ правило за прифаќање. Примач што само автентицира нема одбрана од напаѓач што држи снимка.

Тоа правило е ефтино за спроведување и ефтино за формулирање: прими даден заштитен пакет еднаш, под даден клуч. Сето друго во оваа област произлегува од тоа како имплементацијата го следи тоа еднаш.

Да се чита отфрлањето поради преигрување како грешка при дешифрирање те праќа во сосема погрешен потсистем.

Реден број и прозорец

IPsec ESP носи реден број и примачот држи лизгачки прозорец на неодамна прифатени вредности, при што спецификацијата на ESP го опишува стандардниот размер на прозорецот и можноста да се прошири. WireGuard оди по друг пат со бројач по клуч и експлицитна проверка против него. Ниту еден дизајн не претпоставува дека пакетите пристигнуваат по ред, бидејќи вистинските мрежи ги прередуваат. Двата толерираат прередување и ниту еден не толерира повторување.

Прозорецот е тоа што ја овозможува таа толеранција. Пакет малку зад највисоката видена вредност сето уште може да се прифати ако претходно не бил прифатен; пакет далеку назад, или таков чие место веќе е означено, се отфрла. Зголеми го прозорецот и ќе толерираш повеќе прередување по цена на повеќе состојба по асоцијација.

Дијагностичките бројачи покажуваат во кој случај си. Отфрлањата поради преигрување го зголемуваат одреден бројач а не општа грешка, и читањето на тој бројач е првото корисно набљудување.

nstat -az | grep -i XfrmIn
ip -s xfrm state | head -n 30
wg show wg0 transfer

Состојбата му припаѓа на клучот, не на домаќинот

Состојбата на бројачот е врзана за безбедносна асоцијација или за епоха на клуч, затоа промената на клучот создава свеж контекст и сопствен простор на низа. Бришењето бројач без замена на клучот, или повторното користење на асоцијација по рачно ресетирање, ја крши претпоставката на која се потпира прозорецот на примачот. Затоа постои промена на клучеви водена од протоколот, а не копче за ресетирање видливо за операторот.

Кога тунелот се однесува лошо по рачна интервенција, прашај дали интервенцијата ја допре состојбата на низата. Конфигурација што изгледа идентично може да се однесува поинаку бидејќи состојбата што ја наследила не е состојбата што ја очекува.

Дијагностицирај ја причината пред да исклучиш нешто

Загубата, прередувањето, дуплираниот сообраќај и дефектот во имплементацијата сите се појавуваат како повторни преноси, и само еден од нив е проблем со преигрување. Исклучувањето на проверката за да се смири шумот ја отстранува својството на кое се потпиравте и ја прави првобитната причина потешка за наоѓање, бидејќи сега повторните преноси немаат никакво објаснување.

Собери ограничени докази: идентификатори на асоцијацијата, редни броеви и бројачи, без носивиот товар. Тоа е доволно за да се разликува дупликат од прередено пристигнување, и не ја претвора твојата дијагностичка датотека во копија од сообраќајот на корисникот.

Што не ветува проверката

Заштитата од преигрување е својство на обработката на пакети во еден протокол. Таа не значи дека операторот не води евиденција, дека страницата не може да препознае сметка или дека сесијата е анонимна. Тоа се одделни прашања за одделни системи, и силниот дизајн против преигрување не одговара на ниту едно од нив.

Одржуван софтвер со поддржани поставки е практичната контрола достапна на корисникот. Пакетот го обработува протоколот; сето друго останува оперативна одлука.

Поврзани статии