Millist VPN-protsessi see haavatavuse leid puudutab?
Bänner, teegifaili nimi ja töötav protsess võivad kirjeldada erinevaid asju. Jälgi leid ühe komponendini ja sobita siis nõuande ulatusega.
Skanneri tulemus nimetab aadressi, pordi ja midagi, mis seal läbi räägiti. See ei nimeta protsessi selle sokli taga ja VPN-hostis võib mitu protsessi masinat jagada, samas kui ainult üks neist on tunnel. Versioonistringi lugemine kõrvaltööriistast või teegifaili leidmine kettalt lisab tõendeid hosti, mitte kuulaja kohta. Leid muutub rakendatavaks alles siis, kui see seotakse ühe töötava komponendiga ja seejärel sobitatakse ulatusega, mille nõuanne tegelikult esitab.
Järjekord on oluline: esiteks komponent, teiseks nõuanne, kolmandaks parandus.
Aruanne nimetab porti, mitte programmi
Alusta lõpp-punktist, mida tegelikult hinnati. HTTPS-haldusporti vastu tehtud sond mõõtis veebiteenust, selle TLS-pinu ja kõiki selle ees olevaid puhverservereid; see ei õppinud midagi OpenVPN või WireGuardi kuulaja kohta teisel pordil. Pöördpuhverserverid ja haldusagendid teevad asja hullemaks, sest sertifikaat ja bänner võivad kuuluda esiosale, samal ajal kui haavatav teek asub selle taga taustaprotsessis.
Salvesta sihtkoht, transport, port ja teenuse nimi koos tulemusega, et ulatus liiguks leiduga kaasas.
Mis töötav koost tegelikult on
Üldotstarbelises hostis on paigaldatud pakett ja laaditud teek eraldi küsimused. Paketibaas võib loetleda parandatud versiooni, samal ajal kui pikaajaline deemon hoiab endiselt vana jagatud objekti mälus, ja põimitud seadme kujutis võib kanda oma teeke, mida ükski paketihaldur ei teata. Küsi teenusehaldajalt, mis töötab, seejärel uuri protsessi ja selle seoseid.
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
Protsesside loendi algusaeg on detail, mille inimesed vahele jätavad. Enne viimast pakendiuuendust käivitatud deemon töötab endiselt koostuga, mille ta alglaadimisel laadis, ja see on täpselt juhtum, kus inventuur ütleb parandatud ja socket ütleb vastupidist.
Koosti sobitamine nõuande ulatusega
Nõuanded kirjeldavad tooteid, versioone ja mõnikord nõutavaid tingimusi ning need kolm välja ei ühti alati paketiversiooniga. OpenVPN-i 2014. aasta aprilli Heartbleedi nõuanne on kasulik ajalooline näide, sest see eristab mõjutatud Access Serveri väljalaskeid veebiteenustest ja VPN-i deemonitest, mille kokkupuude oli erinev. Õppetund on lugeda, millist komponenti tekst hõlmab, mitte sobitada mustri järgi sõna OpenSSL.
See nõuanne on ka vananenud. Selle parandatud väljalaskenumbrid ei ole nüüd paigaldusnõuanne ja 2014. aastal parandatud viga ei ütle midagi hilisemate probleemide kohta harus, mida täna käitad.
Lahkarvamuse lahendamine ja seejärel kokkupuute sulgemine
Kui inventuur ja hinnang lahknevad, kontrolli, kas mõlemad kirjeldavad sama lõpp-punkti ja käituskeskkonda: teine aadress, esiosa puhverserver, teine teenus, porti veel seotud vana protsess või põimitud teek, mida paketihaldur kunagi ei näinud. Lahenda see piiril enne aruande ümberkirjutamist.
Rakenda toetatud parandus, taaskäivita mõjutatud teenus ja kinnita, et uus koost on see, mis praegu töötab. Kettal parandatud fail, samal ajal kui vana protsess teenindab endiselt liiklust, ei ole parandus.
Seejärel tegele sellega, mida komponent võis kokkupuuteakna ajal sisaldada. Parandamine ja mandaatide asendamine vastavad erinevatele küsimustele ning mõjutatud hosti lähedal hoitav sertifikaat ei ole iseenesest nimekiri sellest, mis lekkis. Järgi intsidendi omaniku protseduuri tühistamiseks, sessioonide eemaldamiseks ja klientide uuendamiseks ning registreeri, milline komponent oli mõjutatud, miks tõendid kehtisid ja mis selle sulges. See kirje on see, mida hilisem ülevaatus loeb.