Antivirus imzaları həftələr əvvəl yenilənməyi dayandırmış noutbuk hələ də daxili tətbiqinizi aça bilirsə, səhv olan şey çox vaxt siyasət sənədi deyil. Girişin rədd edilməsindən əvvəl üç ayrı sistem razılaşmalıdır: biri son nöqtəni ölçür, biri bu ölçməni icazə və ya rədd qərarına çevirir, biri isə trafiki həqiqətən atır. Uyğun olmayan cihaz yenə də içəri girirsə, məhz bu halqalardan biri yoxdur və ya olmamalı olduğu sübutlara güvənir. Aşağıdakı yoxlamalar bu sıra ilə gedir və hər birinin bir dayanma nöqtəsi var.

Blok son addımdır, ilk deyil

Autentifikasiya və cihaz vəziyyəti fərqli suallara cavab verir. Uğurlu giriş bir etimadnamənin təqdim edildiyini sübut edir; onu təqdim edən maşında hansı proqram təminatının işlədiyi barədə heç nə demir. Bu boşluq kopyalanmış müştəri profilinin sağlam görünən sessiyanı sağlam olmayan hosta daşıya bilməsinin səbəbidir.

Son nöqtə uyğunluğu işinin bu zəncir üçün artıq lüğəti var. RFC 5209-dakı NEA istinad modeli işi toplayıcı, qiymətləndirmə addımı və tətbiq nöqtəsinə bölür və öz vəziyyəti barədə yalan danışan müştərinin modeldən kənarda qaldığını açıq deyir. Bu qeyd diaqramdan daha vacibdir: etibarlı platforma modulu özü barədə bildirilən ölçməni fakta çevirmir.

Toplayıcını əhatə dairəsi barədə dürüst saxlayın. Siyasətinizin adlandırdığı atributları, giriş istəyən cihazda bildirməlidir və az başqa şey. Quraşdırılmış hər paketi sadalayan inventar agenti cihaz vəziyyəti toplayıcısından fərqli bir alətdir və fərq həm saxlama, həm də dəqiqlik problemidir. Hesabat bir cihaz kimliyinə bağlana bilmirsə, qiymətləndirici hansı maşını təzəcə təsdiqlədiyini təxmin edir.

Qırmızı status göstərən panel nəzarət deyil. Rədd edilmiş istifadəçinin hələ nəyə çata bildiyini soruşun: viki, fayl paylaşımı, verilənlər bazası portu? Bərpa üçün bir dar səth lazımdır, qalan hər şey blokun arxasında olmalıdır.

Qaydanı oxumazdan əvvəl hesabatı oxuyun

Müştərinin yaşıl quş işarəsindən deyil, mənbədən başlayın. Windows-da yerli ölçmə Defender-dən və ya özünü Security Center-ə qeyd edən hansı məhsul varsa ondan gəlir və hər ikisi satıcı konsolu olmadan oxuna bilir:

Get-MpComputerStatus | Select-Object AMServiceEnabled, RealTimeProtectionEnabled, AntivirusSignatureLastUpdated
Get-CimInstance -Namespace root/SecurityCenter2 -ClassName AntiVirusProduct | Select-Object displayName, productState

İkinci əmr productState adlı tam ədəd qaytarır. Onun bitləri səthi sənədləşdirilib və satıcılar aktivləşdirmə və yenilik bayraqlarını fərqli yerləşdirir, ona görə onu təhlil etmək əvəzinə təsdiqləyin. Üçüncü tərəf paketləri də silindikdən sonra Security Center qeydini buraxır və bu, artıq diskdə olmayan proqram təminatı barədə hesabat verir.

İnsanların atladığı sahə yaşdır. İmza vaxt damğası yalnız qiymətləndirmə aparan maşının saatına nisbətdə məna daşıyır, ona görə onu gözlə təxmin etmək əvəzinə intervala çevirin:

$sig = (Get-MpComputerStatus).AntivirusSignatureLastUpdated
[int](New-TimeSpan -Start $sig -End (Get-Date)).TotalHours

İndi siyasətin oxunacaq bir rəqəmi var. Qaydanız 72 saat deyirsə, istifadə etdiyi rəqəm budur və bir həftə yatmış noutbuk heç kim etiketi şərh etmədən uğursuz olur. Eşiyi əmrin yanında qeyd edin, çünki son nöqtə aləti dəyişdirildikdə ikisi bir-birindən uzaqlaşır.

Hər cihaz vəziyyətini yazılı qərara çevirin

Cihaz vəziyyəti ilə bağlı mübahisələrin çoxu əslində naməlum sətirlə bağlı mübahisədir. İlk insidentdən əvvəl qərar verin, sübutu, qərarı və sahibi göstərən cədvəldə, beləliklə heç kim şlüz konsolunda improvizasiya etməsin.

