Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o LinuxTL; AMA. I totonu o lenei tusiga, matou te suʻesuʻeina faiga faʻamalosi e galue i fafo o le atigipusa i luga o faʻasalalauga Linux lauiloa e lima. Mo taʻitasi, matou te faʻaogaina le faʻaogaina o le fatu fatu, faʻapipiʻi uma afifi, ma suʻesuʻeina polokalame saogalemu i binaries faʻapipiʻi. O tufatufaga o loʻo iloiloina o OpenSUSE 12.4, Debian 9, CentOS, RHEL 6.10 ma 7, faʻapea foʻi ma le Ubuntu 14.04, 12.04 ma le 18.04 LTS.

O fa'ai'uga e fa'amaonia ai e o'o lava i faiga fa'avae e pei o le fa'aputuina o canaries ma tulaga-tuto'atasi code e le'i fa'aaogaina e tagata uma. O le tulaga e sili atu ona leaga mo le au tuʻufaʻatasia pe a oʻo mai i le puipuia mai faʻafitauli e pei o le faʻaputuga feteʻenaʻiga, lea na oʻo mai i le faʻaaliga ia Ianuari ina ua maeʻa faʻasalalauga. faʻamatalaga e uiga i faʻafitauli faʻaletonu. Ae le o mea uma e matua leai se faamoemoe. O se numera taua o binaries o loʻo faʻaaogaina auala puipuia, ma o latou numera e faʻatupulaia mai lea faʻasologa i lea faʻasologa.

O le iloiloga na faʻaalia ai o le tele o numera o auala puipuia o loʻo faʻatinoina i le Ubuntu 18.04 i le OS ma le faʻaogaina o tulaga, sosoo ai ma le Debian 9. I le isi itu, OpenSUSE 12.4, CentOS 7 ma RHEL 7 o loʻo faʻatinoina foi faiga faʻavae puipuiga, ma faʻapipiʻi faʻalavelave faʻafefe. o lo'o fa'aogaina fa'alaua'itele ma se seti sili atu ona mafiafia o afifi fa'aletonu.

Faatomuaga

E faigata ona faʻamautinoa le maualuga o le polokalama. E ui lava i le tele o mea faigaluega faʻapitoa mo suʻesuʻega faʻailoga faʻamaonia ma suʻesuʻega faʻasolosolo taimi, faʻapea foʻi ma le alualu i luma taua i le atinaʻeina o tagata faʻapipiʻi ma gagana polokalame, o loʻo mafatia pea le polokalama faʻaonaponei mai faʻafitauli o loʻo faʻaaogaina e le au osofaʻi. E sili atu le leaga o le tulaga i meaola faanatura o loʻo aofia ai le tulafono faʻasolopito. I ia tulaga, e le gata ina tatou feagai ma le faafitauli e faavavau o le sailia o mea sese e mafai ona faʻaaogaina, ae ua faʻatapulaʻaina foʻi e ala i faʻataʻitaʻiga o fesoʻotaʻiga tua i tua, lea e masani ona manaʻomia ai i tatou e faʻasaoina tapulaa, pe sili atu ona leaga, faʻaletonu poʻo le taʻavale.

O le mea lea e amata ai auala e puipuia ai poʻo polokalame faʻamaʻaʻaina. E le mafai ona tatou puipuia nisi o ituaiga o mea sese, ae e mafai ona tatou faia le olaga o le tagata osofaia e sili atu ona faigata ma foia se vaega o le faafitauli e ala i le puipuia pe puipuia fa'atautala nei mea sese. O lea puipuiga e faʻaaogaina i faiga faʻaonaponei faʻaonapo nei, ae o auala e matua ese lava i le lavelave, lelei ma le faʻatinoga: mai canaries stack ma ASLR i le puipuiga atoatoa CFI и ROP. I totonu o lenei tusiga, o le a tatou vaʻavaʻai pe o le a le auala puipuia o loʻo faʻaaogaina i faʻasalalauga Linux sili ona lauiloa i le faʻaogaina le faʻaogaina, ma suʻesuʻeina foi meatotino o binaries o loʻo tufatufa atu e ala i le faʻaogaina o pusa o faʻasalalauga taʻitasi.

