Заједничка DH група, свежи тајни: зашто напад постаје јефтинији
Свеже тајне сесије не поправљају слабу групу над коначним пољем. Поновна употреба једне групе распоређује најскупљу фазу напада на сваку размену која је договара.
Параметри групе су јавни по дизајну, и управо та јавност их чини лаким за игнорисање. Код Diffie-Hellman над коначним пољем модул и генератор су заједнички, а приватни експоненти и добијени сесијски кључеви нису. Скупа фаза напада ситом по бројном пољу зависи од групе, а не од једне размене, зато једна слаба група која се користи свуда постаје заједничка одговорност. Назвати параметре јавним је тачно и није суштина, јер трошак који се поново користи је трошак напада на ту групу.
Јавна половина није рањива половина, и ту је замка
Уобичајени полуаргумент каже да су параметри објављени у стандарду, па нападач већ зна њих и њихово скривање ништа не би променило. Обе тврдње су истините и ниједна не следи из друге. Испоручена подразумевана група је јавна, а приватна група коју сте генерисали прошле недеље је такође видљива свакоме ко заврши руковање. Тајност никада није била контрола; то су снага и валидација.
Оно што се мења је колико места дели исту слабост. Једна организација која генерише своју 2048-битну групу плаћа свој трошак напада, док протоколска подразумевана вредност коју изаберу милиони амортизује један трошак на све њих. У том смислу необична група није аутоматски боља. Необична група која је премала је само мања заједничка тајна са мање очију на њој.
Валидација је важна колико и величина. Партнер који шаље модул са малим факторима, или онај који није у облику који протокол очекује, може процурети информације о приватном експоненту чак и када битна дужина изгледа достојно. Библиотеке које одбијају неисправне параметре већ на улазу раде прави посао, зато је ручно писано рашчлањивање параметара лоше место за штедњу труда.
Шта предрачун заправо даје нападачу
Сито по бројном пољу има фазу која зависи само од простог броја, и његов резултат је вишеструко употребљив против сваке размене која користи тај прост број. То је цео механизам иза историјске забринутости: скупи део се плаћа једном, а маргинални трошак сваке следеће сесије опада. Свежи експоненти и даље штите сваку појединачну размену од пасивног посматрача, све док је група довољно велика да сито буде неизводљиво. Обе тврдње су спојиве, и већина расправа о овој теми долази из избора једне и одбацивања друге.
Рад Logjam из 2015. показао је снижење на 512-битни Diffie-Hellman извозне класе и проценио шта би коштао напад на веће, широко поново коришћене групе са значајним ресурсима. Демонстрација је била конкретна, процене су биле процене, и ниједно није било доказ да је одређена VPN сесија дешифрована.
Цитирајте рад због механизма и због показаног снижења, не као мерење вашег распоређивања. Старе статистике о томе колико је сервера делило подразумевану групу описују интернет те године, а не мрежу коју данас можете прегледати. Корисно што се преноси је питање: да ли ваши уређаји још увек договарају групу која је мала или слабо валидирана?
Стандардизовано није исто што и слабо
RFC 7919 дефинише именоване групе над коначним пољем, да би се обе стране договориле о групи по идентификатору и примениле доследну политику. Бити стандардизован је предност, јер уклања двосмисленост преговарања и омогућава имплементацији да одбије неподржане величине. Именована група је слаба само када је њена величина испод политике за коју тврдите да је следите, а не зато што се појављује у документу. Иста логика важи и за групе елиптичких кривих, које имају другачију структуру и другачије режиме отказа.
Држите конструкције одвојено када размишљате о њима. Закључак о Diffie-Hellman над коначним пољем не говори ништа о X25519, а закључак о 1024-битној MODP групи не говори ништа о 3072-битној. Политика снаге је по механизму, по величини и по верзији протокола, зато фраза јака криптографија није проверљива тврдња.
Аутентикација је друга половина и она не замењује. Јака група без провере партнера оставља нападача у средини, а важећи сертификат не може спасити 768-битну размену. Прегледајте их као две независне линије, а затим потврдите да се обе заиста договарају.
Прочитајте договорену групу на стварној вези
Договорену групу читајте са уређаја, а не из шаблона конфигурације. Шаблони описују намеру, а занимљива вредност је она о којој су се обе стране договориле током последњег руковања. На крајњој тачки IPsec излаз стања обично штампа изабрани предлог, укључујући MODP групу.
Забележите тај ред пре и после промене политике, и обе чувајте у запису промене. Поређење је доказ.
ipsec statusall | grep -Ei "proposal|ESP|IKE"
openssl dhparam -in /etc/vpn/dh3072.pem -check -nooutАко после промене стање и даље показује стару групу, веза није поново преговарала и измена конфигурације није ништа доказала. Поново покрените партнера или обришите безбедносну асоцијацију, а затим поново прочитајте стање. Политика примењена само на нове везе оставиће дуговечне тунеле на старим параметрима све док стоје.
Проверите групу и идентитет партнера одвојено
Одвојите шта група штити од тога ко је на другом крају. Забележите метод размене кључева, величину групе и метод аутентикације као три поља, јер они отказују независно. Тунел који је договорио 3072-битну групу али прихвата било који сертификат није исти ризик као онај који фиксира партнера и користи 2048-битну групу.
Запишите критеријуме прихватања пре почетка прегледа, да резултат буде поређење, а не мишљење. Минимална величина групе за сваку верзију протокола, листа дозвола за именоване групе и обавезна провера партнера довољни су да одлука буде механичка. Управо двосмисленост те листе претвара преглед у расправу, а расправе се не исправљају. Тада је излаз листа крајњих тачака које крше наведено правило.
ipsec statusall | grep -Ei "peer|auth|cert"
openssl s_client -connect vpn.acme.example:443 -brief -cipher 'DHE-RSA-AES256-GCM-SHA384'Затворите циклус поновним читањем договорених вредности после исправке. Усклађена конфигурацијска датотека није доказ да ју је тунел прихватио. Излаз стања и једно свеже руковање су доказ, а њихово прикупљање траје краће од састанка о томе да ли су потребни.