Како да проверите отпечаток на VPN сертификат преку одделен канал
Отпечатокот докажува идентитет само кога очекуваната вредност пристигнува преку канал што напаѓачот не го контролира. Изведете ја проверката во овој редослед.
Отпечатокот е само толку сигурен колку и каналот што ви кажа што да очекувате. Ако вредноста со која споредувате пристигнала преку истата врска што ја тестирате, споредбата не докажува ништо повеќе од тоа дека оној што ја контролира таа врска е доследен. Проверката мора да се изведе по фиксен редослед, а неуспешниот чекор треба да ве запре наместо да ве турка кон следниот. Ова е редоследот што го користам кога VPN клиент извести дека сертификатот е сменет.
Именувајте го објектот пред да ја именувате вредноста
Одлучете дали очекуваната вредност и припаѓа на листовиот сертификат на серверот, на CA што го издава или на јавниот клуч внатре во листот. Тоа се три различни проверки и тие не успеваат на различни начини. Отпечаток на CA што се совпаѓа не го закачува серверот, и хешот на јавниот клуч намерно го преживува повторното издавање што го задржува истиот клуч.
Запишете го и алгоритмот. SHA-256 е нормалното очекување сега, но постарите алатки печатеа SHA-1 освен ако не побарате друго, а 40-значна хексадецимална вредност е знак дека ќе споредувате две различни работи.
Земете ја очекуваната вредност преку втор канал
Вториот канал мора да биде таков во кој страната од која се штитите не може да пишува. Систем за обезбедување во кој веќе се автентицирате, печатен запис во сеф, база на конфигурација или потпишан документ доставен од друг процес, сите се соодветни. Порака во чет од колега, страница за поддршка до која стигнавте преку резултат од пребарување и сѐ што е залепено во терминалот во кој веќе дебагирате не се соодветни.
Побарајте ја целата вредност и алгоритмот, никогаш префикс. Две точки и големи или мали букви не се важни, но скратувањето проверка од 256 бита ја претвора во игра на погодување.
Ако никој не може да ја обезбеди очекуваната вредност од независен извор, чесниот резултат е дека овој сертификат денес не може да се провери. Да се каже тоа е подобро отколку да се закачи она што клиентот штотуку го прикажа, што предупредувањето го претвора во навика.
Извлечете ја вредноста на вашата страна
За датотека со сертификат, командата е openssl x509 -in server.crt -noout -fingerprint -sha256. Експлицитниот дигест е важен: без него излезот зависи од вашата верзија на OpenSSL. Резултатот е хексадецимална низа одделена со две точки, затоа отстранете ги двете точки и пред споредбата претворете ги двете страни во мали букви.
За крајна точка што зборува TLS директно, поврзете се и изведете го сертификатот низ цевка: openssl s_client -connect vpn.example.com:443 -servername vpn.example.com < /dev/null | openssl x509 -noout -fingerprint -sha256. Ова работи за веб-административен панел или TLS слушател, но не за OpenVPN, чиј контролен канал стои внатре во тунелот. За OpenVPN, читајте го сертификатот од профилот на дискот наместо да се обидувате да го фатите од сокетот.
Споредбата треба да биде механичка. Нормализирајте ги двете вредности со tr -d ':' и изедначување на буквите, потоа споредете ја целата низа. Споредувањето на око е начинот на кој совпаднат префикс крие разлика во последниот бајт. Ако низите се разликуваат, третирајте ја разликата како вистинска пред да барате објаснување.
Услови за запирање
Запрете ако објектот се разликува, бидејќи отпечаток на CA не може да го ослободи листовиот сертификат, а листот не може да го ослободи CA. Запрете ако алгоритмот се разликува, бидејќи вредност на SHA-1 наспроти вредност на SHA-256 не ви кажува ништо. Запрете ако отпечатокот се совпаѓа, но сертификатот е истечен, отповикан или издаден за друго име; совпаднат хеш не е проверка на валидноста и не поправа скршена верига. Запрете и ако серискиот број не се совпаѓа со серискиот број во записот со кој споредувате, бидејќи тоа е најевтиниот начин да забележите заменет сертификат.
Запрете ако новата вредност пристигнала преку каналот што го тестиравте. Ротацијата може законски да смени отпечаток, но заменската вредност сепак мора да дојде од доверливиот процес, а не од дијалогот за предупредување што го предизвика прашањето.
Запрете ако предложеното решение е да се исклучи проверката на името на домаќинот или на веригата. Отпечатокот додава ограничување на нормалните проверки; тој не ги заменува освен ако распоредувањето намерно избрало модел само со пин, а тој избор носи свои оперативни трошоци.
По споредбата
Запишете што сте споредиле, од каде дошла очекуваната вредност и кога. Ако сертификатот е повторно издаден, ажурирајте го зачуваното очекување преку истиот доверлив канал и забележете го новиот сериски број, бидејќи серискиот број е она што ја прави следната ротација проверлива.
Потоа бидете јасни за границите. Отпечатокот потврдува дека сертификатот што го имате е оној што некој ви рекол да го очекувате. Тој не кажува ништо за тоа дали домаќинот е некомпромитиран, ниту за тоа дали услугата евидентира или ограничува што може да достигне тој сертификат.