CVE ma le saogalemu

Ua matou va'ai uma i tala ma fa'aulutala e pei o le "The Most Vulnerable Applications of the Year" po'o le "The Most Vulnerable Operating Systems." E masani lava latou te tu'uina atu fa'amaumauga i le aofa'i o fa'amaumauga e uiga i fa'aletonu pei o CVE (Tausau Fa'aletonu ma Fa'aaliga), maua mai National Vulnerability Database (NVD) от NISI ma isi punaoa. Mulimuli ane, o nei talosaga poʻo OS o loʻo faʻatulagaina i le numera o CVEs. Ae paga lea, a o CVEs e aoga tele mo le suʻeina o mataupu ma logoina tagata faʻatau ma tagata faʻaoga, latou te fai sina mea itiiti e uiga i le saogalemu moni o le polokalama.

Mo se faʻataʻitaʻiga, mafaufau i le aofaʻi atoa o CVEs i le fa tausaga talu ai mo le fatu Linux ma faʻasalalauga e lima sili ona lauiloa, e taʻua o Ubuntu, Debian, Red Hat Enterprise Linux ma OpenSUSE.

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux
Fig. Xnumx

O le a le mea e ta'u mai e lenei kalafi ia i tatou? Pe o le maualuga o le numera o CVE o lona uiga o le tasi tufatufaga e sili atu ona vaivai nai lo le isi? Leai se tali. Mo se faʻataʻitaʻiga, i lenei tusiga o le a e vaʻai ai o Debian e sili atu le malosi o le puipuiga faʻatusatusa i, fai mai, OpenSUSE poʻo RedHat Linux, ae o Debian e sili atu CVEs. Ae ui i lea, e le o lona uiga o le faʻavaivaia o le saogalemu: e oʻo lava i le i ai o se CVE e le faʻaalia pe o se faʻafitauli fa'aleagaina. O togi mamafa e maua ai se faʻamatalaga pe faʻafefea atonu le fa'aogaina o se fa'aletonu, ae i'u lava ina fa'aaoga e fa'alagolago tele i puipuiga o lo'o iai i totonu o faiga fa'aletonu ma punaoa ma gafatia o le au osofa'i. E le gata i lea, o le leai o ni lipoti a le CVE e leai se tala e uiga i isi le resitalaina pe le iloa fa'aletonu. O le ese'esega ile CVE atonu e mafua mai i mea e ese mai nai lo le tulaga lelei o le polokalama, e aofia ai punaoa ua tu'uina atu i su'ega po'o le tele o le tagata fa'aoga. I la matou faʻataʻitaʻiga, o le maualuga o le numera o CVEs a Debian e mafai ona faʻaalia ai o Debian o loʻo faʻauluina le tele o pusa polokalama.

Ioe, o le CVE system e maua ai faʻamatalaga aoga e mafai ai ona e faia ni puipuiga talafeagai. O le sili atu ona tatou malamalama i mafuaʻaga o le le manuia o le polokalame, o le faigofie foi lea ona iloa auala talafeagai o le faʻaogaina ma atiina ae auala talafeagai. iloa ma tali. I le Ata. 2 o loʻo faʻaalia ai vaega o faʻafitauli mo faʻasalalauga uma i le fa tausaga talu ai (punavai). E vave lava ona manino o le tele o CVE e pa'ū i vaega nei: teena o le tautua (DoS), faʻataunuʻuina o tulafono, faʻafefe, faʻaleagaina o mafaufauga, faʻamatalaga faʻamatalaga (faʻasaʻoina) ma faʻateleina avanoa. E ui ina tele CVE e faitau faatele i vaega eseese, i le lautele o mataupu lava e tasi e tumau pea i lea tausaga ma lea tausaga. I le isi vaega o le tusiga, o le a tatou iloiloina le faʻaogaina o polokalame puipuia eseese e puipuia ai le faʻaogaina o nei faʻafitauli.

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux
Fig. Xnumx

