Rezultat optičnega bralnika navaja naslov, vrata in nekaj, o čemer se je tam dogovorilo. Ne navaja procesa za to vtičnico, na gostitelju VPN pa si lahko več procesov deli stroj, medtem ko je samo eden od njih tunel. Branje niza različice iz pomožnega orodja ali iskanje knjižnične datoteke na disku doda dokaze o gostitelju, ne o poslušalcu. Ugotovitev postane izvedljiva šele, ko se pritrdi na eno delujočo komponento in nato uskladi z obsegom, ki ga priporočilo dejansko navaja.

Vrstni red je pomemben: najprej komponenta, nato priporočilo, nazadnje odprava.

Poročilo navaja vrata, ne programa

Začnite pri končni točki, ki je bila dejansko ocenjena. Preizkus proti skrbniškim vratom HTTPS je izmeril spletno storitev, njen sklad TLS in kakršenkoli posrednik pred njo; o poslušalcu OpenVPN ali WireGuard na drugih vratih ni izvedel ničesar. Povratni posredniki in upravljavski agenti to poslabšajo, ker lahko potrdilo in pasica pripadata sprednjemu delu, medtem ko ranljiva knjižnica stoji za njim v procesu v ozadju.

Zabeležite cilj, prenos, vrata in ime storitve skupaj z rezultatom, da bo obseg potoval z ugotovitvijo.

Kaj je v resnici delujoča različica

Na gostitelju splošnega namena sta nameščeni paket in naložena knjižnica dve ločeni vprašanji. Podatkovna baza paketov lahko navaja popravljeno različico, medtem ko dolgo delujoči demon še vedno drži stari skupni objekt v pomnilniku, vgrajena podoba naprave pa lahko nosi lastne knjižnice, o katerih ne poroča noben upravitelj paketov. Vprašajte upravitelja storitev, kaj teče, nato preglejte proces in njegove povezave.

systemctl status openvpn-server@server --no-pager
ps -o pid,lstart,args -C openvpn
ss -lntup | grep -E '1194|443'
dpkg -l | grep -i -E 'openvpn|libssl'
ldd "$(command -v openvpn)" | grep -i ssl

Čas zagona na seznamu procesov je podrobnost, ki jo ljudje preskočijo. Demon, zagnan pred zadnjo posodobitvijo paketov, še vedno izvaja različico, naloženo ob zagonu, in to je natanko primer, ko inventar pravi popravljeno, vtičnica pa pravi drugače.

Usklajevanje različice z obsegom priporočila

Priporočila opisujejo izdelke, različice in včasih zahtevane pogoje, ta tri polja pa se ne ujemajo vedno z različico paketa. Priporočilo OpenVPN o Heartbleed iz aprila 2014 je koristen zgodovinski primer, ker ločuje prizadete izdaje Access Serverja od spletnih storitev in demonov VPN, ki so imeli drugačno izpostavljenost. Nauk je brati, katero komponento besedilo pokriva, namesto ujemanja besede OpenSSL po vzorcu.

To priporočilo je tudi zastarelo. Njegove popravljene številke izdaj zdaj niso namestitveni nasvet, napaka, popravljena leta 2014, pa ne pove ničesar o poznejših težavah v veji, ki jo poganjate danes.

Razrešitev neskladja, nato zaprtje izpostavljenosti

Ko se inventar in ocena razhajata, preverite, ali oba opisujeta isto končno točko in isto izvajalno okolje: drug naslov, sprednji posrednik, drugo storitev, star proces, še vedno vezan na vrata, ali vgrajeno knjižnico, ki je upravitelj paketov ni nikoli videl. Razrešite to na meji, preden prepišete poročilo.

Uporabite podprto popravek, znova zaženite prizadeto storitev in potrdite, da zdaj teče nova različica. Popravljena datoteka na disku, medtem ko stari proces še vedno streže prometu, ni odprava.

Nato obravnavajte, kaj je komponenta morda hranila v oknu izpostavljenosti. Popravljanje in zamenjava poverilnic odgovarjata na različna vprašanja, potrdilo, shranjeno blizu prizadetega gostitelja, pa samo po sebi ni seznam tega, kar je uhajalo. Sledite postopku lastnika incidenta za preklic, odstranitev sej in posodobitve odjemalcev ter zabeležite, katera komponenta je bila prizadeta, zakaj so dokazi veljali in kaj jo je zaprlo. Ta zapis bo bral poznejši pregled.

Sorodni članki