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
Когато проект публикува подписани контролни суми или подписан манифест на изданието, проверявайте подписа върху списъка, а не върху всеки файл поотделно. Така една доверена референция покрива цялото издание.
След инсталиране: Пазете пътя за актуализация
Поддържаният канал продължава да има значение след края на инсталацията. Преопакованите сборки могат да носят собствен актуализатор и той решава какво ще работи следващия месец. Сборка, която никога не се актуализира, не е по-безопасна. Тя просто е по-стара.
Запишете как клиентът трябва да се актуализира и дали система за управление отговаря за тази стъпка. Ако отговорът е ръчно изтегляне от форум, въпросът за веригата за доставки така и не се е затворил.
Два произхода, не един
Разработчикът на клиента и издателят на профила са отделни страни. Официален клиент, който импортира профил от несвързан оператор, е нормална подредба и профилът заслужава собствена проверка: кой го е издал, как е доставен и дали сертификатът на сървъра съвпада с името, което очаквате.
Пазете двата произхода разпознаваеми в бележките си. В момента, в който клиент бъде заменен или устройство бъде възстановено от резервно копие, именно тези два реда спират неизвестна сборка или неизвестен профил да се върне заедно с останалите данни.