Galuega

I lenei tusiga matou te faamoemoe e tali fesili nei:

  • O le a le saogalemu o faʻasalalauga eseese Linux? O a ni faiga puipuia o lo'o iai i totonu ole kernel ma fa'aoga avanoa avanoa?
  • Na fa'afefea ona suia le fa'aogaina o auala saogalemu i le aluga o taimi i tufatufaga?
  • O le a le averesi fa'alagolago o afifi ma faletusi mo tufatufaga ta'itasi?
  • O a puipuiga o loʻo faʻatinoina mo binary taʻitasi?

Filifiliga o tufatufaga

E foliga mai e faigata ona maua faʻamaumauga saʻo i luga o faʻasalalauga faʻapipiʻi, talu ai i le tele o tulaga o le numera o download e le faʻaalia ai le numera o faʻapipiʻi moni. Ae ui i lea, o le Unix variants e aofia ai le tele o polokalama faʻapipiʻi (i luga o upega tafaʻilagi 69,2%, e fuainumera W3techs ma isi punaoa), ma o loʻo faʻatupulaia pea a latou vaega. O lea la, mo a matou suʻesuʻega na matou taulaʻi atu i tufatufaga o loʻo avanoa mai le pusa i luga o le faʻavae Google Cloud. Aemaise lava, na matou filifilia le OS nei:

Fa'asoa/faiga
O le autu
Fau

OpenSUSE 12.4
4.12.14-95.3-agavale
#1 SMP Wed Tes 5 06:00:48 UTC 2018 (63a8d29)

