LFCA: Kif Tittejjeb is-Sigurtà tas-Sistema Linux - Parti 20


Kif nafu lkoll, l-utent għerq huwa king u jeżerċita privileġġi illimitati fuq is-sistema Linux. Madankollu utenti mhux root huma limitati għal ħidmiet bażiċi. Barra minn hekk, l-utenti tas-sudo jingħataw biss ċertu grad ta 'privileġġi ta' l-għeruq kif meqjus xieraq mill-utent ta 'l-għerq biex iwettqu kompiti speċifiċi elevati.

Il-kwistjonijiet jinqalgħu meta l-utenti regolari jkollhom aċċess mhux ikkontrollat għar-riżorsi jew jiġu eskalati għall-għeruq involontarjament. Dan huwa riskju serju ta' sigurtà li jista' jikkawża ksur, modifiki mhux mixtieqa, u fl-agħar xenarju, crashing tas-sistema. Riskju potenzjali ieħor huwa meta l-fajls ikollhom permessi tal-fajls inqas siguri. Pereżempju, fajls tal-boot b'permessi ta' kitba għal utenti globali jistgħu faċilment jiġu modifikati jew korrotti li jirriżultaw f'sistema miksura.

[ Jista' jħobb ukoll: Suġġerimenti Utli għall-Iżgurar tad-Data u l-Linux ]

Filwaqt li nistgħu nimplimentaw is-sigurtà fiżika, tan-netwerk u tad-dejta, utent malizzjuż jista’ jevita l-miżuri tas-sigurtà u jieħu vantaġġ minn tali lakuni tas-sigurtà. Huwa għal din ir-raġuni li s-sigurtà tas-sistema tal-fajls għandha tittieħed bis-serjetà. Jipprovdi saff addizzjonali ta’ difiża fil-konfront ta’ attakki jew theddid minn ġewwa minn impjegati malizzjużi li m’għandhomx għalfejn jagħmlu l-irfigħ kbir biex jevitaw miżuri ta’ sigurtà biex jaċċessaw il-fajls.

Fis-sigurtà tas-sistema, aħna se nikkonċentraw fuq il-punti ewlenin li ġejjin:

  • Drittijiet ta' aċċess – Permessi ta' utenti u gruppi.
  • Inforza l-politiki tal-password mal-modulu PAM.

Drittijiet ta' Aċċess - Separazzjoni ta' Utenti u Gruppi

Probabilment smajt li kollox fil-Linux huwa meqjus bħala fajl. U jekk le, huwa proċess. Kull fajl fuq sistema Linux huwa proprjetà ta' utent u utent ta' grupp. Għandu wkoll permessi tal-fajls għal 3 kategoriji ta' utenti: Utent (u), Grupp (g), u Oħrajn (o). Il-permessi huma rappreżentati f'qari, kitba u eżekuzzjoni ( rwx ) għal kull kategorija ta 'utent.

rwx        rwx	     rwx
User       Group     Others

Kif jidher qabel, fil-kmand ls kif muri.

$ ls -l

Sempliċement biex terġa 'tiġbor, il-permessi huma ġeneralment rappreżentati minn disa' karattri. L-ewwel tliet karattri jirrappreżentaw id-drittijiet ta' aċċess tal-utent attwali li għandu l-fajl. It-tieni sett ta' karattri jirrappreżentaw il-permessi tas-sid tal-grupp tal-fajl. Fl-aħħarnett, l-aħħar sett għal utenti oħra jew globali. Dawn il-karattri huma dejjem fl-ordni tal-qari, il-kitba, l-eżekuzzjoni (rwx).

Wara l-permessi, għandna sjieda tal-utenti u tal-grupp, segwiti mid-daqs tal-fajl jew tad-direttorju, id-data tal-modifika, u fl-aħħar l-isem tal-fajl.

Nibdlu l-Permessi u l-Sjieda tal-Fajl/Direttorju

Il-permessi tal-utent tal-fajls u tad-direttorji jistgħu jiġu modifikati kif jitqies xieraq. Ir-regola ġenerali hija li tuża l-prinċipju tas-sigurtà tal-inqas privileġġ. Fi kliem sempliċi, kun żgur li l-utenti jiksbu d-drittijiet ta’ aċċess minimi jew il-permessi meħtieġa biex ix-xogħol isir.

Il-prinċipju tal-inqas privileġġi jirrestrinġi lill-utenti għal ċerti rwoli biss u billi jagħmel hekk, jimminimizza r-riskju li l-attakkanti jaċċessaw u jimmodifikaw dejta kritika billi jisfruttaw kont tal-utent b'lieva baxxa. Tnaqqas ukoll il-wiċċ tal-attakk u tillimita l-propagazzjoni tal-malware fil-każ li l-attakkant jieħu l-kontroll tas-sistema tiegħek.

Għalhekk, jekk utent jeħtieġ biss li jara l-kontenut ta' fajl jew direttorju, m'għandux jingħata permessi ta' eżekuzzjoni jew ta' kitba. Fil-livell bażiku ħafna, agħti biss l-inqas permessi u sjieda meħtieġa mill-utent biex iwettaq il-kompiti. Ittrattajna kif timmodifika l-permessi u s-sjieda tal-utenti fuq fajls/direttorji billi tuża kmandi chmod u chown fis-suġġett bażiku tal-kmandi tal-Linux.

Biex l-amministratur tas-sistema jkollu ħin eħfef biex jimmaniġġja l-permessi, jistgħu jingħataw permessi speċjali jew drittijiet ta’ aċċess għal direttorji sħaħ. Wieħed mill-permessi speċjali li jistgħu jiġu applikati biex jirrestrinġu t-tħassir u l-modifika ta 'fajl jew direttorju huwa l-bit li jwaħħal.

F'xenarju fejn direttorju kondiviż jista' jiġi aċċessat mill-utenti kollha fis-sistema jew in-netwerk, hemm riskju potenzjali li xi utenti jistgħu jħassru jew jimmodifikaw il-fajls ġewwa d-direttorju. Dan mhux mixtieq jekk trid iżżomm l-integrità tal-kontenut tad-direttorju. U dan huwa fejn jidħol il-bit li jwaħħal.

A sticky bit huwa permess fajl speċjali stabbilit fuq fajl jew direttorju kollu. Jagħti biss lis-sid ta' dak il-fajl/direttorju l-permess biex iħassar jew jagħmel bidliet fil-kontenut tal-fajl jew tad-direttorju. L-ebda utent ieħor ma jista' jħassar jew jimmodifika l-fajl/direttorju. Għandu l-valur simboliku ta' t u valur numeriku ta' 1000.

Biex tixgħel ftit twaħħal fuq direttorju, uża l-kmand chmod kif ġej:

$ chmod +t directory_name

Fl-eżempju hawn taħt, applikajna ftit twaħħal għad-direttorju msejjaħ test. Fil-każ ta 'direttorju, il-kontenut kollu se jirtu l-permessi tal-bit li jwaħħal. Tista' tivverifika l-permessi tal-bit li jwaħħal billi tuża l-kmand ls -ld. Kun żgur li tinnota s-simbolu t fl-aħħar tal-permessi tal-fajl.

$ ls -ld test

Jekk utent ieħor jipprova jħassar id-direttorju jew jimmodifika l-fajl ġewwa d-direttorju, jiġi milqugħ bi żball Permess miċħud.

U dik hija l-qofol tal-permess tal-fajl stick bit.

Is-SUID (Issettja l-ID tal-Utent) huwa permess ieħor tal-fajl speċjali li jippermetti utent regolari ieħor imexxi fajl bil-permessi tal-fajl tas-sid tal-fajl. Normalment ikun indikat b'valur simboliku s fil-parti tal-utent tal-permessi tal-fajl minflok x li jirrappreżenta l-permessi ta' eżekuzzjoni. Is-SUID għandu valur numeriku ta' 4000.

L-SGID, (Issettja l-ID tal-Grupp) jippermetti utent regolari biex jiret il-permessi tal-grupp tas-sid tal-grupp tal-fajls. Minflok il-x għall-permessi ta' eżekuzzjoni, se tara s fil-parti tal-grupp tal-permessi tal-fajl. L-SGID għandu valur numeriku ta' 2000.

Kemm ikunu konvenjenti, il-permessi SUID u SGID huma assoċjati ma’ riskji ta’ sigurtà u għandhom jiġu evitati akkost ta’ kollox. Dan għaliex jagħtu privileġġi speċjali lill-utenti regolari. Jekk intruż li jippoża bħala utent regolari jiltaqa 'ma' fajl eżekutibbli proprjetà tal-utent root b'bit SUID stabbilit fuqu, jistgħu jużaw dik il-lakuna u jisfruttaw is-sistema.

Biex issib il-fajls kollha b'bit SUID issettjat fil-Linux mexxi l-kmand tas-sejba bħala l-utent għerq.

$ find / -perm -4000 type -f

Għad-direttorji mmexxija:

$ find / -perm -4000 type -d

Biex issib il-fajls kollha b'sett tal-bit SGID run:

$ find / -perm -2000 type -f

Għad-direttorji eżegwixxi:

$ find / -perm -2000 type -d

Biex tneħħi l-bit SUID fuq fajl, mexxi l-kmand chmod kif muri:

$ chmod u-s /path/to/file

Biex tneħħi l-bit SGID fuq fajl esegwi l-kmand:

$ chmod g-s filename /path/to/file

Mhux rari li l-utenti jistabbilixxu passwords dgħajfa. Numru tajjeb issettja passwords qosra, sempliċi u li jistgħu jinstemgħu faċilment biex tevita li tinsahom waqt il-login. Filwaqt li konvenjenti, passwords dgħajfa jistgħu faċilment jinkisru bl-użu ta 'skripts ta' attakki b'forza bruta.

Il-modulu PAM (Pluggable Authentication Module) huwa modulu li jippermetti lill-amministraturi tas-sistema jinfurzaw il-politiki tal-password fuq sistemi Linux. Biex twettaq dan, għandek bżonn il-modulu pam_pwquality li huwa pprovdut mil-librerija libpam_pwquality. Il-modulu pam_pwquality jiċċekkja s-saħħa ta' password ma' sett ta' regoli u dizzjunarju tas-sistema u jindika għażliet dgħajfa ta' password.

Biex tinstalla l-modulu pam_pwquality fuq Ubuntu 18.04 u verżjonijiet aktar tard, mexxi:

$ sudo apt install libpam_pwquality

Għal RHEL/CentOS 8, mexxi l-kmand:

$ sudo dnf install libpwquality

Il-fajl tal-konfigurazzjoni jinstab fil-post li ġej:

  • Fuq Debian-Systems – /etc/pam.d/common-password
  • Fuq is-Sistemi RedHat – /etc/pam.d/system-auth

Qabel ma nibdew nimmodifikaw il-fajl tal-konfigurazzjoni PAM, ejja l-ewwel nikkunsidraw li niġbru għarfien dwar il-kontrolli tat-tixjiħ tal-password.

Dawn jistgħu jinstabu fil-fajl /etc/login.defs.

Il-fajl fih il-kontrolli ewlenin tal-password li ġejjin:

  • PASS_MAX_DAYS: Numru massimu ta' jiem password tista' tintuża.
  • PASS_MIN_DAYS: Numru minimu. ta' jiem permessi bejn bidliet fil-password.
  • PASS_WARN_AGE: Numru ta' jiem ta' twissija mogħtija qabel ma tiskadi password.

Il-valuri awtomatiċi huma indikati hawn taħt.

L-attribut PASS_MAX_DAYS jillimita n-numru ta' jiem li utent jista' juża l-password tiegħu. Meta dan il-valur jintlaħaq jew il-password tiskadi, l-utent ikun imġiegħel ibiddel il-password tiegħu sabiex jidħol fis-sistema. B'mod awtomatiku, dan il-valur huwa ssettjat għal 99999, li jissarraf għal 273 sena. Dan ma jagħmilx sens safejn hija kkonċernata s-sigurtà peress li l-utent jista 'jkompli juża l-password tiegħu għal ħajtu kollha.

Tista' tissettja dan għal valur sinifikanti, ngħidu aħna 30 jum kif muri.

PASS_MAX_DAYS  30

Wara li jgħaddu 30 jum, l-utent ikun sfurzat ibiddel il-password tiegħu għal waħda differenti.

L-attribut PASS_MIN_DAYS jispjega t-tul minimu li l-utenti jistgħu jużaw il-password tagħhom qabel ma jibdlu. Xi jfisser dan? Jekk, pereżempju, dan il-valur huwa ssettjat għal 15-il jum, l-utent ma jkunx jista’ jerġa’ jibdel il-password tiegħu qabel ma jgħaddu 15-il jum.

PASS_MAX_DAYS  15

L-attribut PASS_WARN_AGE jispeċifika n-numru ta' ġranet li utent se jirċievi twissija dwar l-iskadenza imminenti tal-password tiegħu qabel ma tiskadi. Per eżempju, tista 'tissettja dan għal 7 ijiem kif muri.

PASS_MAX_DAYS  7

NOTA: Dawn il-kontrolli tal-password ma jaħdmux ma' kontijiet eżistenti minn qabel. Dawn jiġu applikati biss għal kontijiet ġodda maħluqa wara d-definizzjoni tar-regoli.

Qabel ma teditja l-fajl /etc/pam.d/common-password, oħloq kopja ta' backup. F'dan l-eżempju, ħloqna l-fajl tal-kopja backup common-password.bak.

$ sudo cp /etc/pam.d/common-password /etc/pam.d/common-password.bak

Imbagħad iftaħ il-fajl.

$ sudo vim /etc/pam.d/common-password 

Sib il-linja murija hawn taħt.

password        requisite          pam_pwquality.so retry=3

L-għażla pprova mill-ġdid tistabbilixxi n-numru massimu ta' drabi li tkun mitlub li ddaħħal il-password it-tajba qabel ma tieħu żball. B'default, dan huwa ssettjat għal 3. Din hija għażla waħda biss u se ninkludu diversi għażliet.

Żid l-attributi li ġejjin mal-linja:

minlen=10 difok=3 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 reject_username 

Ejja ngħollu dawn l-attributi.

  • minlen=10: Issettja d-daqs minimu aċċettabbli għall-password. F'dan il-każ, 10 karattri.
  • difok=3: Dan huwa n-numru massimu ta' karattri li huma preżenti fil-password preċedenti.
  • lcredit=-1: Dan huwa n-numru minimu ta' karattri żgħar li għandhom ikunu preżenti fil-password.
  • ucredit=-1: Dan huwa n-numru massimu ta' karattri żgħar li għandhom ikunu preżenti fil-password.
  • dcredit=-1: In-numru minimu ta' karattri numeriċi li għandhom jiġu definiti fil-password.
  • ocredit=-1: In-numru minimu ta' karattri speċjali eż. @, #, & li għandu jiġi definit fil-password.
  • reject_username: Din l-għażla tikkawża ċ-ċaħda tal-password jekk il-password tkun l-isem tal-utent jew f'format dritt jew invers.

Jekk tipprova toħloq utent ġdid li ma jilħaqx il-politiki tal-password, int ser tħabbat wiċċha ma' żbalji bħal dawn kif muri.

Dan jikkonkludi s-suġġett dwar is-sigurtà tas-sistema u l-prinċipji fundamentali tas-sigurtà b'mod ġenerali. Fil-kapitolu kollu, tefgħu d-dawl fuq miżuri ta’ sigurtà bażiċi li tista’ timplimenta biex tissalvagwardja s-sistema Linux tiegħek minn utenti malizzjużi bħal hackers jew impjegati disgruntled.