Інсталятар VPN з люстэрка? Спачатку праверце выдаўца
Канал спампоўкі вызначае, які код выконваецца і хто можа яго абнаўляць. Спачатку праверце подпіс, крыніцу кантрольнай сумы і ўласніка профілю.
Тунэль працаваў, інтэрфейс загрузіўся, і сеанс заставаўся стабільным цэлы тыдзень. Нішто з гэтага не кажа, хто стварыў інсталятар. Кліент VPN працуе з дастатковымі прывілеямі, каб перапісваць маршруты і чытаць уліковыя даныя, таму выдавец ёсць часткай мадэлі пагроз, а не зноскай.
Выконвайце праверкі па парадку і спыніцеся на першай, якая не прайшла. Яны недарагія, і кожная закрывае розную прарэху.
Крок першы: Спампуйце з канала, які называе праект
Кожны праект дакументуе, дзе знаходзяцца яго выпускі, і гэтая старонка ёсць крыніцай. Зборкі супольнасці, спісы ў крамах і парталы пастаўшчыкоў — усё гэта легітымныя каналы. Кожны з іх легітымны толькі тады, калі сам праект указвае на яго. Гэта і ёсць праверка, і яна не тое ж самае, што выглядаць афіцыйна.
Файл, названы ў гонар праекта, нічога не даказвае. Перайменаваць інсталятар — аперацыя на секунду, і менавіта назву вынік пошуку паказвае першай.
Крок другі: Праверце подпіс супраць вядомай асобы
Праверка подпісу добра адказвае на вузкае пытанне. Яна кажа, што пэўная асоба падпісала гэты бінарны файл і што з таго часу ён не змяніўся. Яна адказвае на адно пытанне і адмаўляецца ад іншага. Яна не можа сказаць, ці тая гэта асоба, якой вы хацелі давяраць.
# macOS: who signed this app, and is the signature intact?
codesign -dv --verbose=4 /Applications/Tunnel.app
spctl -a -vvv -t install /Applications/Tunnel.app
# Windows: signature and publisher of the installer
Get-AuthenticodeSignature .\tunnel-setup.exe | Format-List Status, SignerCertificate
# Linux: detached signature from the project's release page
gpg --verify tunnel-1.4.2.tar.gz.asc tunnel-1.4.2.tar.gz
Чытайце асобу, а не слова стану. Старонні распрацоўшчык з сапраўдным сертыфікатам стварае сапраўдны подпіс. Аперацыйная сістэма, якая паведамляе пра вядомага выдаўца, сказала вам толькі, што нехта заплаціў за сертыфікат.
Крок трэці: Параўнайце хэш з незалежнай крыніцай
Кантрольная сума даказвае адпаведнасць эталоннаму значэнню. Калі эталон прыйшоў разам са спампоўкай, абодва могуць быць памылковымі адначасова, а параўнанне ўсё роўна пройдзе. Менавіта так адбываецца збой у большасці падручнікаў. Хэш знаходзіцца на той жа старонцы, што і файл, які ён апісвае.
# Linux and macOS
shasum -a 256 tunnel-1.4.2.dmg
# compare against the value published on the project's own release page
# not against a value copied from the same mirror
Калі праект публікуе падпісаныя кантрольныя сумы або падпісаны маніфест выпуску, правярайце подпіс над спісам, а не над кожным файлам асобна. Так адзін давераны эталон ахоплівае ўвесь выпуск.
Пасля ўсталявання: Захавайце шлях абнаўлення
Падтрыманы канал застаецца важным і пасля завяршэння ўсталявання. Перапакаваныя зборкі могуць несці ўласны абнаўляльнік, і менавіта ён вырашае, што запусціцца наступным месяцам. Зборка, якая ніколі не абнаўляецца, не бяспечнейшая. Яна проста старэйшая.
Запішыце, як кліент павінен абнаўляцца і ці займаецца гэтым крокам сістэма кіравання. Калі адказ — ручная спампоўка з форуму, пытанне ланцуга паставак так і не закрылася.
Дзве крыніцы, а не адна
Распрацоўшчык кліента і ўладальнік профілю — асобныя бакі. Афіцыйны кліент, які імпартуе профіль ад старонняга аператара, — звычайная сітуацыя, і профіль заслугоўвае ўласнай праверкі: хто яго выдаў, як яго даставілі і ці супадае сертыфікат сервера з імем, якое вы чакаеце.
Трымайце абедзве крыніцы пазнавальнымі ў сваіх нататках. У момант, калі кліент замяняюць або прыладу аднаўляюць з рэзервовай копіі, менавіта гэтыя два радкі не дазваляюць невядомай зборцы ці невядомаму профілю вярнуцца разам з астатнімі данымі.