TL; DR. ืืืืืจ ืื, ืื ื ืืืงืจืื ืืช ืกืืืืืช ืืืงืฉืื ืฉืคืืขืืืช ืืืืฅ ืืงืืคืกื ืืืืฉ ืืคืฆืืช ืืื ืืงืก ืคืืคืืืจืืืช. ืขืืืจ ืื ืืื, ืืงืื ื ืืช ืชืฆืืจืช ืืืืช ืืจืืจืช ืืืืื, ืืขื ื ืืช ืื ืืืืืืืช ืื ืืชืื ื ืืช ืกืืืืืช ืืืืืื ืืงืืฆืื ืืืื ืืจืืื ืืืฆืืจืคืื. ืืืคืฆืืช ืื ืืฉืืืช ืื OpenSUSE 12.4, Debian 9, CentOS, RHEL 6.10 ื-7, ืืื ืื ืืืืื ืื 14.04, 12.04 ื-18.04 LTS.
ืืชืืฆืืืช ืืืฉืจืืช ืฉืืคืืื ืชืืื ืืืช ืืกืืกืืืช ืืื ืขืจืืืช ืื ืจืืืช ืืงืื ืืืชื ืชืืื ืืขืืื ืขืืืื ืื ืืืืืฆืืช ืขื ืืื ืืืื. ืืืฆื ืืจืืข ืขืื ืืืชืจ ืขืืืจ ืืืืืจืื ืืื ืื ืืืข ืืืื ื ืืคื ื ืคืจืฆืืช ืืื ืืืกื ืืช, ืฉืืืืขื ืืืืจ ืืืจืงืืจืื ืืื ืืืจ ืืืืจ ืืคืจืกืื
ืืกืงืืจื ืืจืืชื ืื ืืืกืคืจ ืืืืื ืืืืชืจ ืฉื ืฉืืืืช ืืื ื ืืืืฉื ืืืืืื ืื 18.04 ืืจืืช ืืขืจืืช ืืืคืขืื ืืืืืฉืืืื, ืืืืจืื ืืืืื 9. ืืฆื ืฉื ื, OpenSUSE 12.4, CentOS 7 ื-RHEL 7 ืืืืฉืืื ืื ืชืืื ืืืช ืืื ื ืืกืืกืืืช, ืืืื ื ืืคื ื ืืชื ืืฉืืช ืืืกื ืืช. ื ืืฆื ืืฉืืืืฉ ื ืจืื ืขืื ืืืชืจ ืขื ืงืืืฆื ืฆืคืืคื ืืจืื ืืืชืจ ืฉื ืืืืืืช ืืจืืจืช ืืืื.
ืืืื
ืงืฉื ืืืืืื ืชืืื ื ืืืืืืช ืืืืื. ืืืจืืช ืืืกืคืจ ืืขืฆืื ืฉื ืืืื ืืชืงืืืื ืื ืืชืื ืงืื ืกืืื ืื ืืชืื ืืื ืจืืฆื ืืื ืื, ืืื ืื ืืชืงืืืืช ืืฉืืขืืชืืช ืืคืืชืื ืืืืจืื ืืฉืคืืช ืชืื ืืช, ืืชืืื ื ืืืืืจื ืืช ืขืืืื ืกืืืืช ืืคืืืขืืช ืฉืื ืืฆืืืช ืืื ืืจืฃ ืขื ืืื ืืชืืงืคืื. ืืืฆื ืืืืจ ืขืื ืืืชืจ ืืืขืจืืืช ืืงืืืืืืืช ืืืืืืืช ืงืื ืืืืจ ืงืืื. ืืืงืจืื ืืืื, ืื ื ืื ืจืง ืืชืืืืืื ืขื ืืืขืื ืื ืฆืืืช ืฉื ืืฆืืืช ืฉืืืืืช ืืคืฉืจืืืช ืฉื ืืชื ืืช ืื ืืฆืื, ืืื ืื ื ืื ืืืืืืื ืขื ืืื ืืกืืจืืช ืงืคืื ืืืช ืฉื ืชืืืืืช ืืืืืจ, ืฉืืขืืชืื ืงืจืืืืช ืืืืืืืช ืืืชื ื ืืฉืืจ ืงืื ืืืืื, ืื ืืคืืื ืืจืืข ืืืชืจ, ืคืืืข ืื ืืืื.
ืืื ื ืื ืกืืช ืืชืืื ื ืฉืืืืช ืืื ื ืื ืืงืฉืื ืฉื ืชืืื ืืืช. ืื ืื ื ืื ืืืืืื ืืื ืืข ืกืืืื ืืกืืืืื ืฉื ืฉืืืืืช, ืืื ืื ืื ื ืืืืืื ืืืงืฉืืช ืขื ืืื ืืชืืงืฃ ืืืคืชืืจ ืืืงืืช ืืช ืืืขืื ืขื ืืื ืื ืืขื ืื ืื ืืขื ื ืืฆืื ืืฉืืืืืช ืืืื. ืืื ื ืืื ืืฉืืฉืช ืืื ืืขืจืืืช ืืืคืขืื ืืืืืจื ืืืช, ืื ืืฉืืืืช ืฉืื ืืช ืืืื ืืืืจืืืืช, ืืขืืืืช ืืืืฆืืขืื: ืืงื ืจืืืช ืืืกื ืืืช ื
CVE ืืืืืื
ืืืื ื ืจืืื ื ืืืืจืื ืขื ืืืชืจืืช ืืื "ืืืคืืืงืฆืืืช ืืคืืืขืืช ืืืืชืจ ืฉื ืืฉื ื" ืื "ืืขืจืืืช ืืืคืขืื ืืคืืืขืืช ืืืืชืจ". ืืืจื ืืื ืื ืืกืคืงืื ืกืืืืกืืืงื ืขื ืืืกืคืจ ืืืืื ืฉื ืจืฉืืืืช ืขื ืคืืืขืืืืช ืืื
ืืืืืื, ืฉืงืื ืืช ืืืกืคืจ ืืืืื ืฉื CVEs ืืืืื ืืจืืข ืืฉื ืื ืืืืจืื ืืช ืขืืืจ ืืืืช ืืื ืืงืก ืืืืฉ ืืคืฆืืช ืืฉืจืช ืืคืืคืืืจืืืช ืืืืชืจ, ืืืืืจ ืืืืื ืื, Debian, Red Hat Enterprise Linux ื-OpenSUSE.
ืืืืจ. ืืกืคืจ
ืื ืืืจืฃ ืืื ืืืืจ ืื ื? ืืื ืืกืคืจ ืืืื ืืืชืจ ืฉื CVEs ืืืืจ ืฉืืคืฆื ืืืช ืคืืืขื ืืืชืจ ืืืืจืช? ืืื ืชืฉืืื. ืืืืืื, ืืืืืจ ืื ืชืจืื ืฉืืืืืื ืืฉ ืื ืื ืื ื ืืืืื ืืืงืื ืืืชืจ ืืืฉืืืื ืืืฉื ื-OpenSUSE ืื RedHat Linux, ืืืื ืืืช ืืืืืื ืืฉ ืืืชืจ CVEs. ืขื ืืืช, ืื ืื ืืืืจื ืืชืืืื ืื ืืืืืื ืืืืืฉืช: ืืคืืื ื ืืืืืช ืฉื CVE ืื ืืฆืืื ืช ืื ืคืืืขืืช ืืื ืึฐื ืึผืฆึธื. ืฆืืื ื ืืืืจื ืืกืคืงืื ืืื ืืืงืฆืื ืืืฆื ืื ืจืื ื ืืฆืื ืฉื ืคืืืขืืช, ืื ืืกืืคื ืฉื ืืืจ ืืืืืช ืื ืืฆืื ืชืืืื ืืืืื ืจืื ืืืื ืืช ืืงืืืืืช ืืืขืจืืืช ืืืืฉืคืขืืช ืืืืฉืืืื ืืืืืืืืช ืฉื ืืชืืงืคืื. ืืชืจื ืืื, ืืืขืืจ ืืืืืช CVE ืื ืืืืจ ืืืจ ืขื ืืืจืื ืื ืจืฉืื ืื ืื ืืืืข ืคืืืขืืืืช. ืืืืื ื-CVE ืขืฉืื ืื ืืืข ืืืืจืืื ืืืจืื ืืืื ืืืืืช ืืชืืื ื, ืืืื ืืืฉืืืื ืฉืืืงืฆื ืืืืืงืืช ืื ืืืื ืืกืืก ืืืฉืชืืฉืื. ืืืืืื ืฉืื ื, ืืืกืคืจ ืืืืื ืืืชืจ ืฉื CVEs ืฉื ืืืืื ืขืฉืื ืคืฉืื ืืืฆืืืข ืขื ืื ืฉืืืืื ืฉืืืืช ืืืชืจ ืืืืืืช ืชืืื ื.
ืืืืื ืฉืืขืจืืช CVE ืืกืคืงืช ืืืืข ืฉืืืืฉื ืืืืคืฉืจ ืืืฆืืจ ืืื ืืช ืืชืืืืืช. ืืื ืฉื ืืื ืืื ืืืชืจ ืืช ืืกืืืืช ืืืืฉืืื ืืชืืื ืืช, ืื ืงื ืืืชืจ ืืืืืช ืฉืืืืช ืืคืฉืจืืืช ืื ืืฆืื ืืืคืชื ืื ืื ืื ืื ืืชืืืืื ืืืืื ืืชืืืื. ืืืืืจ. 2 ืืฆืื ืืช ืงืืืืจืืืช ืืคืืืขืืช ืขืืืจ ืื ืืืคืฆืืช ืืืืื ืืจืืข ืืฉื ืื ืืืืจืื ืืช (
ืืืืจ. ืืกืคืจ
ืืฉืืืืช
ืืืืืจ ืื ืื ื ืืชืืืื ืื ืืขื ืืช ืขื ืืฉืืืืช ืืืืืช:
- ืืื ืืืืืื ืฉื ืืคืฆืืช ืืื ืืงืก ืฉืื ืืช? ืืืื ืื ืื ืื ื ืืื ื ืงืืืืื ืืืืฉืืื ืืงืจื ื ืืืจืื ืืืฉืชืืฉ?
- ืืืฆื ืืฉืชื ืชื ืืืืืืฅ ืฉื ืื ืื ืื ื ืืืืื ืืืืจื ืืื ืืื ืืืคืฆืืช?
- ืืื ืืชืืืช ืืืืืฆืขืช ืฉื ืืืืืืช ืืกืคืจืืืช ืขืืืจ ืื ืืคืฆื?
- ืืืื ืืื ืืช ืืืืฉืืืช ืขืืืจ ืื ืืื ืืจื?
ืืืืจ ืืคืฆืืช
ืืกืชืืจ ืฉืงืฉื ืืืฆืื ื ืชืื ืื ืกืืืืกืืืื ืืืืืงืื ืขื ืืชืงื ืืช ืืคืฆื, ืฉืื ืืจืื ืืืงืจืื ืืกืคืจ ืืืืจืืืช ืืื ื ืืขืื ืขื ืืกืคืจ ืืืชืงื ืืช ืืคืืขื. ืขื ืืืช, ืืจืกืืืช ืืื ืืงืก ืืืืืช ืืช ืจืื ืืขืจืืืช ืืฉืจืชืื (ืืฉืจืชื ืืื ืืจื ื 69,2%, ืืคื
ืืคืฆื/ืืจืกื
ืืืจืขืื
ืึดืื ืึนืช
OpenSUSE 12.4
4.12.14-95.3-ืืจืืจืช ืืืื
#1 SMP ืืื ืจืืืขื 5 ืืืฆืืืจ 06:00:48 UTC 2018 (63a8d29)
ืืืืื 9 (ืืชืืื)
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 ืืื ืฉืืืฉื 15 ืืื ืืืจ 17:07:28 UTC 2019
CentOS 7
3.10.0-957.5.1.el7.x86_64
#1 SMP ื' 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 ืืื ืจืืืขื 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 ืืื ืืืืฉื 15 ืื ืืืืืจ 17:36:42 UTC 2018
ืืืืื ืื 14.04 (Trusty Tahr)
4.4.0โ140-ืื ืจื
#166~14.04.1-Ubuntu SMP ืฉืืช 17 ืื ืืืืืจ 01:52:43 UTC 20โฆ
ืืืืื ืื 16.04 (Xenial Xerus)
4.15.0โ1026-gcp
#27~16.04.1-Ubuntu SMP ื' 7 ืืืฆืืืจ 09:59:47 UTC 2018
ืืืืื ืื 18.04 (Bionic Beaver)
4.15.0โ1026-gcp
#27-Ubuntu SMP ืืื ืืืืฉื 6 ืืืฆืืืจ 18:27:01 UTC 2018
ืืื 1
ื ืืชืื ืฉื
ืืื ื ืืื ืืช ืชืฆืืจืช ืืืืช ืืจืืจืช ืืืืื, ืืื ืื ืืช ืืืืคืืื ืื ืฉื ืืืืืืช ืืืืื ืืช ืืจื ืื ืื ืืืืืืืช ืฉื ืื ืืคืฆื ืืืงืืคืกื. ืืคืืื, ืื ื ืืชืืืืกืื ืจืง ืืืืืืืช ืืืจืืืช ืืจืืจืช ืืืืื ืฉื ืื ืืคืฆื, ืชืื ืืชืขืืืืช ืืืืืืืช ืืืืืจืื ืื ืืฆืืืื (ืืืื ืืืืื 'ืืืืงืช' ืืจืืืช) ืืืืืืืช ืฉื ืฆื ืฉืืืฉื (ืืืื ืืืืืืช Nvidia ืืืจืืืช ืกืื ืืจืืืืช). ืื ืืกืฃ, ืืื ื ื ืืชืืืืกืื ืืืืืืจื ืืืื ืืืชืืืื ืืืฉืืช ืื ืชืฆืืจืืช ืืืงืฉืืืช ืืืืืื.
ื ืืชืื ืชืฆืืจืช ืืืื
ืืืฉืื ื ืชืกืจืื ื ืืชืื ืืืืืกืก ืขื
ืืืืคื ืืืื, ืืืจืขืื ืืืืฉ ืืฉ ืืืืจืืช ืืืืืจืืช ืืืชืจ ืืืืฅ ืืงืืคืกื. ืืืืืื, CentOS 6.10 ื-RHEL 6.10 ืืืืืช 2.6.32 ืืกืจืืช ืืช ืจืื ืืชืืื ืืช ืืงืจืืืืืช ืืืืืฉืืืช ืืงืจื ืืื ืืืฉืื ืืืชืจ, ืืืื
ื ืงืืื ื ืืกืคืช ืฉืืฉ ืืงืืช ืืืฉืืื ืืขืช โโืคืืจืืฉ ืืชืืฆืืืช: ืืื ืชืฆืืจืืช ืืืื ืืืืืืืืช ืืช ืืฉืื ืืืชืงืคื ืืืืืืช ืืฉืืฉ ืื ืืืืืื. ืืืืืืืช ืืืื ืืืืืืช uprobes ื-kprobes, ืืืืืื ืืืื ื-BPF/eBPF. ืืืืฆืชื ื ืืื ืืืฉืชืืฉ ืืื ืื ืื ืื ืื "ื ืืื ืืกืคืง ืืื ื ืืืืชืืช, ืฉืื ืื ืื ืืจืืืืืืืืื ืืฉืืืืฉ ืื ืืฆืืื ืื ืื ืฉืืืจืืื ืืืื ืืื ืืืจ ืงืืขื ืืจืืกืช ืจืื ืืืขืจืืช. ืืื ืื ืืคืฉืจืืืืช ืืื ืืืคืขืืืช, ืื ืื ืืืขืจืืช ืืืื ืืคืงื ืืืืคื ืคืขืื ืขื ื ืืฆืื ืืจืขื.
ืืืกืชืืืืช ื ืืกืคืช ืขื ืืขืจืืื ืืืืื 2, ืื ื ืจืืืื ืื ืืจืขืื ืื ืืืืจื ืืื ืืกืคืงืื ืืกืคืจ ืืคืฉืจืืืืช ืืืื ื ืืคื ื ื ืืฆืื ืฉื ื ืงืืืืช ืชืืจืคื ืืืื ืืืืคืช ืืืืข ืืืฆืคืช ืืืกื ืืช/ืขืจืืื. ืขื ืืืช, ืื ื ืืืืื ืื ืฉืืคืืื ืืืคืฆืืช ืืคืืคืืืจืืืช ืืืืจืื ืืช ืขืืืื ืื ืืืฉืื ืืื ื ืืืจืืืช ืืืชืจ (ืืืืืื, ืขื ืชืืงืื ืื
ื ืืชืื ืืืฉืืืื
ืืืืคื ืื ืืคืชืืข, ืืืคืฆืืช ืฉืื ืืช ืืฉ ืืืคืืื ื ืืืืื ืฉืื ืื, ืืคืฉืจืืืืช ืงืืืคืืืฆืื, ืชืืืช ืืกืคืจืืื ืืื'. ืงืืืืื ืืืืืื ืืคืืื ืขืืืจ
ืืคืฆืืช
ืืกื ืืื, ืืืจืื ื 361 ืืืืืืช ืืื ืืืคืฆืืช, ืืืืืฆื ื ืจืง ืืืืืืช ืืืจืืืช ืืจืืจืช ืืืืื. ืืชืขืืื ื ืืืืืืืช ืืื ืงืืืฆื ืืคืขืื ืฉื ELF, ืืืื ืืงืืจืืช, ืืืคื ืื ืืื'. ืืืืจ ืกืื ืื, ื ืืชืจื 556 ืืืืืืช, ืืืืืืืช ืืกื ืืื 129 ืงืืฆืื ืืื ืืจืืื. ืืืคืฆื ืฉื ืืืืืืช ืืงืืฆืื ืขื ืคื ื ืืคืฆืืช ืืืฆืืช ืืืืืจ. 569.
ืืืืจ. ืืกืคืจ
ืืืชืื ืฉืชืืืื ืฉืืื ืฉืืืคืฆื ืืืืจื ืืช ืืืชืจ, ืื ืืื ืืืืื ืืืชืจ ืืืืืืช ืืงืืฆืื ืืื ืืจืืื, ืืื ืืืืื ื. ืขื ืืืช, ืืืืืืช ืืืืื ืื ืืืืืื ืืืืืืช ืืจืื ืืืชืจ ืงืืฆื ืืคืขืื (ืื ืงืืืฆื ืืคืขืื ืืื ืืืืืืื ืืกืคืจืืืช ืืื ืืืืช) ืืืฉืจ CentOS, SUSE ื-RHEL, ืื ืฉืขืืื ืืืฉืคืืข ืขื ืืฉืื ืืืชืงืคื ืฉื ืืืืื ืื ืืืืืื (ืืฉ ืืฆืืื ืฉืืืกืคืจืื ืืฉืงืคืื ืืช ืื ืืืื ืืจืืื ืฉื ืื ืืืจืกืืืช ืืืืื, ืืืืืจ, ืืืง ืืืงืืฆืื ืื ืืชืืื ืืกืคืจ ืคืขืืื). ืื ืืฉืื ืืืืืื ืืฉืืืฉืืื ืขื ืชืืืช ืืื ืืืืืืช. ืืคืืื, ืคืืืขืืช ืืืื ืืจื ืืืืื ืืืช ืืืืื ืืืฉืคืืข ืขื ืืืงืื ืจืืื ืฉื ืืืขืจืืช ืืืงืืืืืืช, ืืืืืง ืืคื ืฉืกืคืจืืื ืคืืืขื ืืืืื ืืืฉืคืืข ืขื ืื ืืืื ืืจืืื ืืืืืืืื ืืืชื. ืื ืงืืืช ืืชืืื, ืืืื ื ืกืชืื ืขื ืืชืคืืืืช ืืกืคืจ ืืชืืืช ืืื ืืืืืืช ืืืขืจืืืช ืืคืขืื ืฉืื ืืช:
ืืืขื ืืื ืืืคืฆืืช, ื-60% ืืืืืืืืช ืืฉ ืืคืืืช 10 ืืืกื ืชืืืช. ืื ืืกืฃ, ืืืืง ืืืืืืืืช ืืฉ ืืกืคืจ ืืืื ืืืชืจ ืืืืคื ืืฉืืขืืชื ืฉื ืชืืืช (ืืืชืจ ื-100). ืืืชื ืืืืจ ืื ืขื ืชืืืช ืืืืื ืืคืืื: ืืฆืคืื, ืืืืืืช ืืืืืืช ื ืืฆืืืช ืืฉืืืืฉ ืขื ืืื ืืืืืืช ืจืืืช ืืืจืืช ืืืคืฆื, ืื ืฉืคืืืขืืืืช ืืืื ื ืืืจืืช ืื ืืกืืืื ืืืื. ืืืืืื, ืืืืื ืืืื ืืคืจืืช ืืช 20 ืืืืืืืช ืขื ืืืกืคืจ ืืืจืื ืฉื ืชืืืช ืืคืืื ื-SLES, Centos 7, Debian 9 ืืืืืื ืื 18.04 (ืื ืชื ืืฆืืื ืืช ืืืืืื ืืืช ืืกืคืจ ืืชืืืช ืืืคืืื).
ืืื 3
ืขืืืื ืืขื ืืื ืช. ืืืจืืช ืฉืื ืืขืจืืช ืืืคืขืื ืืื ืืชืืช ืื ืืืืช ืขืืืจ ืืจืืืืงืืืจืช x86_64, ืืืจืื ืืืืืืืช ืืฉ ืืช ืืืจืืืืงืืืจื ืืืืืืจืช ื-x86_64 ื-x86, ืืืืืืช ืืืืืืช ืืจืื ืงืืฆืื ืืื ืืจืืื ืขืืืจ ืืจืืืืงืืืจืืช ืืืจืืช, ืืคื ืฉืืืฆื ืืืืืจ 5. XNUMX.
ืืืืจ. ืืกืคืจ
ืืืืง ืืื ื ืขืืืง ืืืืคืืื ืื ืฉื ืืืื ืืจืืื ืืื ืืชืืื.
ืกืืืืกืืืงืืช ืืื ื ืขื ืงืืฆืื ืืื ืืจืืื
ืืื ืืคืืืช, ืืชื ืฆืจืื ืืืงืืจ ืงืืืฆื ืืกืืกืืช ืฉื ืืคืฉืจืืืืช ืืืืื ืขืืืจ ืืงืืฆืื ืืืื ืืจืืื ืืงืืืืื ืฉืื. ืืื ืืคืฆืืช ืืื ืืงืก ืืืืขืืช ืขื ืกืงืจืืคืืื ืฉืืืฆืขืื ืืืืงืืช ืืืื. ืืืืืื, ืืืืืื/ืืืืื ืื ืืฉ ืกืงืจืืคื ืืื. ืื ื ืืืืื ืืขืืืืชื:
$ 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
ืืชืกืจืื ืืืืง ืืืืฉื
- Position Independent Executable (PIE): ืืฆืืื ืื ื ืืชื ืืืืื ืืช ืงืืข ืืืงืกื ืฉื ืชืืื ืืช ืืืืืจืื ืืื ืืืฉืื ืืงืจืื ืื ASLR ืืืคืขื ืืืืื.
- ืืืกื ืืช ืืืื ืช: ืืื ืื ืจืืืช ืืืกื ืืืช ืืืคืขืืืช ืืื ืืืื ืืคื ื ืืชืงืคืืช ืืชื ืืฉืืช ืืืกื ืืืช.
- ืืืืืง ืืงืืจ: ืืื ืคืื ืงืฆืืืช ืื ืืืืืืช (ืืืืืื, strcpy) ืืืืืคืืช ืืขืืืชืืื ืืืืืืืืื ืืืชืจ, ืืงืจืืืืช ืฉื ืืืงื ืืืื ืจืืฆื ืืืืืคืืช ืืขืืืชืืื ืืื ืืกืืื ืื (ืืืืืื, memcpy ืืืงืื __memcpy_chk).
- ืืขืืจืืช ืืงืจืืื ืืืื (RELRO): ืืื ืขืจืื ืืืืช ืืขืืจื ืืกืืื ืื ืืงืจืืื ืืืื ืื ืื ืืืคืขืืื ืืคื ื ืชืืืืช ืืืืฆืืข.
- ืืจืืื ืืืืืืช: ืืื ืืงืฉืจ ืืื ืืจืืฆื ืืืคืฉืจ ืืช ืื ืืืืืืื ืืคื ื ืชืืืืช ืืืฆืืข ืืชืืื ืืช (ืื ืฉืืื ืขืจื ื-RELRO ืืื).
ืืื ืืื ืื ืื ืื ืื "ื ืืกืคืืงืื? ืืืจืื ืืฆืขืจ ืื. ืืฉื ื ืืจืืื ืืืืขืืช ืืขืงืืฃ ืืช ืื ืืืื ืืช ืืขืื, ืื ืืื ืฉืืืื ื ืงืฉื ืืืชืจ, ืื ืืจืฃ ืืืื ืืืชืจ ืขืืืจ ืืชืืงืฃ. ืืืืืื,
ืจืฆืื ื ืืืืื ืืื ืงืืฆืื ืืื ืืจืืื ืืืคืฆืืช ืืืืืืจืืช ืืืื ืื ืขื ืืื ืืื ืืฉืืืฉ ืฉืืืืช ื ืืกืคืืช:
- ืกืืืืืช ืื ื ืืชื ืืช ืืืคืขืื (
NX ) ืืื ืข ืืืฆืืข ืืื ืืืืจ ืฉืื ืืืืจ ืืืืืช ืืจ ืืคืขืื, ืืืื ืขืจืืืช ืืขืจืืื ืืื'. RPATH/RUNPATH ืืฆืืื ืืช ื ืชืื ืืืืฆืืข ืืืฉืืฉ ืืช ืืืืขื ืืืื ืื ืืืฆืืืช ืกืคืจืืืช ืชืืืืืช. ืืจืืฉืื ืืื ืืืื ืืื ืืขืจืืช ืืืืจื ืืช: ืืืขืืจื ืืืคืฉืจ ืืชืืงืคืื ืืืชืื ืืืืคื ืฉืจืืจืืชื ืืช ืืืืขื ืืืืืจืื ืืืืฆืข ืืืชื ืืคื ืฉืืื. ืขืืืจ ืืฉื ื, ืชืฆืืจืืช ื ืชืื ืืืฆืืข ืฉืืืืืช ืขืืืจืืช ืืืืืจืช ืงืื ืื ืืืื ืฉืืืื ืืืืืื ืืืกืคืจ ืืขืืืช (ืืืฉื.ืืกืืื ืฉื ืืืืืืช ืืชืจ ื -ืืขืืืช ืืืจืืช ).- ืืื ื ืืคื ื ืืชื ืืฉืืช ืืืกื ืืช ืืกืคืงืช ืืื ื ืืคื ื ืืชืงืคืืช ืืืืจืืืช ืืืืกื ืืช ืืืคืืฃ ืืืืืจื ืืืืจืื ืืืจืื (ืืืื ืืขืจืืื). ืืืชืืฉื ืื ืืฆืื ืืจืขื ืืืืจืื ื
ืคืืืขืืช ืืชื ืืฉืืช ืขืจืืื ืืืขืจืืช , ืืจืืฉื ื ืฉื ืืื ืืืืื ืืช ืืื ืื ืื ืืื ืืืขืจื ืื ืชืื ืื ืฉืื ื.
ืื, ืืื ืืืืืืจ ืืืืื, ืืืื ื ืจื ืืืกืคืจืื. ืืืืืืช 4 ื-5 ืืืืืืช ืกืืืื ืฉื ืื ืืชืื ืฉื ืงืืฆื ืืคืขืื ืืกืคืจืืืช ืฉื ืืคืฆืืช ืฉืื ืืช, ืืืชืืื.
- ืืคื ืฉืืชื ืืืื ืืจืืืช, ืืื ืช NX ืืืืฉืืช ืืื ืืงืื, ืืืขื ืืจืืืื ื ืืืจืื. ืืืืืื, ืืคืฉืจ ืืฆืืื ืืช ืืฉืืืืฉ ืื ืืื ืืืงืฆืช ืืืคืฆืืช ืืืืื ืื ืืืืืื ืืืฉืืืื ื- CentOS, RHEL ื-OpenSUSE.
- ืื ืจืืืช ืืืกื ืืืช ืืกืจืืช ืืืงืืืืช ืจืืื, ืืืืืื ืืืคืฆืืช ืขื ืืจืขืื ืื ืืฉื ืื ืืืชืจ. ืืชืงืืืืช ืืกืืืืช ื ืจืืืช ืืืคืฆืืช ืืืืจืื ืืช ืฉื Centos, RHEL, Debian ืืืืืื ืื.
- ืืืขื ืืืืื ืืืืืื ืื 18.04, ืืจืื ืืืคืฆืืช ืืฉ ืชืืืื ืืจืืขื ื-PIE.
- ืืื ืช ืืชื ืืฉืืช ืืืกื ืืช ืืืฉื ื-OpenSUSE, Centos 7 ื-RHEL 7, ืืืืขืฉื ืื ืงืืืืช ืืืืจืื.
- ืืื ืืืคืฆืืช ืขื ืืืืืช ืืืืจื ืืืช ืืฉ ืชืืืื ืืกืืืืช ื-RELRO, ืืืฉืจ ืืืืื ืื 18.04 ืืืืืื ืืืืืื ืืืงืื ืืฉื ื.
ืืคื ืฉืืืจ ืฆืืื, ืืืืืื ืืืืื ืื ืื ืืืืืฆืข ืขืืืจ ืื ืืืจืกืืืช ืฉื ืืงืืืฅ ืืืื ืืจื. ืื ืืชื ืืกืชืื ืจืง ืขื ืืืืจืกืืืช ืืขืืื ืืืช ืืืืชืจ ืฉื ืงืืฆืื, ืืืกืคืจืื ืืืื ืฉืื ืื (ืืืืืื, ืจืื
ืืืื 4. ืืืคืืื ื ืืืืื ืขืืืจ ืงืืฆื ืืืคืขืื ืืืืฆืืื ืืืืืจ. 3 (ืืืฉืื ืฉื ืคืื ืงืฆืืืช ืจืืืื ืืืืช ืืืืื ืืกื ืงืืฆื ืืืคืขืื)
ืืืื 5. ืืืคืืื ื ืืืืื ืขืืืจ ืืกืคืจืืืช ืืืืฆืืืช ืืืืืจ. 3 (ืืืฉืื ืคืื ืงืฆืืืช ืจืืืื ืืืืช ืืืืื ืืกื ืืกืคืจืืืช)
ืื ืืฉ ืืชืงืืืืช? ืืืืื ืืฉ: ื ืืชื ืืจืืืช ืืืช ืืืกืืืืกืืืงื ืฉื ืืชืคืืืืช ืืืืืืช (ืืืืืื,
ืืืจืื ืืฆืขืจ, ืืืกืคืจ ืงืืฆื ืืคืขืื ืืืคืฆืืช ืฉืื ืืช ืขืืืื ืืื ืืฃ ืืืช ืืืืื ืืช ืื "ื. ืืืืืื, ืืืกืชืืืืช ืขื ืืืืื ืื 18.04, ืชืืืื ื-ngetty ืืื ืืจื (ืชืืืืฃ ื-getty), ืืื ืื ืืืขืืคืืช mksh ื-lksh, ืืชืืจืืื picolisp, ืืืืืืช nvidia-cuda-toolkit (ืืืืื ืคืืคืืืจืืช ืืืืฉืืืื ืืืืฆืื ื-GPU ืืืื ืืกืืจืืช ืืืืืช ืืืื ื), ื-klibc -utils. ืืืืคื ืืืื, ื-mandos-client ืืื ืืจื (ืืื ื ืืืืื ืืืืคืฉืจ ืื ืืืชืื ืืืืืืืืช ืืืื ืืช ืขื ืืขืจืืืช ืงืืฆืื ืืืฆืคื ืืช) ืืื rsh-redone-client (ืืืฉืื ืืืืฉ ืฉื rsh ื-rlogin) ื ืฉืืืื ืืื ืืื ืช NX, ืืืจืืช ืฉืืฉ ืืื ืืืืืืช SUID: (. ืืื ืื, ืืืกืคืจ ืงืืฆื suid ืืื ืืจืืื ืืื ืืื ื ืืกืืกืืช ืืื ืื ืจืืืช ืืืกื ืืช (ืืืืืื, ืืืื ืืจื Xorg.wrap ืืืืืืช Xorg).
ืกืืืื ืืืขืจืืช ืกืืื
ืืืืืจ ืื, ืืืืฉื ื ืืกืคืจ ืชืืื ืืช ืืืืื ืฉื ืืคืฆืืช ืืื ืืงืก ืืืืจื ืืืช. ืื ืืชืื ืืจืื ืฉืืืคืฆื ืืขืืื ืืช ืืืืชืจ ืฉื Ubuntu LTS (18.04) ืืืืฉืืช, ืืืืืฆืข, ืืช ืืืื ื ืืืืงื ืืืืชืจ ืฉื ืืขืจืืช ืืืคืขืื ืืจืืช ืืืคืืืงืฆืื ืืื ืืคืฆืืช ืขื ืืืืืช ืืืฉืืช ืืืกืืช, ืืืื ืืืืื ืื 14.04, 12.04 ืืืืืื 9. ืขื ืืืช, ืืืคืฆืืช ืฉื ืืืงื CentOS, RHEL ื OpenSUSE ืืกื ืฉืื ื ืืืจืืจืช ืืืื ืื ืืืืฆืจืื ืกื ืืืืืืช ืฆืคืืฃ ืืืชืจ, ืืืืจืกืืืช ืืืืจืื ืืช (CentOS ื-RHEL) ืืฉ ืืื ืืืื ืืืื ืืืชืจ ืฉื ืืื ืช ืืชื ืืฉืืช ืืืกื ืืช ืืืฉืืืื ืืืชืืจืื ืืืืกืกื ืืืืื (ืืืืื ืืืืืื ืื). ืืืฉืืืื ืืืจืกืืืช CentOS ื-RedHat, ืื ื ืืืืื ืื ืืฉืืคืืจืื ืืืืืื ืืืืฉืื ืฉื ืื ืจืืืช ืืืกื ืืืช ื-RELRO ืืืืจืกืืืช 6 ืขื 7, ืื ืืืืืฆืข ื-CentOS ืืฉ ืืืชืจ ืชืืื ืืช ืืืืฉืืืช ืืืฉืจ RHEL. ืืืืคื ืืืื, ืื ืืืคืฆืืช ืฆืจืืืืช ืืฉืื ืื ืืืืืื ืืืื ืช PIE, ืืฉืจ, ืืืขื ืืืืื 9 ืืืืืื ืื 18.04, ืืืืฉืืช ืืคืืืช ื-10% ืืืงืืฆืื ืืืื ืืจืืื ืืืขืจื ืื ืชืื ืื ืฉืื ื.
ืืืกืืฃ, ืืฉ ืืฆืืื ืฉืืืจืืช ืฉืืืฆืขื ื ืืช ืืืืงืจ ืืืืคื ืืื ื, ืืฉื ื ืืื ืืืืื ืจืืื ืืืื ืื (ืืืฉื.
ืืงืืจ: www.habr.com