Debian 9 (fa'aloaloa)
4.9.0-8-amd64
#1 SMP Debian 4.9.130-2 (2018-10-27)

CentOS 6.10
2.6.32-754.10.1.el6.x86_64
#1 SMP Tue Jan 15 17:07:28 UTC 2019

CentOS 7
3.10.0-957.5.1.el7.x86_64
#1 SMP Fri Feb 1 14:54:57 UTC 2019

Red Hat Enterprise Linux Server 6.10 (Santiago)
2.6.32-754.9.1.el6.x86_64
#1 SMP Wed Nov 21 15:08:21 EST 2018

Red Hat Enterprise Linux Server 7.6 (Maipo)
3.10.0-957.1.3.el7.x86_64
#1 SMP Thu Nov 15 17:36:42 UTC 2018

Ubuntu 14.04 (Trusty Tahr)
4.4.0–140-lautele

#166~14.04.1-Ubuntu SMP Sat Nov 17 01:52:43 UTC 20…

Ubuntu 16.04 (Xenial Xerus)
4.15.0–1026-gcp
#27~16.04.1-Ubuntu SMP Fri Tes 7 09:59:47 UTC 2018

Ubuntu 18.04 (Bionic Beaver)
4.15.0–1026-gcp
#27-Ubuntu SMP Thu Dec 6 18:27:01 UTC 2018

Laulau 1

Iloiloga

Se'i o tatou su'esu'eina le fa'aogaina o le kernel fa'aletonu, fa'apea fo'i ma meatotino o afifi o lo'o maua e ala i le pule o pusa o tufatufa ta'itasi mai le pusa. O le mea lea, matou te mafaufau i pusa mai faʻata faʻataʻitaʻiga taʻitasi, le amanaʻiaina afifi mai faleoloa e le mautu (e pei o Debian 'suʻega' faʻata) ma isi vaega (e pei o Nvidia afifi mai faʻata masani). E le gata i lea, matou te le mafaufau i tuʻufaʻatasiga masani fatu poʻo faʻamautu faʻamaʻaʻaina.

Su'esu'ega Fa'atulagaina o Kernel

Sa matou fa'aogaina se fa'amatalaga au'ili'ili e fa'atatau i fua kconfig siaki. Se'i o tatou va'ava'ai atu i fa'ailoga puipui i fafo o le pusa o fa'asoa fa'aigoaina ma fa'atusatusa i latou i le lisi mai Poloketi Puipuiga Autu (KSPP). Mo filifiliga ta'itasi ta'itasi, o lo'o fa'amatala mai e le Laulau 2 le fa'atulagaga mana'omia: o le pusa siaki e mo tufatufaga e fa'atatau i fautuaga a le KSSP (silasila i le fa'amatalaga o fa'amatalaga). iinei; I tala i le lumanaʻi o le a matou faʻamatalaina pe fia le tele o nei auala saogalemu na oʻo mai ma pe faʻafefea ona faʻaogaina se faiga i lo latou toesea).

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux

I se tulaga lautele, o fatu fou e sili atu le faʻaogaina mai le pusa. Mo se faʻataʻitaʻiga, CentOS 6.10 ma RHEL 6.10 i luga o le 2.6.32 kernel e leai se tele o mea taua na faʻatinoina i fatu fou e pei o SMAP, fa'atagaga RWX fa'atulafonoina, fa'asologa fa'asologa po'o le puipuiga kopi2usr. E tatau ona maitauina o le tele o filifiliga faʻatulagaina i le laulau e le o maua i lomiga tuai o le fatu ma e le talafeagai i le mea moni - o loʻo faʻaalia pea i le laulau ona o le leai o se puipuiga talafeagai. E fa'apea fo'i, afai e le'o iai se filifiliga fa'aopoopo i se fa'amatalaga tu'ufa'atasia, ma e mana'omia e le puipuiga le fa'aletonu o le filifiliga, e manatu o se fa'atulagaga talafeagai.

O le isi itu e mafaufau i ai pe a faʻamatalaina iʻuga: o nisi faʻasalalauga kernel e faʻateleina ai le osofaʻiga e mafai foi ona faʻaogaina mo le saogalemu. O ia faʻataʻitaʻiga e aofia ai uprobes ma kprobes, kernel modules, ma BPF/eBPF. O la matou fautuaga o le faʻaogaina lea o auala o loʻo i luga e tuʻuina atu ai le puipuiga moni, aua e le o se mea faʻatauvaʻa le faʻaaogaina ma o latou faʻaogaina e manatu o tagata leaga ua uma ona faʻavaeina se tulaga i totonu o le faiga. Ae afai e mafai nei filifiliga, e tatau i le pule o le polokalama ona mataʻituina lelei mo le faʻaleagaina.

A va'ai atili i fa'amaumauga o lo'o i le Laulau 2, tatou te va'ai ai o fatu fa'aonaponei e maua ai le tele o filifiliga mo le puipuia mai le fa'aogaina o fa'afitauli fa'aletonu e pei o fa'amatalaga liko ma fa'aputuga/fa'aputuga. Ae ui i lea, matou te maitauina e oʻo lava i faʻasalalauga taʻutaʻua lata mai e leʻi faʻatinoina le puipuiga sili atu (mo se faʻataʻitaʻiga, faʻatasi ai ma patch saogalemu) po'o le puipuiga fa'aonaponei mai osofa'iga toe fa'aoga tulafono (fa'ata'ita'iga. tu'ufa'atasiga o fa'asologa fa'atasi ma polokalame pei o R^X mo fa'ailoga). O le mea e sili atu ona leaga, e oʻo lava i nei puipuiga sili atu e le puipuia mai le atoaga o osofaʻiga. O le mea lea, e taua tele mo le faʻatonuina o le faʻaogaina o faʻasalalauga atamai ma fofo e ofoina atu le faʻaogaina o le faʻaogaina ma le puipuia.

Fa'aaogāga Iloiloga

E le o se mea e ofo ai, o tufatufa eseese e eseese uiga afifi, filifiliga tuʻufaʻatasia, faʻalagolago ile faletusi, ma isi. E iai eseesega e oʻo lava mo fesootai tufatufaina ma afifi ma se numera itiiti o faʻalagolago (mo se faʻataʻitaʻiga, coreutils i le Ubuntu poʻo Debian). Ina ia iloilo le eseesega, matou te la'uina uma pusa avanoa, aveese mai a latou mea, ma suʻesuʻeina le binaries ma faʻalagolago. Mo afifi taitasi, matou te siakiina isi afifi e faalagolago i ai, ma mo binary taitasi, matou te siakiina ona faalagolago. I lenei vaega tatou te otootoina faapuupuu ia faaiuga.

Tufatufa

I le aotelega, na matou sii maia 361 afifi mo tufatufaga uma, aveese mai naʻo afifi mai faʻata le lelei. Na matou le amana'ia afifi e aunoa ma ni ELF e mafai ona fa'atinoina, e pei o puna, fonuka, ma isi. Ina ua mae'a fa'amama, 556 afifi na totoe, o lo'o i ai le aofa'i o 129 binaries. O le tufatufaina o afifi ma faila i tufatufaga o loʻo faʻaalia i le Ata. 569.

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux
Fig. Xnumx

E mafai ona e matauina o le sili atu ona faʻaonaponei le tufatufaina atu, o le tele o afifi ma binaries o loʻo i ai, lea e talafeagai. Ae ui i lea, o pusa Ubuntu ma Debian e aofia ai le tele o isi binaries (faʻatonuina ma faʻamalosi modules ma faletusi) nai lo CentOS, SUSE ma RHEL, lea e ono aʻafia ai le osofaʻiga a Ubuntu ma Debian (e tatau ona maitauina o numera e atagia uma ai binaries o faʻaliliuga uma. afifi, o lona uiga, o nisi faila e suʻesuʻeina i le tele o taimi). E taua tele lenei mea pe a e mafaufau i faʻalagolago i le va o afifi. O le mea lea, o se faʻafitauli i totonu o se pusa binary e tasi e mafai ona aʻafia ai le tele o vaega o le siosiomaga faʻanatura, e pei lava o se faletusi vaivai e mafai ona aʻafia uma ai binaries e faʻaulufale mai ai. I le avea ai o se amataga, seʻi o tatou vaʻavaʻai i le tufatufaina o numera o faʻalagolago i totonu o afifi i faiga faʻaoga eseese:

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux
Fig. Xnumx

I le toetoe lava o tufatufaga uma, 60% o afifi e le itiiti ifo ma le 10 faʻalagolago. E le gata i lea, o nisi afifi o loʻo i ai se numera tele o faʻalagolago (sili atu i le 100). E tutusa lava le faʻatatau i le fesuiaʻiina o faʻalagolago i afifi: e pei ona faʻamoemoeina, o nai afifi e faʻaaogaina e le tele o isi afifi i le tufatufaina atu, o le mea lea o faʻafitauli i latou filifilia e maualuga le lamatiaga. Mo se faʻataʻitaʻiga, o le laulau o loʻo i lalo o loʻo lisiina ai le 20 afifi ma le numera maualuga o faʻalagolago i le SLES, Centos 7, Debian 9 ma le Ubuntu 18.04 (o le sela taʻitasi e faʻaalia ai le afifi ma le numera o faʻalagolago i tua).

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux
Laulau 3

Mea moni mata'ina. E ui lava o OS suʻesuʻe uma e fausia mo le x86_64 fausaga, ma o le tele o afifi o loʻo i ai le fausaga faʻamatalaina o le x86_64 ma le x86, o pusa e masani ona aofia ai binaries mo isi fausaga, e pei ona faʻaalia i le Ata 5. XNUMX.

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux
Fig. Xnumx

I le isi vaega, o le a tatou suʻesuʻeina uiga o le auʻiliʻili binaries.

Fa'amaumauga o le puipuiga o faila binary

I le tulaga aupito maualalo, e tatau ona e suʻesuʻeina se seti faavae o filifiliga saogalemu mo au binaries o iai. E tele fa'asalalauga Linux e sau ma fa'amaumauga e fa'atino ai na siaki. Mo se faʻataʻitaʻiga, Debian/Ubuntu o loʻo i ai se faʻamatalaga. O se faʻataʻitaʻiga lenei o lana galuega:

$ hardening-check $(which docker)
/usr/bin/docker:
 Position Independent Executable: yes
 Stack protected: yes
 Fortify Source functions: no, only unprotected functions found!
 Read-only relocations: yes
 Immediate binding: yes

E siaki e le tusitusiga le lima galuega tau puipuiga:

  • Tuto'atasi Tuto'atasi Fa'atino (PIE): Fa'ailoa pe mafai ona fa'agaoioi le vaega o tusitusiga o se polokalame i le manatua e maua ai le fa'asologa pe a mafai le ASLR i le fatu.
  • Puipuia Faaputuga: Pe mafai e canaries fa'aputuga ona puipuia mai osofa'iga fetoaiga fa'aputu.
  • Fa'amalosia Punaoa: pe suia galuega le saogalemu (mo se fa'ata'ita'iga, strcpy) i latou e sili atu ona malupuipuia, ma vala'au siaki i le ta'avale e suia i latou e le'i siakiina (fa'ata'ita'iga, memcpy nai lo __memcpy_chk).
  • Toe sii na'o le faitau (RELRO): Pe o fa'ailogaina o fa'amaumauga o le laulau e toe fa'asiina e faitau-na'o pe a fa'aoso a'o le'i amataina le fa'atinoga.
  • Fa'amauina vave: Pe fa'ataga uma e le so'otaga taimi fa'atino a'o le'i amataina le fa'atinoga o polokalame (e tutusa ma le RELRO atoa).

