- Isinasagawa ng JEA ang prinsipyo ng pinakamababang pribilehiyo sa PowerShell pag-remote, pagbabawas ng bilang ng mga account na may matataas na pribilehiyo at paglilimita sa mga cmdlet na magagamit para sa bawat tungkulin.
- Ang kombinasyon ng mga .psrc at .pssc file ay nagbibigay-daan sa iyong tukuyin ang mga kakayahan sa tungkulin, mga pinaghihigpitang endpoint, mga virtual account, at mga detalyadong transcript para sa isang kumpletong audit.
- Kung ikukumpara sa mga pamamaraang tulad ng GPO, AppLocker, o mga generic endpoint, ang JEA ay nag-aalok ng mas detalyadong kontrol at isang matatag na modelo ng RBAC para sa pagtatalaga ng mga gawain nang hindi inilalantad ang mga pribilehiyong kredensyal.
- Ang wastong pagpapatupad nito ay nangangailangan ng maingat na disenyo ng papel, pagsubok, at patuloy na pagpapanatili, ngunit nagbibigay ito ng malaking tulong sa seguridad nang hindi isinasakripisyo ang produktibidad.
Ang paggamit ng PowerShell remoting ay halos naging kailangang-kailangan sa anumang kapaligiran. Windows Moderno, ngunit ang pagbibigay ng malayuang access nang walang kontrol ay parang pag-iwan sa mga susi ng data center sa mesa. Dito pumapasok ang laro. Administrasyong Sapat Lamang (JEA), isang patong ng seguridad na nagbibigay-daan sa iyong magtalaga ng mga gawain nang hindi iniiwan ang mga karapatan ng administrator sa kaliwa't kanan.
Gamit ang JEA, maaari kang mag-set up ng limitadong mga remote access point kung saan ang mga partikular na user lamang ang nagpapatakbo ng comandos na iyong pinahintulutan, sa ilalim ng mga account na may mas maraming pribilehiyo, ngunit nang hindi nalalaman ang tunay na mga kredensyal o hindi kayang lumihis sa iskripAt lahat ng ito ay naitala sa mga transkrip at mga tala detalyado na magbibigay-daan sa iyong i-audit kung sino ang gumawa ng ano, kailan at mula saan.
Ano ang Just-Enough-Administration (JEA) at bakit ito mahalaga?
Ang Just-Enough-Administration ay isang teknolohiyang pangseguridad na nakabatay sa PowerShell na nagpapatupad ng isang delegated administration model na may pinakakaunting pribilehiyong kinakailangan. Sa pagsasagawa, hinahayaan ka ng JEA na ilantad ang mga remote endpoint kung saan tanging isang saradong hanay ng mga cmdlet, function, script, at mga panlabas na command na tinukoy mo ang magagamit.
Dahil sa pamamaraang ito, magagawa mo lubos na binabawasan ang bilang ng mga account na may mas mataas na pribilehiyo Sa iyong mga server, maaari kang gumamit ng mga virtual account o group-managed service account (gMSA) na nagsasagawa ng mga privileged action para sa mga karaniwang user. Nagla-log in ang user gamit ang kanilang mga normal na credential at, sa pamamagitan ng JEA session, inilulunsad ang mga command na isinasagawa sa likod ng mga eksena na may mas mataas na pribilehiyo.
Ang isa pang mahalagang haligi ng JEA ay ang kakayahang upang tumpak na tukuyin kung ano ang magagawa ng bawat tungkulinTinutukoy ng mga role capability file kung aling mga cmdlet, custom function, external command, o PowerShell provider ang makikita. Ang iba ay wala para sa user: hindi sila maaaring mag-improvise ng mga script, malayang mag-navigate sa file system, o mag-access ng mga serbisyo o prosesong hindi mo tinukoy.
Bukod pa rito, maaaring i-configure ang lahat ng sesyon ng JEA upang makabuo ng kumpletong mga transcript at mga kaganapan sa pag-auditAng pagkuha ng mga utos, parameter, output, mga error, pagkakakilanlan ng user, at mga oras ng pagpapatupad ay hindi lamang nakakatulong na matugunan ang mga kinakailangan ng regulasyon kundi napakahalaga rin nito kapag iniimbestigahan ang isang insidente sa seguridad o pagkabigo sa operasyon.
Mga panganib ng mga pribilehiyong account at kung paano pinapagaan ng JEA ang mga ito
Ang mga lokal, domain, o application administrator account na may mataas na pahintulot ay nagpapahiwatig isa sa mga pinakamalubhang tagapagdala ng panganib sa anumang organisasyonKung makukuha ng isang umaatake ang isa sa mga kredensyal na ito, maaari silang gumalaw nang pahilis sa network, dagdagan ang mga pribilehiyo, at makakuha ng access sa mahahalagang data, mga pangunahing serbisyo, o kahit na sirain ang buong sistema.
Ang pag-aalis ng mga pribilehiyo ay hindi laging madali. Ang isang klasikong halimbawa ay ang isang server na nagho-host ng parehong DNS at isang Active Directory domain controllerKailangan ng DNS team ng mga lokal na pribilehiyo ng administrator upang i-troubleshoot ang mga isyu sa serbisyo ng DNS, ngunit ang pagdaragdag sa kanila sa Domain Admins group ay epektibong nagbibigay sa kanila ng kontrol sa buong forest at access sa anumang resource sa makinang iyon. Ito ay isang klasikong halimbawa ng pagsasakripisyo ng seguridad para sa kaginhawahan sa pagpapatakbo.
Nilulutas ng JEA ang problemang ito sa pamamagitan ng mahigpit na paglalapat ng prinsipyo ng hindi bababa sa pribilehiyoSa halip na gawing mga administrador ng domain ang mga DNS administrator, maaari kang lumikha ng isang nakalaang DNS JEA endpoint na nagpapakita lamang ng mga cmdlet na kinakailangan para sa pag-clear ng cache, pag-restart ng serbisyo, pagsusuri ng mga log, o mga katulad na gawain. Nagbibigay-daan ito sa operator na maisagawa ang kanilang trabaho nang hindi kinakailangang suriin ang Active Directory, mag-navigate sa file system, magpatakbo ng mga random na script, o magsagawa ng mga potensyal na mapanganib na utility.
Kapag kino-configure mo ang mga sesyon ng JEA para gamitin mga virtual account na may pansamantalang mga pahintulotMas kawili-wili pa ang hakbang na ito: kumokonekta ang user gamit ang mga unprivileged credentials at, mula sa session na iyon, maaaring magsagawa ng mga gawain na karaniwang nangangailangan ng mga karapatan ng administrator. Pinapayagan nito ang maraming user na maalis mula sa mga local o domain administrator group, na nagpapanatili ng mga operasyon habang lubos na pinatitibay ang attack surface.
Mga konsepto ng seguridad na sumusuporta sa JEA
Hindi nagmula sa wala ang JEA: Ito ay batay sa ilang mahusay na itinatag na mga prinsipyo at modelo ng seguridad. na nagbibigay dito ng pagkakaugnay-ugnay at katatagan. Ang una ay ang nabanggit na prinsipyo ng least privilege, na nagdidikta na ang parehong mga gumagamit at proseso ay dapat lamang magkaroon ng mga pahintulot na mahalaga para sa kanilang mga function.
Ang pangalawang pangunahing haligi ay ang modelo ng Kontrol sa Pag-access na Batay sa Tungkulin (RBAC)Ipinapatupad ng JEA ang RBAC sa pamamagitan ng mga role capability file, kung saan tinutukoy mo kung ano ang magagawa ng isang partikular na role sa loob ng isang remote session. Halimbawa, ang isang helpdesk role ay maaaring maglista ng mga serbisyo, tumingin ng mga kaganapan, at mag-restart ng isang partikular na serbisyo, habang ang isang SQL Server administration role ay maaari lamang magpatupad ng mga cmdlet na may kaugnayan sa... mga database at kaunti pa.
La Ang teknikal na pundasyon ng JEA ay ang PowerShell at ang imprastraktura nito sa pag-remoting.Ang PowerShell ay nagbibigay ng wika, mga cmdlet, at remote communication layer (WinRM/WS-Management), at ang JEA ay nagdaragdag sa itaas ng isang sistema ng mga pinaghihigpitang endpoint, mga virtual account, at detalyadong kontrol sa kung aling mga utos ang magagamit.
Ang isa pang mahalagang konsepto ay ang pinaghihigpitang administrasyon, katulad ng a nakatalagang access sa Windows 11 kiosk modeSa halip na bigyan ang operator ng buong shell, bumubuo ang JEA ng isang sesyon kung saan pinaghihigpitan ang scripting language (bilang default, NoLanguage), hinaharangan ang paglikha ng mga bagong function o variable, pinagbabawalan ang mga loop at conditional, at tanging ang aprubadong set ng cmdlet lamang ang pinapayagang isagawa. Lubos nitong nililimitahan ang kakayahan ng isang attacker na makakuha ng access sa session na iyon.
Mga pangunahing bahagi: mga file na .psrc at .pssc
Sa puso ng anumang pag-deploy ng JEA ay may dalawang uri ng mga file: mga file ng kakayahan sa tungkulin (.psrc) at mga file ng pagsasaayos ng sesyon (.pssc)Magkasama nilang binabago ang isang pangkalahatang-gamit na shell tungo sa isang perpektong iniayon na endpoint para sa mga partikular na gumagamit.
Sa isang role capability file na iyong tinutukoy kung aling mga utos ang magagamit para sa tungkulinKabilang sa mga pinakamahalagang elemento ay:
- Mga Nakikitang Cmdlet: listahan ng mga pinapayagang cmdlet, na may kakayahang paghigpitan ang mga parameter.
- Mga Nakikitang Tungkulin: mga pasadyang function na nilo-load sa session.
- Mga NakikitangPanglabas na Utos: mga partikular na panlabas na executable na ina-access.
- Mga Nakikitang Provider: Ang mga PowerShell provider (halimbawa, FileSystem o Registry) ay nakikita sa session.
Ang mga configuration file ng .pssc session, sa kabilang banda, Inilalarawan nila ang JEA endpoint nang ganito at iniuugnay ito sa mga tungkulin.Ang mga elemento tulad ng mga sumusunod ay idineklara rito:
- Mga Kahulugan ng Tungkulin: pagmamapa ng mga user o security group sa mga kakayahan ng role.
- Uri ng Sesyon: kung saan ang 'RestrictedRemoteServer' ay karaniwang nakatakda upang patigasin ang sesyon.
- Direktoryo ng Transkripsyon: folder kung saan nakaimbak ang mga transcript ng bawat sesyon.
- RunAsVirtualAccount at mga kaugnay na opsyon, tulad ng kung idadagdag ang virtual account sa mga partikular na grupo.
Ang JEA ay nagaganap sa anyo ng Mga remoting endpoint ng PowerShell na nakarehistro sa systemAng mga endpoint na ito ay nililikha at pinagana gamit ang mga cmdlet tulad ng Bagong-PSSessionConfigurationFile, Pag-configure ng Rehistro‑PSSession o mga graphical tool tulad ng JEA Helper Tool, na ginagawang mas madali ang pagbuo ng mga .pssc at .psrc file nang hindi gaanong nahihirapan sa syntax.
Siklo ng buhay ng sesyon ng JEA
Kapag nagse-set up ng isang kumpletong kapaligiran ng JEA, ang proseso ay karaniwang sumusunod sa isang serye ng mga lohikal na hakbang na Binabago nila ang isang open remoting system tungo sa isang mahigpit na pinamamahalaang sistema.Ang karaniwang pagkakasunod-sunod ay:
Una, lumikha ka ng isang grupo ng seguridad o ilang grupo na kumakatawan sa mga tungkuling gusto mong italaga (halimbawa, HelpdeskDNS, Web Operators, SQL Operators). Ang paggamit ng mga grupo ay hindi sapilitan, ngunit ginagawang mas simple nito ang administrasyon habang lumalaki ang kapaligiran.
Pagkatapos, isa o higit pa ang inihahanda mga file ng kakayahan sa tungkulin na .psrc Inililista nito ang mga pinapayagang aksyon: mga cmdlet, function, script, external command, alias, provider, at karagdagang mga paghihigpit (mga partikular na parameter, pinapayagang path, atbp.). Dito, halimbawa, maaari mong payagan ang lahat ng cmdlet na nagsisimula sa Get-, paghigpitan ang Restart-Service sa serbisyo ng Spooler, at pahintulutan lamang ang provider ng FileSystem.
Ang sumusunod ay nabuo file ng pagsasaayos ng sesyon na .pssc gamit ang New-PSSessionConfigurationFile. Tinutukoy nito ang mga opsyon tulad ng SessionType = RestrictedRemoteServer, ang TranscriptDirectory path, kung ginagamit ang mga virtual account, at ang RoleDefinitions block na nag-uugnay sa mga grupo sa mga kakayahan sa tungkulin, halimbawa, 'DOMAIN\HelpdeskDNS' = @{ RoleCapabilities = 'HelpdeskDNSRole' }.
Kapag naihanda na ang .pssc file, ang endpoint ay nakarehistro gamit ang Magrehistro‑PSSessionConfiguration -Pangalan Pangalan ng JEASession -Landas Landas\File.psscMula sa sandaling iyon, kung ang mga available na configuration ay nakalista gamit ang Get-PSSessionConfiguration, ang bagong connection point ay lilitaw na handa nang tumanggap ng mga koneksyon.
Kumokonekta ang mga gumagamit sa endpoint na ito mula sa kanilang mga computer gamit ang Enter‑PSSession -ComputerName Server -ConfigurationName Pangalan ng JEASession o gamit ang New-PSSession at pagkatapos ay ang Invoke-Command. Sa pagpasok, awtomatikong ilalapat ng sesyon ang mga paghihigpit na tinukoy sa nauugnay na kakayahan sa tungkulin ng gumagamit.
Sa panahon ng sesyon, Ang PowerShell remoting ay gumagamit ng WinRM na may mga naka-encrypt na channelPinagsamang pagpapatotoo (karaniwan ay Kerberos sa domain) at ang mga patakaran ng firewall na tinukoy para sa serbisyo. Bilang batayan nito, kung pinagana ang RunAsVirtualAccount, isang pansamantalang virtual account ang gagawin, idadagdag sa mga kinakailangang grupo, at sisirain kapag natapos na ang sesyon.
Sa wakas, sa pagtatapos ng sesyon ng JEA, Naka-save ang mga transcript at kaganapan ng audit Ang mga log na ito ay nag-iiwan ng malinaw na bakas ng mga naisagawang utos, mga resulta, at konteksto ng gumagamit. Pagkatapos ay maaari itong ipadala o iugnay sa loob ng isang SIEM system para sa mga alerto at karagdagang pagsusuri.
Pag-remote, pagkontrol sa pag-access, at pagpapatigas ng PowerShell
PowerShell Remoting, sinusuportahan ng serbisyo Pamamahala ng Malayuang Windows (WinRM) Ang WS-Management protocol ay nagbibigay-daan para sa sentralisadong pagpapatupad ng mga utos at script sa mga malalayong computer. Ito ay isang makapangyarihang kasangkapan para sa automation, pamamahala ng mass server, pag-debug, at malayuang suporta.
Default, mga lokal na administrador at mga miyembro ng grupo ng Remote Management Users Maaari silang gumamit ng mga karaniwang PowerShell endpoint. Sa maraming kapaligiran, ang kakayahang ito ay ginagamit upang payagan ang mga gumagamit na hindi administrator na magpatakbo ng mga malayuang gawain, na hindi naman likas na mapanganib, ngunit kung hindi maayos na makontrol, magbubukas ito ng isang malaking daan para sa pang-aabuso.
Upang palakasin ang postura ng seguridad, isang karaniwang estratehiya ang kinabibilangan ng Paghigpitan lamang ang malayuang pag-access sa PowerShell sa mga administrator account. O, mas mabuti pa, pagsamahin ang limitasyong iyon sa mga endpoint ng JEA na nagbibigay lamang sa ilang partikular na gumagamit ng mahigpit na kinakailangang access. Makakamit ito sa pamamagitan ng:
- Mga GPO na tumutukoy kung aling mga grupo ang maaaring gumamit ng WinRM at ang mga default na endpoint.
- Mga panuntunan ng firewall na nagpapahintulot lamang sa WinRM mula sa mga subnet o mga computer sa pamamahala.
- Pag-aalis ng grupong Remote Management Users mula sa mga ACL ng mga karaniwang endpoint.
Bukod pa rito, maaari mong piliing Ganap na harangan ang PowerShell para sa mga gumagamit na hindi administrator gamit ang mga solusyon tulad ng AppLocker. Sa ganitong paraan, mapipigilan mo ang isang karaniwang user na magpatakbo ng mga malisyosong script nang lokal, ngunit pinapayagan mo pa rin ang mga privileged account na gumamit ng PowerShell para sa mga gawain sa pamamahala at automation.
JEA kumpara sa iba pang mga pamamaraan ng paghihigpit sa PowerShell
Mayroong ilang mga paraan upang limitahan ang magagawa ng mga user sa pag-remote ng PowerShell, at Ang JEA ay akma bilang isang mas manipis at mas nababaluktot na opsyon sa loob ng saklaw na kinabibilangan ng mas malawak na mga pamamaraan tulad ng:
Sa isang banda, ang paggamit ng GPO para kontrolin kung sino ang papasok sa mga default na PowerShell endpointMaaaring limitahan ang Microsoft PowerShell sa mga administrator lamang, o kahit na hindi rehistrado para sa lahat, na nagpipilit sa paggamit ng mga partikular na endpoint. Ito ay kapaki-pakinabang para sa paghihigpit ng access sa paraang "brute force", ngunit hindi nito nalulutas ang problema sa granularity: sinumang makakuha ng access ay maaaring gumawa ng halos anumang bagay.
Sa kabilang banda, may mga tool sa pagkontrol ng aplikasyon tulad ng Mga Patakaran sa Paghihigpit ng AppLocker o SoftwareAng mga pamamaraang ito ay nagbibigay-daan sa iyong tanggihan ang pagpapatupad ng PowerShell.exe o pwsh.exe sa mga karaniwang user, alinman sa pamamagitan ng path, publisher, o hash. Ang pamamaraang ito ay kapaki-pakinabang para sa pagpapatigas ng mga workstation at pagpigil sa sinumang user na ilunsad ang PowerShell, ngunit nagpapakita ito ng mga limitasyon kapag gusto mong magsagawa ang isang tao ng limitadong mga gawaing administratibo mula sa kanilang user account.
Ang isa pang pagpipilian ay Mga nilimitahang endpoint nang hindi umaabot sa buong JEAMaaari kang lumikha ng mga pasadyang configuration ng session na naghihigpit sa mga cmdlet, function, at module, ngunit nang hindi gaanong umaasa sa role model, mga virtual account, o nakabalangkas na RBAC na ibinibigay ng JEA. Ito ay isang uri ng gitnang lugar na angkop para sa mga simpleng senaryo, ngunit hindi gaanong nasusukat sa malalaking kapaligiran.
Pinagsasama ng JEA ang pinakamahusay sa iba't ibang mundo: mahigpit na limitasyon sa utos, RBAC, kontroladong pagpapatupad ng mataas na pribilehiyo, at komprehensibong pag-logDahil dito, ito ang inirerekomendang solusyon kapag kailangan mong paganahin ang PowerShell remoting para sa mga hindi administrador, ngunit hindi sila binibigyan ng kumpletong kapaligiran sa pamamahala.
Mga advanced na tampok: patakbuhin bilang isa pang account at mag-log
Isa sa mga pinakamalakas na kakayahan ng JEA ay ang isagawa ang mga utos bilang isa pa, mas may pribilehiyong account nang hindi inilalantad ang iyong mga kredensyalNalulutas nito ang karaniwang problema ng "Ibibigay ko sa iyo ang password para sa serbisyong ito para magawa mo ang X", na hindi na kailanman binabago at nagiging isang malaking panganib.
Karaniwang ginagamit ang mga senaryo ng domain Mga Account ng Serbisyong Pinamamahalaan ng Grupo (gMSA) Nagbibigay-daan ito sa mga endpoint ng JEA na magsagawa ng mga aksyon sa ilalim ng isang sentralisadong pinamamahalaang pagkakakilanlan ng serbisyo, na may awtomatikong pag-ikot ng password at nang hindi nalalaman ng sinumang operator ang sikreto. Sa ibang mga kaso, ginagamit ang mga pansamantalang virtual account na lokal sa makina, na nilikha nang biglaan kapag kumokonekta ang isang gumagamit at sinisira sa pagtatapos ng sesyon.
Mula sa perspektibo ng pag-audit, ang bawat sesyon ng JEA ay maaaring i-configure upang bumuo ng parehong mga transcript ng PowerShell at mga entry sa rich event logAng impormasyong karaniwang kinokolekta ay kinabibilangan ng:
- Kumpletong kasaysayan ng mga ipinasok na utos at parameter.
- Mga nabuong output at mga mensahe ng error.
- Timestamp ng simula at katapusan ng sesyon, pati na rin ang tagal nito.
- Pagkakakilanlan ng naka-log in na user at itinalagang tungkulin/kapasidad.
Kung pagsasamahin mo ang mga bakas na ito sa mga tungkulin ng Pag-log ng Module ng PowerShell at Iskrip Pag-block ng pag-log gamit ang GPOAt sa pamamagitan ng pagpapadala ng mga log sa isang SIEM, magkakaroon ka ng matibay na visibility sa kung ano ang nangyayari sa iyong mga management endpoint. Mahalaga ito para sa parehong compliance (mga SOX audit, ISO 27001, atbp.) at incident detection at response.
Karaniwang mga kaso ng paggamit ng JEA sa mga totoong kapaligiran sa mundo
Nagniningning ang JEA lalo na kapag kailangan mo Pagtatalaga ng mga partikular na gawain sa mga pangkat na hindi dapat maging mga administradorAng ilan sa mga karaniwang halimbawa sa pagsasagawa ay:
Sa larangan ng teknikal na suporta, maaari kang magbigay ng mga technician na nasa pinakamataas na antas Access ng JEA para i-restart ang mga serbisyo, tingnan ang mga log ng kaganapan, at suriin ang katayuan ng proseso sa mga server, ngunit walang kakayahang mag-install ng software, baguhin ang mahahalagang configuration, o i-access ang Active Directory. Ang isang karaniwang tungkulin sa helpdesk ay maaaring magsama ng mga cmdlet tulad ng Get-Service, Restart-Service para sa mga partikular na serbisyo, Get-EventLog sa read-only mode, at ilang network diagnostic cmdlet.
Sa mga pangkat ng operasyon o pag-unlad, maaari mong i-configure mga tungkuling nakatuon sa mga partikular na gawain tulad ng pangangasiwa ng IIS o pagpapanatili ng websiteHalimbawa, ang pagpapahintulot sa pag-access sa mga cmdlet ng pamamahala ng Application Pool, pag-restart ng website, pag-query sa mga log mula sa isang limitadong direktoryo, at pamamahala ng sertipiko para sa mga partikular na serbisyo, habang hindi isinasama ang anumang kakayahang i-restart ang buong server o baguhin ang mga patakaran sa seguridad.
Sa mga hybrid at cloud environment, ang JEA ay madalas na ginagamit para sa limitahan ang magagawa ng bawat koponan virtual machine, imbakan o mga networkMaaari mong ilantad ang mga endpoint na nagbibigay-daan sa iyong pamahalaan lamang ang mga VM ng isang departamento, baguhin ang mga panuntunan sa firewall ng isang partikular na segment, o pamahalaan ang isang partikular na hanay ng mga service account, na pinapanatiling hiwalay ang access mula sa iba pang bahagi ng imprastraktura.
Kasabay nito, ang JEA ay lubos na akma sa Mga estratehiya sa Privileged Access Management (PAM)kung saan ang mga pribilehiyong sesyon ay pansamantalang ipinagkakaloob, itinatala, at iniuugnay sa mga personal na pagkakakilanlan, iniiwasan ang mga ibinahaging account at binabawasan ang panganib na nauugnay sa bawat pribilehiyong aksyon.
Masigasig na manunulat tungkol sa mundo ng mga byte at teknolohiya sa pangkalahatan. Gustung-gusto kong ibahagi ang aking kaalaman sa pamamagitan ng pagsusulat, at iyon ang gagawin ko sa blog na ito, ipakita sa iyo ang lahat ng mga pinaka-kagiliw-giliw na bagay tungkol sa mga gadget, software, hardware, teknolohikal na uso, at higit pa. Ang layunin ko ay tulungan kang mag-navigate sa digital na mundo sa simple at nakakaaliw na paraan.