Evidence the assessor hasVerdictWhat it protects against
Timestamp inside the policy window, protective service runningAdmit to normal applicationsNothing yet; the other checks still apply
Timestamp older than the windowDeny, admit remediation page onlySignature rollback and dormant laptops
Service disabled or reporting offDeny, escalate to the endpoint ownerAn agent reporting stale success
No report at all for this sessionTreat as deny, never as healthyAgents that fail open under load

Məhsulların fərqləndiyi yer alt sətirdir. Bəzi şlüzlər bağlantını rədd edir və səbəbini izah edir; digərləri tunelin qalxmasına imkan verib məhdud siyasət tətbiq edir; bir neçəsi son məlum yaxşı hesabata qayıdır. Yalnız ilk ikisi müdafiə oluna bilər və sizin hansını etdiyinizi yoxlamağa dəyər.

Kimliyi və icazəni də öz zolaqlarında saxlayın. Hər cihaz vəziyyəti testindən keçən noutbuk hələ də tətbiq üçün düzgün insan avtorizasiyasına ehtiyac duyur və cihaz sertifikatı fayl sisteminin vəziyyətini deyil, açarın sahibliyini sübut edir. Üçünü bir boolean-a sıxmaq, yardım masası hesabının istehsala daimi giriş əldə etməsinin yoludur.

Tətbiq yolunu panel ilə deyil, sorğu ilə yoxlayın

Tətbiqetmə sorğunun xassəsidir, ona görə onu bir sorğu ilə ölçün. Uyğun olmayan maşını tunelə qoyun və real istifadəçinin edəcəyi çağırışı edin:

curl -sS -o /dev/null -w '%{http_code}
' --max-time 5 https://app.internal.example/health

Bloklanmalı olan cihazdan gələn 200 cavabı qərarın heç vaxt məlumat yoluna çatmadığını bildirir. İki adi səbəb: siyasət test hesabının qoşulmadığı qrupa bağlanıb, ya da tətbiq VPN-in sahib olmadığı marşrut üzərindən əlçatandır.

Əvvəlcə marşrut fərziyyəsini yoxlayın. Daxili ad müştərinin artıq yerli LAN üzərindən çatdığı ünvana çevrilirsə, tunel əhəmiyyətsizdir və heç bir siyasət tətbiq olunmayacaq. Bu ünvanı şlüzün push etdiyi marşrutla müqayisə edin. OpenVPN üzərində hər müştəri siyasəti ümumi adla açarlanmış fayllarda yaşayır, ona görə yoxlamaq asandır:

ls /etc/openvpn/ccd/
cat /etc/openvpn/ccd/laptop-17

disable olan fayl həmin müştərini tamamilə ayırır, push "route ..." sətri isə çata bildiyi yeri daraldır. Hər ikisi tətbiqetmədir və hər ikisi hesabatı sazlayan hər kəsə görünür.

Dörd halı bir sınaq hesabında yoxlayın

Son yoxlama kiçik matrisdir, xoşbəxt yol deyil. Bir test hesabını dörd vəziyyətdən keçirin: cari, vaxtı keçmiş imza, qoruma deaktiv, agent quraşdırılmayıb. Hər biri üçün qərarı qiymətləndirmə jurnalına, tətbiqin qaytardığı HTTP statusunu və bərpa səhifəsinin yüklənib-yüklənmədiyini yazın.

foreach ($case in 'current', 'stale', 'disabled', 'absent') {
  Get-MpComputerStatus | Select-Object AMServiceEnabled, AntivirusSignatureLastUpdated
  curl.exe -sS -o NUL -w "%{http_code}
" --max-time 5 https://app.internal.example/health
}

İki detalı qaçırmaq asandır. Əvvəlcə təkrar: maşın sağlam ikən götürülmüş hesabat eyni cihazda sonrakı sessiya üçün qəbul edilməməlidir, ona görə cari bağlantıya bağlanmış vaxt damğası axtarın. Sonra silinmə: agentin silinməsi köhnə hesabatla eyni rəddi yaratmalıdır, təmiz keçid deyil və bu, ən çox heç vaxt yoxlanmayan haldır.

Matris cədvələ uyğun gələndə üç elementi şlüzü sonrakı idarə edənə verin: əmrlər, eşik və dörd gözlənilən nəticə. Əsl çatdırılan bu təhvil vermədir, çünki yalnız siyasət sənədində yaşayan cihaz vəziyyəti dizaynı son nöqtə aləti hesabat sahəsini ilk dəfə dəyişəndə sürüşür.

Əlaqəli məqalələr