Pe ua lava auala o loo i luga? Ae paga lea e leai. O lo'o i ai auala fa'apitoa e fa'afefe uma ai puipuiga o lo'o i luga, ae o le malosi o le puipuiga, o le maualuga lea o le pa mo le osofa'i. Faataitaiga, RELRO auala fa'afefe sili atu ona faigata ona fa'aoga pe a fa'amanaia le PIE ma le fa'amauina vave. E fa'apea fo'i, e mana'omia e le ASLR atoa ni galuega fa'aopoopo e fatu ai se fa'aoga galue. Ae ui i lea, o tagata osofaʻi faʻapitoa ua uma ona sauni e faʻafetaui ia puipuiga: o lo latou toesea o le a faʻavaveina ai le hack. O lea e taua ai le manatu o nei faiga e tatau ai maualalo.

Matou te manaʻo e suʻesuʻe pe fia faila faila i faʻasalalauga o loʻo fesiligia e puipuia e nei ma isi auala e tolu:

  • E le mafai ona fa'atinoina (NX) taofia le faʻataunuʻuina i soʻo se itulagi e le tatau ona faʻatinoina, e pei o le faaputuga faaputuga, ma isi.
  • RPATH/RUNPATH o lo'o fa'ailoa mai ai le ala fa'atinoina o lo'o fa'aogaina e le lo'o fa'amalosi e su'e ai faletusi fa'atusa. O le mea muamua faamalosia mo soʻo se faiga faʻaonaponei: o lona toesea e mafai ai e tagata osofaʻi ona tusi faʻamaonia le uta i le mafaufau ma faʻatino e pei ona i ai. Mo le lona lua, le sa'o fa'atonuga ala fa'atino e fesoasoani i le fa'aofiina o le tulafono fa'atuatuaina e mafai ona o'o atu ai i le tele o fa'afitauli (eg. fa'ateleina avanoa, faapea foi ma isi faafitauli).
  • O le puipuiga o le fetoaiga o faaputuga e maua ai le puipuiga mai osofaiga e mafua ai ona sosolo le faaputuga i isi vaega o le manatua (e pei o le faaputuga). Tu'u mai i faiga fa'aleaganu'u talu ai nei fa'alavelave fa'alavelave fa'aputuga, na matou lagona e talafeagai le faʻapipiʻiina o lenei masini i la matou faʻamaumauga.

O lea, e aunoa ma se toe fa'atali, se'i tatou o ifo i le numera. O le laulau 4 ma le 5 o lo'o i ai se aotelega o le au'ili'iliga o faila e mafai ona fa'atinoina ma faletusi o fa'asalalauga eseese, fa'asologa.

  • E pei ona e vaʻaia, o le NX puipuiga o loʻo faʻatinoina i soʻo se mea, faʻatasi ai ma tuusaunoaga seasea. Aemaise lava, e mafai e se tasi ona maitauina lona faʻaogaina laʻititi i le Ubuntu ma Debian tufatufa faʻatusatusa i CentOS, RHEL ma OpenSUSE.
  • O lo'o misi a canaries fa'aputu i le tele o nofoaga, ae maise i tufatufaga ma fatu matutua. O loʻo faʻaalia nisi alualu i luma i tufatufaga lata mai o Centos, RHEL, Debian ma Ubuntu.
  • Vagana ai Debian ma Ubuntu 18.04, o le tele o tufatufaga e le lelei le lagolago a le PIE.
  • O le puipuiga o faʻalavelave faʻapipiʻi e vaivai i OpenSUSE, Centos 7 ma RHEL 7, ma e toetoe lava a le o iai i isi.
  • O faʻasalalauga uma faʻatasi ma fatu faʻaonaponei o loʻo i ai se lagolago mo le RELRO, faʻatasi ai ma le Ubuntu 18.04 e taʻitaʻia le ala ma Debian e sau i le lona lua.

E pei ona taʻua muamua, o metrics i lenei laulau o le averesi mo faʻasologa uma o le faila binary. Afai e te vaʻavaʻai naʻo faʻamatalaga lata mai o faila, o numera o le a eseese (mo se faʻataʻitaʻiga, vaʻai Debian alualu i luma ma le faʻatinoga o le PIE). E le gata i lea, o le tele o tufatufaga e masani lava naʻo le suʻeina o le saogalemu o nai galuega i le binary pe a faʻatusatusa fuainumera, ae o la matou auʻiliʻiliga e faʻaalia ai le pasene moni o galuega e faʻamaʻaina. O le mea lea, afai e puipuia le 5 mai le 50 galuega i se binary, o le a matou tuʻuina atu i ai se togi o le 0,1, e fetaui ma le 10% o galuega faʻamalosia.

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux
Fuafuaga 4. Uiga saogalemu mo faila faila o loʻo faʻaalia i le Ata. 3 (fa'atinoina o galuega fa'atatau e pei o se pasene o le aofa'i o faila faila)

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux
Laulau 5. Uiga saogalemu mo faletusi o loʻo faʻaalia i le Ata. 3 (fa'atinoina o galuega fa'atatau o se pasene o le aofa'i o faletusi)

O i ai la le alualu i luma? E mautinoa lava e iai: e mafai ona va'aia mai fa'amaumauga mo tufatufaga ta'ito'atasi (mo se fa'ata'ita'iga, Debian), faʻapea foʻi ma laulau i luga. Mo se faʻataʻitaʻiga i le Fig. O le ata 6 o loʻo faʻaalia ai le faʻatinoina o auala puipuia i faʻasalalauga faʻasolosolo e tolu o le Ubuntu LTS 5 (ua matou faʻaumatia faʻamaumauga o le puipuiga o feteʻenaʻiga). Matou te maitauina mai le faʻasologa i le faʻasologa o le tele ma le tele o faila e lagolagoina canaries faʻapipiʻi, ma faʻapea foʻi ma le tele ma sili atu o binaries o loʻo lafoina i le puipuiga atoa o le RELRO.

Miliona o binaries mulimuli ane. Na faʻafefea ona faʻateleina le malosi o Linux
Fig. Xnumx

O le mea e leaga ai, o le tele o faila e mafai ona faʻatinoina i faʻasalalauga eseese e leai lava se tasi o puipuiga o loʻo i luga. Mo se faʻataʻitaʻiga, vaʻavaʻai i le Ubuntu 18.04, o le ae matauina le binary ngetty (se getty replacement), faʻapea foʻi ma le mksh ma le lksh shells, le picolisp interpreter, le nvidia-cuda-toolkit packages (o se afifi lauiloa mo GPU-faʻavave talosaga. e pei o fa'avae a'oa'oga masini), ma klibc -utils. E faʻapea foʻi, o le mandos-client binary (o se meafaigaluega faʻapitoa e mafai ai e oe ona toe faʻafouina masini faʻapipiʻi faila faila) faʻapea foʻi ma le rsh-redone-client (se toe faʻafouina o le rsh ma le rlogin) vaʻa e aunoa ma se puipuiga NX, e ui lava e iai a latou aia tatau SUID: (. E le gata i lea, E tele suid binaries e leai ni puipuiga faʻavae e pei o canaries stack (mo se faʻataʻitaʻiga, le Xorg.wrap binary mai le Xorg package).

Aotelega ma Saunoaga Faai'u

I totonu o lenei tusiga, ua matou faʻamalamalamaina le tele o vaega saogalemu o faʻasalalauga Linux faʻaonapo nei. O le auʻiliʻiliga na faʻaalia ai o le Ubuntu LTS tufatufaga fou (18.04) o loʻo faʻaaogaina, i le averesi, o le OS sili ona malosi ma le faʻaogaina o le tulaga o le puipuiga i le va o tufatufaga ma fatu fou fou, e pei o le Ubuntu 14.04, 12.04 ma Debian 9. Ae ui i lea, o tufatufaga suʻesuʻe CentOS, RHEL ma OpenSUSE i la matou seti e ala i le faaletonu latou te maua ai se seti sili atu o afifi, ma i lomiga lata mai (CentOS ma RHEL) latou te maua se pasene maualuga atu o le puipuiga o faʻalavelave faʻatusatusa i Debian-faʻavae tauva (Debian ma Ubuntu). I le faʻatusatusaina o CentOS ma RedHat versions, matou te matauina le tele o faʻaleleia i le faʻatinoina o canaries faʻapipiʻi ma RELRO mai lomiga 6 i le 7, ae i le averesi CentOS e sili atu ona faʻatinoina nai lo RHEL. I se tulaga lautele, o tufatufaga uma e tatau ona gauai faapitoa atu i le puipuiga o le PIE, lea, sei vagana ai Debian 9 ma le Ubuntu 18.04, o loʻo faʻatinoina i lalo ifo o le 10% o binaries i la tatou faʻamaumauga.

Ma le mea mulimuli, e tatau ona maitauina e ui lava na matou faia suʻesuʻega ma le lima, e tele mea faigaluega saogalemu o loʻo avanoa (eg. Lynis, taiga, Hubble), lea e fa'atino au'ili'iliga ma fesoasoani e 'alofia fa'atonuga le saogalemu. Ae paga lea, e oʻo lava i le puipuiga malosi i faʻasalalauga talafeagai e le faʻamaonia ai le leai o ni faʻaoga. O le mafuaaga lena matou te matua talitonu ai e taua tele le mautinoa mataʻituina faʻalagolago ma puipuia o osofaʻiga i le taimi moni, taulai atu i mamanu o le faʻaaogaina ma le puipuia.

puna: www.habr.com

Faaopoopo i ai se faamatalaga