เชจเซเซ เชง. เช เชจเซเชตเชพเชฆ: เช เชฎเซ เชคเชฎเชพเชฐเชพ เชงเซเชฏเชพเชจ เชชเชฐ เชฌเซเชฐเชฟเชเชฟเชถ เชเชเชชเชจเซ ASOS.com เชชเชฐ เชธเชฟเชจเชฟเชฏเชฐ เชเชชเซเชฒเซเชเซเชถเชจ เชธเชฟเชเซเชฏเซเชฐเชฟเชเซ เชเชจเซเชเชฟเชจเชฟเชฏเชฐเชจเชพ เชฒเซเชเชจเซ เช เชจเซเชตเชพเชฆ เชฐเชเซ เชเชฐเซเช เชเซเช. เชคเซเชจเซ เชธเชพเชฅเซ, เชคเซ seccomp เชจเชพ เชเชชเชฏเซเช เชฆเซเชตเชพเชฐเชพ เชเซเชฌเชฐเชจเซเชเซเชธเชฎเชพเช เชธเซเชฐเชเซเชทเชพ เชธเซเชงเชพเชฐเชตเชพ เชฎเชพเชเซ เชธเชฎเชฐเซเชชเชฟเชค เชชเซเชฐเชเชพเชถเชจเซเชจเซ เชถเซเชฐเซเชฃเซ เชถเชฐเซ เชเชฐเซ เชเซ. เชเซ เชตเชพเชเชเซเชจเซ เชชเชฐเชฟเชเชฏ เชเชฎเชถเซ, เชคเซ เช เชฎเซ เชฒเซเชเชเชจเซ เช เชจเซเชธเชฐเซเชถเซเช เช เชจเซ เช เชตเชฟเชทเชฏ เชชเชฐ เชคเซเชฎเชจเซ เชญเชพเชตเชฟ เชธเชพเชฎเชเซเชฐเซเช เชธเชพเชฅเซ เชเชพเชฒเซ เชฐเชพเชเซเชถเซเช.
เชเชพเชฆเซ เช
เชจเซ เชฎเซเชฒเซเชตเชฟเชฆเซเชฏเชพเชจเซ เชเชถเชฐเซ เชฒเซเชงเชพ เชตเชฟเชจเชพ, SecDevOps เชจเซ เชญเชพเชตเชจเชพเชฎเชพเช seccomp เชชเซเชฐเซเชซเชพเชเชฒเซเชธ เชเซเชตเซ เชฐเซเชคเซ เชฌเชจเชพเชตเชตเซ เชคเซ เช
เชเชเซเชจเซ เชถเซเชฐเซเชฃเซเชฌเชฆเซเชง เชชเซเชธเซเชเซเชธเชฎเชพเช เช เชฒเซเช เชชเชนเซเชฒเซ เชเซ. เชญเชพเช XNUMX เชฎเชพเช, เชนเซเช เชเซเชฌเชฐเชจเซเชเซเชธเชฎเชพเช seccomp เช
เชฎเชฒเชฎเชพเช เชฎเซเชเชตเชพเชจเซ เชฎเซเชณเชญเซเชค เชฌเชพเชฌเชคเซ เช
เชจเซ เชเชเชคเชฐเชฟเช เชตเชฟเชเชคเซ เชเชตเชฐเซ เชฒเชเชถ.
เชเซเชฌเชฐเชจเซเชเซเชธ เชเชเซเชธเชฟเชธเซเชเชฎ เชเชจเซเชเซเชจเชฐเชจเซ เชธเซเชฐเชเซเชทเชฟเชค เช
เชจเซ เช
เชฒเช เชเชฐเชตเชพเชจเซ เชตเชฟเชตเชฟเชง เชฐเซเชคเซ เชชเซเชฐเชฆเชพเชจ เชเชฐเซ เชเซ. เช เชฒเซเช เชธเชฟเชเซเชฏเซเชฐ เชเชฎเซเชชเซเชฏเซเชเชฟเชเช เชฎเซเชก เชตเชฟเชถเซ เชเซ, เชเซเชจเซ เชคเชฐเซเชเซ เชชเชฃ เชเชณเชเชตเชพเชฎเชพเช เชเชตเซ เชเซ เชธเซเชเชฎเซเชช. เชคเซเชจเซ เชธเชพเชฐ เชเชจเซเชเซเชจเชฐ เชฆเซเชตเชพเชฐเชพ เชเชเซเชเซเชเซเชฏเซเชถเชจ เชฎเชพเชเซ เชเชชเชฒเชฌเซเชง เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธเชจเซ เชซเชฟเชฒเซเชเชฐ เชเชฐเชตเชพเชจเซ เชเซ.
เชถเชพ เชฎเชพเชเซ เชคเซ เชฎเชนเชคเซเชตเชจเซเช เชเซ? เชเชจเซเชเซเชจเชฐ เช เชเซเชเซเชเชธ เชฎเชถเซเชจ เชชเชฐ เชเชพเชฒเชคเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเซ. เช เชจเซ เชคเซ เช เชจเซเชฏ เชเชชเซเชฒเชฟเชเซเชถเชจเซเชธเชจเซ เชเซเชฎ เชเชฐเซเชจเชฒเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ. เชเซ เชเชจเซเชเซเชจเชฐ เชเซเชเชชเชฃ เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธ เชเชฐเซ เชถเชเซ เชเซ, เชคเซ เชฌเชนเซ เชเชฒเซเชฆเซ เชฎเชพเชฒเชตเซเชฐ เชเชจเซเชเซเชจเชฐ เชเชเชธเซเชฒเซเชถเชจเชจเซ เชฌเชพเชฏเชชเชพเชธ เชเชฐเชตเชพ เช เชจเซ เช เชจเซเชฏ เชเชชเซเชฒเชฟเชเซเชถเชจเซเชจเซ เช เชธเชฐ เชเชฐเชตเชพ เชฎเชพเชเซ เชคเซเชจเซ เชฒเชพเชญ เชฒเซเชถเซ: เชฎเชพเชนเชฟเชคเซ เช เชเชเชพเชตเชตเซ, เชธเชฟเชธเซเชเชฎ เชธเซเชเชฟเชเชเซเชธ เชฌเชฆเชฒเชตเซ เชตเชเซเชฐเซ.
seccomp เชฐเซเชชเชฐเซเชเชพเช เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเซ เชเซ เชเซ เชเช เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธเชจเซ เชฎเชเชเซเชฐเซ เชเชชเชตเซ เชเซเชเช เช เชฅเชตเชพ เชจเชฟเชทเซเชเซเชฐเชฟเชฏ เชเชฐเชตเซ เชเซเชเช. เชเชจเซเชเซเชจเชฐ เชฐเชจเชเชพเชเชฎ เชคเซเชฎเชจเซ เชธเชเซเชฐเชฟเชฏ เชเชฐเซ เชเซ เชเซเชฏเชพเชฐเซ เชคเซ เชถเชฐเซ เชฅเชพเชฏ เชเซ เชเซเชฅเซ เชเชฐเซเชจเชฒ เชคเซเชฎเชจเชพ เช เชฎเชฒเชจเซ เชฎเซเชจเชฟเชเชฐ เชเชฐเซ เชถเชเซ. เชเชตเซ เชฐเซเชชเชฐเซเชเชพเชเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชฅเซ เชคเชฎเซ เชเชเซเช เชตเซเชเซเชเชฐเชจเซ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชเชฐเซ เชถเชเซ เชเซ เช เชจเซ เชเซ เชเชจเซเชเซเชจเชฐเชจเซ เช เชเชฆเชฐเชจเซ เชเซเชเชชเชฃ เชชเซเชฐเซเชเซเชฐเชพเชฎ (เชเชเชฒเซ โโโโเชเซ, เชคเชฎเชพเชฐเซ เชจเชฟเชฐเซเชญเชฐเชคเชพ เช เชฅเชตเชพ เชคเซเชฎเชจเซ เช เชตเชฒเชเชฌเชจ) เชเชเชเช เชเชตเซเช เชเชฐเชตเชพเชจเซเช เชถเชฐเซ เชเชฐเซ เชเซ เชเซ เชคเซเชจเซ เชเชฐเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชจเชฅเซ, เชคเซ เชจเซเชเชธเชพเชจ เชเชเชพเชกเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ.
เชฎเซเชณเชญเซเชค เชฌเชพเชฌเชคเซ เชฎเซเชณเชตเชตเชพเชฎเชพเช
เชฎเซเชณเชญเซเชค seccomp เชชเซเชฐเซเชซเชพเชเชฒเชฎเชพเช เชคเซเชฐเชฃ เชเชเชเซ เชถเชพเชฎเซเชฒ เชเซ: defaultAction
, architectures
(เช
เชฅเชตเชพ archMap
) เช
เชจเซ syscalls
:
{
"defaultAction": "SCMP_ACT_ERRNO",
"architectures": [
"SCMP_ARCH_X86_64",
"SCMP_ARCH_X86",
"SCMP_ARCH_X32"
],
"syscalls": [
{
"names": [
"arch_prctl",
"sched_yield",
"futex",
"write",
"mmap",
"exit_group",
"madvise",
"rt_sigprocmask",
"getpid",
"gettid",
"tgkill",
"rt_sigaction",
"read",
"getpgrp"
],
"action": "SCMP_ACT_ALLOW"
}
]
}
defaultAction
เชตเชฟเชญเชพเชเชฎเชพเช เชเชฒเซเชฒเซเชเชฟเชค เชจ เชนเซเชฏ เชคเซเชตเชพ เชเซเชเชชเชฃ เชธเชฟเชธเซเชเชฎ เชเซเชฒเชจเซเช เชกเชฟเชซเซเชฒเซเช เชญเชพเชตเชฟ เชจเชเซเชเซ เชเชฐเซ เชเซ syscalls
. เชตเชธเซเชคเซเชเชจเซ เชธเชฐเชณ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซ, เชเชพเชฒเซ เชฌเซ เชฎเซเชเซเชฏ เชฎเซเชฒเซเชฏเซ เชชเชฐ เชงเซเชฏเชพเชจ เชเซเชจเซเชฆเซเชฐเชฟเชค เชเชฐเซเช เชเซเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ:
-
SCMP_ACT_ERRNO
- เชธเชฟเชธเซเชเชฎ เชเซเชฒเชจเชพ เช เชฎเชฒเชจเซ เช เชตเชฐเซเชงเซ เชเซ, -
SCMP_ACT_ALLOW
- เชชเชฐเชตเชพเชจเชเซ เชเชชเซ เชเซ.
เชเชฒเชฎ architectures
เชฒเชเซเชทเซเชฏ เชเชฐเซเชเชฟเชเซเชเซเชเชฐ เชธเซเชเชฟเชฌเชฆเซเชง เชเซ. เช เช
เชเชคเซเชฏเชจเซเช เชเซ เชเชพเชฐเชฃ เชเซ เชซเชฟเชฒเซเชเชฐ เชชเซเชคเซ, เชเชฐเซเชจเชฒ เชธเซเชคเชฐเซ เชฒเชพเชเซ เชฅเชพเชฏ เชเซ, เชธเชฟเชธเซเชเชฎ เชเซเชฒ เชเชณเชเชเชฐเซเชคเชพเช เชชเชฐ เชเชงเชพเชฐ เชฐเชพเชเซ เชเซ, เช
เชจเซ เชชเซเชฐเซเชซเชพเชเชฒเชฎเชพเช เชเชฒเซเชฒเซเชเชฟเชค เชคเซเชฎเชจเชพ เชจเชพเชฎเซ เชชเชฐ เชจเชนเซเช. เชเชชเชฏเซเช เชเชฐเชคเชพ เชชเชนเซเชฒเชพ เชเชจเซเชเซเชจเชฐ เชฐเชจเชเชพเชเชฎ เชคเซเชฎเชจเซ เชเชณเชเชเชฐเซเชคเชพเช เชธเชพเชฅเซ เชฎเซเช เชเชฐเชถเซ. เชตเชฟเชเชพเชฐ เช เชเซ เชเซ เชธเชฟเชธเซเชเชฎ เชเชฐเซเชเชฟเชเซเชเซเชเชฐเชจเชพ เชเชงเชพเชฐเซ เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธเชฎเชพเช เชธเชเชชเซเชฐเซเชฃเชชเชฃเซ เช
เชฒเช ID เชนเซเช เชถเชเซ เชเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชธเชฟเชธเซเชเชฎ เชเซเชฒ recvfrom
(เชธเซเชเซเชเชฎเชพเชเชฅเซ เชฎเชพเชนเชฟเชคเซ เชฎเซเชณเชตเชตเชพ เชฎเชพเชเซ เชตเชชเชฐเชพเชฏ เชเซ) เชชเชพเชธเซ x64 เชธเชฟเชธเซเชเชฎ เชชเชฐ ID = 64 เช
เชจเซ x517 เชชเชฐ ID = 86 เชเซ.
เชตเชฟเชญเชพเชเชฎเชพเช syscalls
เชฌเชงเชพ เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธเชจเซ เชฏเชพเชฆเซ เชเชชเซ เชเซ เช
เชจเซ เชคเซเชฎเชจเซ เชธเชพเชฅเซ เชถเซเช เชเชฐเชตเซเช เชคเซ เชธเซเชชเชทเซเช เชเชฐเซ เชเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชคเชฎเซ เชธเซเชเชฟเชเช เชเชฐเซเชจเซ เชตเซเชนเชพเชเชเชฒเชฟเชธเซเช เชฌเชจเชพเชตเซ เชถเชเซ เชเซ defaultAction
เชชเชฐ SCMP_ACT_ERRNO
, เช
เชจเซ เชตเชฟเชญเชพเชเชฎเชพเช เชเซเชฒ เชเชฐเซ syscalls
เชธเซเชเชชเชตเซเช SCMP_ACT_ALLOW
. เชเชฎ, เชคเชฎเซ เชตเชฟเชญเชพเชเชฎเชพเช เชเชฒเซเชฒเซเชเชฟเชค เชเซเชฒเซเชธเชจเซ เช เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ syscalls
, เช
เชจเซ เชฌเซเชเชพ เชฌเชงเชพเชจเซ เชชเซเชฐเชคเชฟเชฌเชเชงเชฟเชค เชเชฐเซ. เชฌเซเชฒเซเชเชฒเชฟเชธเซเช เชฎเชพเชเซ เชคเชฎเชพเชฐเซ เชฎเซเชฒเซเชฏเซ เชฌเชฆเชฒเชตเซ เชเซเชเช defaultAction
เช
เชจเซ เชตเชฟเชฐเซเชฆเซเชง เชเซเชฐเชฟเชฏเชพเช.
เชนเชตเซ เชเชชเชฃเซ เชเซเชเชเชพเช เชตเชฟเชถเซ เชฅเซเชกเชพเช เชถเชฌเซเชฆเซ เชเชนเซเชตเชพ เชเซเชเช เชเซ เชเชเชฒเชพ เชธเซเชชเชทเซเช เชจเชฅเซ. เชฎเชนเซเชฐเชฌเชพเชจเซ เชเชฐเซเชจเซ เชจเซเชเชง เชเชฐเซ เชเซ เชจเซเชเซ เชเชชเซเชฒเซ เชญเชฒเชพเชฎเชฃเซ เชงเชพเชฐเซ เชเซ เชเซ เชคเชฎเซ เชเซเชฌเชฐเชจเซเชเซเชธ เชชเชฐ เชตเซเชฏเชตเชธเชพเชฏเชฟเช เชเชชเซเชฒเชฟเชเซเชถเชจเซเชจเซ เชฒเชพเชเชจ เชเชฎเชพเชตเซ เชฐเชนเซเชฏเชพเช เชเซ เช เชจเซ เชคเชฎเซ เชเชเซเชเซ เชเซ เชเซ เชคเซ เชถเชเซเชฏ เชคเซเชเชฒเชพ เชเชเชพ เชตเชฟเชถเซเชทเชพเชงเชฟเชเชพเชฐเซ เชธเชพเชฅเซ เชเชพเชฒเซ.
1. AllowPrivilegeEscalation=false
ะ securityContext
เชเชจเซเชเซเชจเชฐ เชเช เชชเชฐเชฟเชฎเชพเชฃ เชงเชฐเชพเชตเซ เชเซ AllowPrivilegeEscalation
. เชเซ เชคเซ เชฎเชพเช เชธเซเชฅเชพเชชเชฟเชค เชฅเชฏเซเชฒ เชเซ false
, เชเชจเซเชเซเชจเชฐ เชธเชพเชฅเซ เชถเชฐเซ เชฅเชถเซ (on
) เชฌเซเช no_new_priv
เช เชตเชฟเชเชฒเซเชชเชจเซ เชเชกเช
เชธเชฐ เชธเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชฐเชนเซ เชเซ true
(เชกเชฟเชซเซเชฒเซเช) เช เชเซ เชเซ เชเชจเซเชเซเชจเชฐ เชฐเชจเชเชพเชเชฎ เชธเซเชเชพเชฐเซเชเช
เชช เชชเซเชฐเชเซเชฐเชฟเชฏเชพเชจเซ เชถเชฐเซเชเชคเชฎเชพเช เช seccomp เชชเซเชฐเซเชซเชพเชเชฒเชจเซ เชฒเชพเชเซ เชเชฐเซ เชเซ. เชเชฎ, เชเชเชคเชฐเชฟเช เชฐเชจเชเชพเชเชฎ เชชเซเชฐเชเซเชฐเชฟเชฏเชพเช เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ เชเชฐเซเชฐเซ เชคเชฎเชพเชฎ เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธ (เชฆเชพ.เชค. เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ/เชเซเชฅ ID เชธเซเช เชเชฐเชตเชพ, เช
เชฎเซเช เชเซเชทเชฎเชคเชพเช เชเซเชกเชตเซ) เชชเซเชฐเซเชซเชพเชเชฒเชฎเชพเช เชธเชเซเชทเชฎ เชนเซเชตเชพ เชเซเชเช.
เชเช เชเชจเซเชเซเชจเชฐ เชเซ เชเซ เชคเซเชเซเช เชตเชธเซเชคเซเช เชเชฐเซ เชเซ echo hi
, เชจเซเชเซเชจเซ เชชเชฐเชตเชพเชจเชเซเชเชจเซ เชเชฐเซเชฐ เชชเชกเชถเซ:
{
"defaultAction": "SCMP_ACT_ERRNO",
"architectures": [
"SCMP_ARCH_X86_64",
"SCMP_ARCH_X86",
"SCMP_ARCH_X32"
],
"syscalls": [
{
"names": [
"arch_prctl",
"brk",
"capget",
"capset",
"chdir",
"close",
"execve",
"exit_group",
"fstat",
"fstatfs",
"futex",
"getdents64",
"getppid",
"lstat",
"mprotect",
"nanosleep",
"newfstatat",
"openat",
"prctl",
"read",
"rt_sigaction",
"statfs",
"setgid",
"setgroups",
"setuid",
"stat",
"uname",
"write"
],
"action": "SCMP_ACT_ALLOW"
}
]
}
...เชเชจเชพ เชฌเชฆเชฒเซ:
{
"defaultAction": "SCMP_ACT_ERRNO",
"architectures": [
"SCMP_ARCH_X86_64",
"SCMP_ARCH_X86",
"SCMP_ARCH_X32"
],
"syscalls": [
{
"names": [
"arch_prctl",
"brk",
"close",
"execve",
"exit_group",
"futex",
"mprotect",
"nanosleep",
"stat",
"write"
],
"action": "SCMP_ACT_ALLOW"
}
]
}
เชชเชฐเชเชคเซ เชซเชฐเซเชฅเซ, เชถเชพ เชฎเชพเชเซ เช เชธเชฎเชธเซเชฏเชพ เชเซ? เชตเซเชฏเชเซเชคเชฟเชเชค เชฐเซเชคเซ, เชนเซเช เชจเซเชเซเชจเชพ เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธเชจเซ เชตเซเชนเชพเชเชเชฒเชฟเชธเซเช เชเชฐเชตเชพเชจเซเช เชเชพเชณเซเชถ (เชธเชฟเชตเชพเชฏ เชเซ เชคเซเชฎเชจเซ เชตเชพเชธเซเชคเชตเชฟเช เชเชฐเซเชฐเชฟเชฏเชพเชค เชนเซเชฏ): capset
, set_tid_address
, setgid
, setgroups
ะธ setuid
. เชเซ เชเซ, เชตเชพเชธเซเชคเชตเชฟเช เชชเชกเชเชพเชฐ เช เชเซ เชเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพเชเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซเชจเซ เชเซ เชเซเชจเชพ เชชเชฐ เชคเชฎเชพเชฐเซเช เชธเชเชชเซเชฐเซเชฃ เชจเชฟเชฏเชเชคเซเชฐเชฃ เชจเชฅเซ, เชคเชฎเซ เชเชจเซเชเซเชจเชฐ เชฐเชจเชเชพเชเชฎ เช
เชฎเชฒเซเชเชฐเชฃ เชธเชพเชฅเซ เชชเซเชฐเซเชซเชพเชเชฒเซเชธเชจเซ เชเซเชกเซ เชฐเชนเซเชฏเชพเช เชเซ. เชฌเซเชเชพ เชถเชฌเซเชฆเซเชฎเชพเช เชเชนเซเช เชคเซ, เชเช เชฆเชฟเชตเชธ เชคเชฎเซ เชเซเชถเซ เชเซ เชเชจเซเชเซเชจเชฐ เชฐเชจเชเชพเชเชฎ เชเชจเซเชตเชพเชฏเชฐเซเชจเชฎเซเชจเซเช เช
เชชเชกเซเช เชเชฐเซเชฏเชพ เชชเชเซ (เชเซเชฏเชพเช เชคเซ เชคเชฎเชพเชฐเชพ เชฆเซเชตเชพเชฐเชพ เช
เชฅเชตเชพ, เชตเชงเซ เชธเชเชญเชต เชเซ, เชเซเชฒเชพเชเชก เชธเซเชตเชพ เชชเซเชฐเชฆเชพเชคเชพ เชฆเซเชตเชพเชฐเชพ), เชเชจเซเชเซเชจเชฐ เช
เชเชพเชจเช เชเชพเชฒเชตเชพเชจเซเช เชฌเชเชง เชเชฐเซ เชฆเซ เชเซ.
เชเซเชช # 1: เชธเชพเชฅเซ เชเชจเซเชเซเชจเชฐ เชเชฒเชพเชตเซ AllowPrivilegeEscaltion=false
. เช seccomp เชชเซเชฐเซเชซเชพเชเชฒเซเชธเชจเซเช เชเชฆ เชเชเชพเชกเชถเซ เช
เชจเซ เชเชจเซเชเซเชจเชฐ เชฐเชจเชเชพเชเชฎ เชชเชฐเซเชฏเชพเชตเชฐเชฃเชฎเชพเช เชฅเชคเชพ เชซเซเชฐเชซเชพเชฐเซ เชฎเชพเชเซ เชคเซเชฎเชจเซ เชเชเชพ เชธเชเชตเซเชฆเชจเชถเซเชฒ เชฌเชจเชพเชตเชถเซ.
2. เชเชจเซเชเซเชจเชฐ เชฒเซเชตเชฒ เชชเชฐ เชธเซเชเชเซเชฎเซเชช เชชเซเชฐเซเชซเชพเชเชฒ เชธเซเช เชเชฐเชตเซ
seccomp เชชเซเชฐเซเชซเชพเชเชฒ เชชเซเชก เชธเซเชคเชฐ เชชเชฐ เชธเซเช เชเชฐเซ เชถเชเชพเชฏ เชเซ:
annotations:
seccomp.security.alpha.kubernetes.io/pod: "localhost/profile.json"
...เช เชฅเชตเชพ เชเชจเซเชเซเชจเชฐ เชธเซเชคเชฐ เชชเชฐ:
annotations:
container.security.alpha.kubernetes.io/<container-name>: "localhost/profile.json"
เชฎเชนเซเชฐเชฌเชพเชจเซ เชเชฐเซเชจเซ เชจเซเชเชง เชเชฐเซ เชเซ เชเซเชฏเชพเชฐเซ Kubernetes seccomp เชคเซเชฏเชพเชฐเซ เชเชชเชฐเซเชเซเชค เชตเชพเชเซเชฏเชฐเชเชจเชพ เชฌเชฆเชฒเชพเชถเซ
เชฌเชนเซ เชเชเชพ เชฒเซเชเซ เชเชพเชฃเซ เชเซ เชเซ เชเซเชฌเชฐเชจเซเชเซเชธ เชนเชเชฎเซเชถเชพ เชงเชฐเชพเชตเซ เชเซ
เชธเชฎเชธเซเชฏเชพ เช เชเซ เชเซ เช เชเชจเซเชเซเชจเชฐ เชนเชเชฎเซเชถเชพ เชธเชพเชฅเซ เชถเชฐเซ เชฅเชพเชฏ เชเซ AllowPrivilegeEscalation=true
, เชซเชเชฐเชพ 1 เชฎเชพเช เชฐเชเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซเชฒเซ เชธเชฎเชธเซเชฏเชพเช เชคเชฐเชซ เชฆเซเชฐเซ เชเชพเชฏ เชเซ, เช
เชจเซ เช เชฌเชฆเชฒเซ เชถเชเชพเชคเซ เชจเชฅเซ.
เชเชจเซเชเซเชจเชฐ เชธเซเชคเชฐเซ seccomp เชชเซเชฐเซเชซเชพเชเชฒเซเชธเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ, เชคเชฎเซ เช เชฎเซเชถเซเชเซเชฒเซเชจเซ เชเชพเชณเซ เชถเชเซ เชเซ เช เชจเซ เชเซเชเซเชเชธ เชเชจเซเชเซเชจเชฐเชจเซ เช เชจเซเชฐเซเชช เชชเซเชฐเซเชซเชพเชเชฒ เชฌเชจเชพเชตเซ เชถเชเซ เชเซ. เชตเชฟเชเชพเชธเชเชฐเซเชคเชพเช เชฌเชเชจเซ เช เซเช เชเชฐเซ เช เชจเซ เชจเชตเซเช เชธเชเชธเซเชเชฐเชฃ (เชเชฆเชพเช 1.18?) เชฆเชฐเซเช เชฎเชพเชเซ เชเชชเชฒเชฌเซเชง เชจ เชฅเชพเชฏ เชคเซเชฏเชพเช เชธเซเชงเซ เช เชเชฐเชตเชพเชจเซเช เชฐเชนเซเชถเซ.
เชเซเชช # 2: เชเชจเซเชเซเชจเชฐ เชธเซเชคเชฐ เชชเชฐ seccomp เชชเซเชฐเซเชซเชพเชเชฒเซเชธ เชธเซเช เชเชฐเซ.
เชตเซเชฏเชตเชนเชพเชฐเชฟเช เช
เชฐเซเชฅเชฎเชพเช, เช เชจเชฟเชฏเชฎ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชชเซเชฐเชถเซเชจเชจเชพ เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช เชเชตเชพเชฌ เชคเชฐเซเชเซ เชธเซเชตเชพ เชเชชเซ เชเซ: โเชฎเชพเชฐเซ เชธเซเชเชเซเชฎเซเชช เชชเซเชฐเซเชซเชพเชเชฒ เชถเชพ เชฎเชพเชเซ เชเชพเชฎ เชเชฐเซ เชเซ docker run
เชชเชฐเชเชคเซ เชเซเชฌเชฐเชจเซเชเซเชธ เชเซเชฒเชธเซเชเชฐเชฎเชพเช เชเชฎเชพเชตเซเชฏเชพ เชชเชเซ เชเชพเชฎ เชเชฐเชคเซเช เชจเชฅเซ?
3. เชฎเชพเชคเซเชฐ เชเซเชฒเซเชฒเชพ เชเชชเชพเชฏ เชคเชฐเซเชเซ เชฐเชจเชเชพเชเชฎ/เชกเชฟเชซเซเชฒเซเชเชจเซ เชเชชเชฏเซเช เชเชฐเซ
เชฌเชฟเชฒเซเช-เชเชจ เชชเซเชฐเซเชซเชพเชเชฒเซเชธ เชฎเชพเชเซ เชเซเชฌเชฐเชจเซเชเซเชธ เชชเชพเชธเซ เชฌเซ เชตเชฟเชเชฒเซเชชเซ เชเซ: runtime/default
ะธ docker/default
. เชฌเชเชจเซ เชเชจเซเชเซเชจเชฐ เชฐเชจเชเชพเชเชฎ เชฆเซเชตเชพเชฐเชพ เชฒเชพเชเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เชเซเชฌเชฐเชจเซเชเซเชธ เชฆเซเชตเชพเชฐเชพ เชจเชนเซเช. เชคเซเชฅเซ, เชเชชเชฏเซเชเชฎเชพเช เชฒเซเชตเชพเชคเชพ เชฐเชจเชเชพเชเชฎ เชเชจเซเชตเชพเชฏเชฐเซเชจเชฎเซเชจเซเช เช
เชจเซ เชคเซเชจเชพ เชตเชฐเซเชเชจเชจเชพ เชเชงเชพเชฐเซ เชคเซเช เช
เชฒเช เชนเซเช เชถเชเซ เชเซ.
เชฌเซเชเชพ เชถเชฌเซเชฆเซเชฎเชพเช เชเชนเซเช เชคเซ, เชฐเชจเชเชพเชเชฎ เชฌเชฆเชฒเชตเชพเชจเชพ เชชเชฐเชฟเชฃเชพเชฎเซ, เชเชจเซเชเซเชจเชฐ เชชเชพเชธเซ เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธเชจเชพ เช
เชฒเช เชธเซเชเชจเซ เชเชเซเชธเซเชธ เชนเซเช เชถเชเซ เชเซ, เชเซเชจเซ เชคเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ เช
เชฅเชตเชพ เชจ เชชเชฃ เชเชฐเซ เชถเชเซ เชเซ. เชฎเซเชเชพเชญเชพเชเชจเชพ เชฐเชจเชเชพเชเชฎเซเชธเชจเซ เชเชชเชฏเซเช เชฅเชพเชฏ เชเซ
เชชเซเชฐเซเชซเชพเชเชฒ docker/default
Kubernetes 1.11 เชฅเซ เชจเชพเชชเชธเชเชฆ เชเชฐเชตเชพเชฎเชพเช เชเชตเซเชฏเซเช เชเซ, เชคเซเชฅเซ เชคเซเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชจเซเช เชเชพเชณเซ.
เชฎเชพเชฐเชพ เชฎเชคเซ, เชชเซเชฐเซเชซเชพเชเชฒ runtime/default
เชเซ เชนเซเชคเซ เชฎเชพเชเซ เชคเซ เชฌเชจเชพเชตเชตเชพเชฎเชพเช เชเชตเซเชฏเซเช เชนเชคเซเช เชคเซเชจเชพ เชฎเชพเชเซ เชธเชเชชเซเชฐเซเชฃ เชฐเซเชคเซ เช
เชจเซเชเซเชณ เชเซ: เชเชฆเซเชถ เชเชฒเชพเชตเชตเชพ เชธเชพเชฅเซ เชธเชเชเชณเชพเชฏเซเชฒเชพ เชเซเชเชฎเซเชฅเซ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชเชจเซเช เชฐเชเซเชทเชฃ เชเชฐเชตเซเช docker run
เชคเซเชฎเชจเซ เชเชพเชฐ เชชเชฐ. เชเซ เชเซ, เชเซเชฏเชพเชฐเซ เชเซเชฌเชฐเชจเซเชเซเชธ เชเซเชฒเชธเซเชเชฐเซ เชชเชฐ เชเชพเชฒเชคเซ เชตเซเชฏเชตเชธเชพเชฏเชฟเช เชเชชเซเชฒเชฟเชเซเชถเชจเซเชจเซ เชตเชพเชค เชเชตเซ เชเซ, เชคเซเชฏเชพเชฐเซ เชนเซเช เชเชตเซ เชฆเชฒเซเชฒ เชเชฐเชตเชพเชจเซ เชนเชฟเชเชฎเชค เชเชฐเซเชถ เชเซ เชเชตเซ เชชเซเชฐเซเชซเชพเชเชฒ เชเซเชฌ เชเซเชฒเซเชฒเซ เชเซ เช
เชจเซ เชตเชฟเชเชพเชธเชเชฐเซเชคเชพเชเช เชคเซเชฎเชจเซ เชเชชเซเชฒเชฟเชเซเชถเชจเซ (เช
เชฅเชตเชพ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเชพ เชชเซเชฐเชเชพเชฐเซ) เชฎเชพเชเซ เชชเซเชฐเซเชซเชพเชเชฒเซเชธ เชฌเชจเชพเชตเชตเชพ เชชเชฐ เชงเซเชฏเชพเชจ เชเซเชจเซเชฆเซเชฐเชฟเชค เชเชฐเชตเซเช เชเซเชเช.
เชเซเชช # 3: เชเซเชเซเชเชธ เชเชชเซเชฒเชฟเชเซเชถเชจเซ เชฎเชพเชเซ seccomp เชชเซเชฐเซเชซเชพเชเชฒเซเชธ เชฌเชจเชพเชตเซ. เชเซ เช เชถเชเซเชฏ เชจ เชนเซเชฏ เชคเซ, เชเชชเซเชฒเชฟเชเซเชถเชจ เชชเซเชฐเชเชพเชฐเซ เชฎเชพเชเซ เชชเซเชฐเซเชซเชพเชเชฒเซเชธ เชฌเชจเชพเชตเซ, เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชเช เช เชฆเซเชฏเชคเชจ เชชเซเชฐเซเชซเชพเชเชฒ เชฌเชจเชพเชตเซ เชเซเชฎเชพเช เชเซเชฒเชพเชเช เชเชชเซเชฒเชฟเชเซเชถเชจเชจเชพ เชคเชฎเชพเชฎ เชตเซเชฌ API เชถเชพเชฎเซเชฒ เชนเซเชฏ. เชฎเชพเชคเซเชฐ เชเซเชฒเซเชฒเชพ เชเชชเชพเชฏ เชคเชฐเซเชเซ เชฐเชจเชเชพเชเชฎ/เชกเชฟเชซเซเชฒเซเชเชจเซ เชเชชเชฏเซเช เชเชฐเซ.
เชญเชตเชฟเชทเซเชฏเชจเซ เชชเซเชธเซเชเซเชธเชฎเชพเช, เชนเซเช SecDevOps-เชชเซเชฐเซเชฐเชฟเชค seccomp เชชเซเชฐเซเชซเชพเชเชฒเซเชธ เชเซเชตเซ เชฐเซเชคเซ เชฌเชจเชพเชตเชตเซ, เชคเซเชฎเชจเซ เชธเซเชตเชเชพเชฒเชฟเชค เชเชฐเชตเชพ เช เชจเซ เชชเชพเชเชชเชฒเชพเชเชจเซเชธเชฎเชพเช เชคเซเชจเซเช เชชเชฐเซเชเซเชทเชฃ เชเซเชตเซ เชฐเซเชคเซ เชเชฐเชตเซเช เชคเซ เชเชตเชฐเซ เชฒเชเชถ. เชฌเซเชเชพ เชถเชฌเซเชฆเซเชฎเชพเช เชเชนเซเช เชคเซ, เชคเชฎเชพเชฐเซ เชชเชพเชธเซ เชเชชเซเชฒเชฟเชเซเชถเชจ-เชตเชฟเชถเชฟเชทเซเช เชชเซเชฐเซเชซเชพเชเชฒเซเชธเชฎเชพเช เช เชชเชเซเชฐเซเชก เชจ เชฅเชตเชพเชจเซเช เชเซเช เชฌเชนเชพเชจเซเช เชจเชฅเซ.
4. เช เชฎเชฐเซเชฏเชพเชฆเชฟเชค เช เชตเชฟเชเชฒเซเชช เชจเชฅเซ.
เชจเชพ PodSecurityPolicy
, เชเซ เชคเซเชจเซ เชเซเชฒเชธเซเชเชฐเชฎเชพเช เชธเชเซเชทเชฎ เชเชฐเชถเซ, เชฌเชงเชพ เชชเซเชกเซเชธ เชเซ เชเซเชจเชพ เชฎเชพเชเซ seccomp เชชเซเชฐเซเชซเชพเชเชฒ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชจเชฅเซ เชคเซเชฎเชพเช เชเชพเชฎ เชเชฐเชถเซ. seccomp=unconfined
.
เช เชฎเซเชกเชฎเชพเช เชเชพเชฎ เชเชฐเชตเชพเชจเซ เช เชฐเซเชฅ เช เชเซ เชเซ เชเชจเซเชธเซเชฏเซเชฒเซเชถเชจเชจเซ เชเช เชธเชเชชเซเชฐเซเชฃ เชธเซเชคเชฐ เชเซเชตเชพเช เชเชฏเซ เชเซ เชเซ เชเซเชฒเชธเซเชเชฐเชจเซ เชธเซเชฐเชเซเชทเชฟเชค เชเชฐเซ เชเซ. เชธเซเชฐเชเซเชทเชพ เชจเชฟเชทเซเชฃเชพเชคเซ เชฆเซเชตเชพเชฐเชพ เช เช เชญเชฟเชเชฎเชจเซ เชญเชฒเชพเชฎเชฃ เชเชฐเชตเชพเชฎเชพเช เชเชตเชคเซ เชจเชฅเซ.
เชเซเชช # 4: เชเซเชฒเชธเซเชเชฐเชฎเชพเช เชเซเช เชเชจเซเชเซเชจเชฐ เช
เชเชฆเชฐ เชเชพเชฒเชคเซเช เชนเซเชตเซเช เชเซเชเช เชจเชนเซเช seccomp=unconfined
, เชเชพเชธ เชเชฐเซเชจเซ เชเชคเซเชชเชพเชฆเชจ เชตเชพเชคเชพเชตเชฐเชฃเชฎเชพเช.
5. "เชเชกเชฟเช เชฎเซเชก"
เช เชฌเชฟเชเชฆเซ เชเซเชฌเชฐเชจเซเชเซเชธ เชฎเชพเชเซ เช เชจเชจเซเชฏ เชจเชฅเซ, เชชเชฐเชเชคเซ เชคเซเชฎ เชเชคเชพเช เชคเซ "เชถเชฐเซ เชเชฐเชคเชพ เชชเชนเซเชฒเชพ เชเชพเชฃเชตเชพ เชเซเชตเซ เชฌเชพเชฌเชคเซ" เชถเซเชฐเซเชฃเซเชฎเชพเช เชเชตเซ เชเซ.
เชเซเชฎ เชคเซเชฎ เชฅเชพเชฏ เชเซ เชคเซเชฎ, seccomp เชชเซเชฐเซเชซเชพเชเชฒเซเชธ เชฌเชจเชพเชตเชตเซ เชนเชเชฎเซเชถเชพ เชชเชกเชเชพเชฐเชเชจเช เชฐเชนเซ เชเซ เช เชจเซ เชเซเชฐเชพเชฏเชฒ เช เชจเซ เชเชฐเชฐ เชชเชฐ เชเซเชฌ เชเชงเชพเชฐ เชฐเชพเชเซ เชเซ. เชนเชเซเชเชค เช เชเซ เชเซ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเช เชชเชพเชธเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ "เชกเซเชฐเซเชช" เชเชฐเชตเชพเชจเซเช เชเซเชเชฎ เชฒเซเชงเชพ เชตเชฟเชจเชพ เชเชคเซเชชเชพเชฆเชจ เชตเชพเชคเชพเชตเชฐเชฃเชฎเชพเช เชคเซเชจเซเช เชชเชฐเซเชเซเชทเชฃ เชเชฐเชตเชพเชจเซ เชคเช เชจเชฅเซ.
Linux เชเชฐเซเชจเชฒ 4.14 เชจเชพ เชชเซเชฐเชเชพเชถเชจ เชชเชเซ, เชชเซเชฐเซเชซเชพเชเชฒเชจเชพ เชญเชพเชเซเชจเซ เชเชกเชฟเช เชฎเซเชกเชฎเชพเช เชเชฒเชพเชตเชตเชพเชจเซเช เชถเชเซเชฏ เชฌเชจเซเชฏเซเช, syslog เชฎเชพเช เชคเชฎเชพเชฎ เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธ เชตเชฟเชถเซเชจเซ เชฎเชพเชนเชฟเชคเซ เชฐเซเชเซเชฐเซเชก เชเชฐเชตเซ, เชชเชฐเชเชคเซ เชคเซเชฎเชจเซ เช
เชตเชฐเซเชงเชฟเชค เชเชฐเซเชฏเชพ เชตเชฟเชจเชพ. เชคเชฎเซ เชชเชฐเชฟเชฎเชพเชฃเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เช เชฎเซเชกเชจเซ เชธเชเซเชฐเชฟเชฏ เชเชฐเซ เชถเชเซ เชเซ SCMT_ACT_LOG
:
SCMP_ACT_LOG: seccomp เชธเชฟเชธเซเชเชฎ เชเซเชฒ เชเชฐเชตเชพ เชฎเชพเชเซเชจเชพ เชฅเซเชฐเซเชกเชจเซ เช เชธเชฐ เชเชฐเชถเซ เชจเชนเซเช เชเซ เชคเซ เชซเชฟเชฒเซเชเชฐเชฎเชพเช เชเซเชเชชเชฃ เชจเชฟเชฏเชฎ เชธเชพเชฅเซ เชฎเซเชณ เชเชพเชคเซเช เชจเชฅเซ, เชชเชฐเชเชคเซ เชธเชฟเชธเซเชเชฎ เชเซเชฒ เชตเชฟเชถเซเชจเซ เชฎเชพเชนเชฟเชคเซ เชฒเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ.
เช เชธเซเชตเชฟเชงเชพเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เช เชนเซเช เชเช เชฒเชพเชเซเชทเชฃเชฟเช เชตเซเชฏเซเชนเชฐเชเชจเชพ เชเซ:
- เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ เชเชฐเซเชฐเซ เชเซ.
- เชคเชฎเซ เชเชพเชฃเซ เชเซ เชคเซ เชธเชฟเชธเซเชเชฎเชฎเชพเชเชฅเซ เชเซเชฒเซเชธเชจเซ เช เชตเชฐเซเชงเชฟเชค เชเชฐเซ เชเชชเชฏเซเชเซ เชฅเชถเซ เชจเชนเซเช.
- เชฒเซเชเชฎเชพเช เช เชจเซเชฏ เชคเชฎเชพเชฎ เชเซเชฒเซเชธ เชตเชฟเชถเซเชจเซ เชฎเชพเชนเชฟเชคเซ เชฐเซเชเซเชฐเซเชก เชเชฐเซ.
เชเช เชธเชฐเชณ เชเชฆเชพเชนเชฐเชฃ เชเชจเชพ เชเซเชตเซเช เชฒเชพเชเซ เชเซ:
{
"defaultAction": "SCMP_ACT_LOG",
"architectures": [
"SCMP_ARCH_X86_64",
"SCMP_ARCH_X86",
"SCMP_ARCH_X32"
],
"syscalls": [
{
"names": [
"arch_prctl",
"sched_yield",
"futex",
"write",
"mmap",
"exit_group",
"madvise",
"rt_sigprocmask",
"getpid",
"gettid",
"tgkill",
"rt_sigaction",
"read",
"getpgrp"
],
"action": "SCMP_ACT_ALLOW"
},
{
"names": [
"add_key",
"keyctl",
"ptrace"
],
"action": "SCMP_ACT_ERRNO"
}
]
}
(
เชชเชฐเชเชคเซ เชฏเชพเชฆ เชฐเชพเชเซ เชเซ เชคเชฎเชพเชฐเซ เชเชตเชพ เชฌเชงเชพ เชเซเชฒเซเชธเชจเซ เช
เชตเชฐเซเชงเชฟเชค เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ เชเซเชจเซ เชคเชฎเซ เชเชชเชฏเซเช เชเชฐเชถเซ เชจเชนเซเช เช
เชจเซ เชคเซ เชเซเชฒเชธเซเชเชฐเชจเซ เชธเชเชญเชตเชฟเชค เชฐเซเชคเซ เชจเซเชเชธเชพเชจ เชชเชนเซเชเชเชพเชกเซ เชถเชเซ เชเซ. เชฏเชพเชฆเซ เชคเซเชฏเชพเชฐ เชเชฐเชตเชพ เชฎเชพเชเซเชจเซ เชเช เชธเชพเชฐเซ เชเชงเชพเชฐ เชธเชคเซเชคเชพเชตเชพเชฐ เชเซ
เชเซ เชเซ, เชคเซเชฏเชพเช เชเช เชเซเช เชเซ. เชเซเชเซ SCMT_ACT_LOG
2017 เชจเชพ เช
เชเชคเชฅเซ เชฒเชฟเชจเชเซเชธ เชเชฐเซเชจเชฒ เชฆเซเชตเชพเชฐเชพ เชธเชฎเชฐเซเชฅเชฟเชค, เชคเซ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช เชคเชพเชเซเชคเชฐเชฎเชพเช เช เชเซเชฌเชฐเชจเซเชเซเชธ เชเชเซเชธเชฟเชธเซเชเชฎเชฎเชพเช เชชเซเชฐเชตเซเชถเซเชฏเซเช. เชคเซเชฅเซ, เช เชชเชฆเซเชงเชคเชฟเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชคเชฎเชพเชฐเซ Linux เชเชฐเซเชจเชฒ 4.14 เช
เชจเซ runC เชตเชฐเซเชเชจเชจเซ เชเชฐเซเชฐ เชชเชกเชถเซ
เชเซเชช # 5: เชเชคเซเชชเชพเชฆเชจเชฎเชพเช เชชเชฐเซเชเซเชทเชฃ เชฎเชพเชเซ เชเชกเชฟเช เชฎเซเชก เชชเซเชฐเซเชซเชพเชเชฒ เชฌเซเชฒเซเช เชเชจเซเชก เชตเซเชนเชพเชเช เชฒเชฟเชธเซเชเชจเซ เชเซเชกเซเชจเซ เชฌเชจเชพเชตเซ เชถเชเชพเชฏ เชเซ เช เชจเซ เชคเชฎเชพเชฎ เช เชชเชตเชพเชฆเซเชจเซ เชฒเซเช เชเชฐเซ เชถเชเชพเชฏ เชเซ.
6. เชตเซเชนเชพเชเชเชฒเชฟเชธเซเชเชจเซ เชเชชเชฏเซเช เชเชฐเซ
เชตเซเชนเชพเชเชเชฒเชฟเชธเซเชเชฟเชเช เชฎเชพเชเซ เชตเชงเชพเชฐเชพเชจเชพ เชชเซเชฐเชฏเชคเซเชจเซเชจเซ เชเชฐเซเชฐ เชเซ เชเชพเชฐเชฃ เชเซ เชคเชฎเชพเชฐเซ เชฆเชฐเซเช เชเซเชฒเชจเซ เชเชณเชเชตเซ เชชเชกเชถเซ เชเซเชจเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ เชเชฐเซเชฐ เชชเชกเซ เชถเชเซ เชเซ, เชชเชฐเชเชคเซ เช เช เชญเชฟเชเชฎ เชธเซเชฐเชเซเชทเชพเชจเซ เชฎเซเชเชพ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช เชธเซเชงเชพเชฐเซ เชเซ:
เชตเซเชนเชพเชเชเชฒเชฟเชธเซเช เช เชญเชฟเชเชฎเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชจเซ เชเซเชฌ เชญเชฒเชพเชฎเชฃ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ เชเชพเชฐเชฃ เชเซ เชคเซ เชธเชฐเชณ เช เชจเซ เชตเชงเซ เชตเชฟเชถเซเชตเชธเชจเซเชฏ เชเซ. เชเซเชฏเชพเชฐเซ เชชเชฃ เชธเชเชญเชตเชฟเชค เชเซเชเชฎเซ เชธเชฟเชธเซเชเชฎ เชเซเชฒ (เช เชฅเชตเชพ เชเซ เชคเซ เชฌเซเชฒเซเชเชฒเชฟเชธเซเชเชฎเชพเช เชนเซเชฏ เชคเซ เชเชคเชฐเชจเชพเช เชซเซเชฒเซเช/เชตเชฟเชเชฒเซเชช) เชเชฎเซเชฐเชตเชพเชฎเชพเช เชเชตเซ เชคเซเชฏเชพเชฐเซ เชฌเซเชฒเซเชเชฒเชฟเชธเซเชเชจเซ เช เชชเชกเซเช เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชชเชกเชถเซ. เชตเชงเซเชฎเชพเช, เชชเชฐเชฟเชฎเชพเชฃเชจเซ เชฐเชเซเชเชคเชจเซ เชคเซเชจเชพ เชธเชพเชฐเชจเซ เชฌเชฆเชฒเซเชฏเชพ เชตเชฟเชจเชพ เชฌเชฆเชฒเชตเชพเชจเซเช เช เชจเซ เชคเซเชฏเชพเชเชฅเซ เชฌเซเชฒเซเชเชฒเชฟเชธเซเชเชจเชพ เชชเซเชฐเชคเชฟเชฌเชเชงเซเชจเซ เชฌเชพเชฏเชชเชพเชธ เชเชฐเชตเซเช เชเชฃเซเชตเชพเชฐ เชถเชเซเชฏ เชเซ.
เชเซ เชเชชเซเชฒเซเชเซเชถเชจ เชฎเชพเชเซ, เชฎเซเช เชเช เชเชพเชธ เชธเชพเชงเชจ เชตเชฟเชเชธเชพเชตเซเชฏเซเช เชเซ เชเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชธเชพเชฅเซ เชเซ เช เชจเซ เชเชเซเชเซเชเซเชฏเซเชถเชจ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชเชฐเชตเชพเชฎเชพเช เชเชตเซเชฒ เชคเชฎเชพเชฎ เชเซเชฒเซเชธ เชเชเชคเซเชฐเชฟเชค เชเชฐเซ เชเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชจเซเชเซเชจเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชฎเชพเชเซ:
package main
import "fmt"
func main() {
fmt.Println("test")
}
... เชเชพเชฒเซ เชฒเซเชจเซเช เชเชฐเซเช gosystract
เชคเซเชฅเซ
go install https://github.com/pjbgf/gosystract
gosystract --template='{{- range . }}{{printf ""%s",n" .Name}}{{- end}}' application-path
... เช เชจเซ เช เชฎเชจเซ เชจเซเชเซเชจเซเช เชชเชฐเชฟเชฃเชพเชฎ เชฎเชณเซ เชเซ:
"sched_yield",
"futex",
"write",
"mmap",
"exit_group",
"madvise",
"rt_sigprocmask",
"getpid",
"gettid",
"tgkill",
"rt_sigaction",
"read",
"getpgrp",
"arch_prctl",
เชนเชฎเชฃเชพเช เชฎเชพเชเซ, เช เชฎเชพเชคเซเชฐ เชเช เชเชฆเชพเชนเชฐเชฃ เชเซโเชเซเชฒเซเชธ เชตเชฟเชถเซ เชตเชงเซ เชตเชฟเชเชคเซ เช เชจเซเชธเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ.
เชเซเชช # 6: เชซเชเซเชค เชคเซ เช เชเซเชฒเซเชธเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซเชจเซ เชคเชฎเชจเซ เชเชฐเซเชเชฐ เชเชฐเซเชฐ เชนเซเชฏ เช เชจเซ เช เชจเซเชฏ เชคเชฎเชพเชฎเชจเซ เช เชตเชฐเซเชงเชฟเชค เชเชฐเซ.
7. เชฏเซเชเซเชฏ เชชเชพเชฏเซ เชจเชพเชเซ (เช เชฅเชตเชพ เช เชจเชชเซเชเซเชทเชฟเชค เชตเชฐเซเชคเชจ เชฎเชพเชเซ เชคเซเชฏเชพเชฐเซ เชเชฐเซ)
เชเชฐเซเชจเชฒ เชคเชฎเซ เชคเซเชฎเชพเช เชถเซเช เชฒเชเซ เชเซ เชคเซเชจเชพ เชชเชฐ เชงเซเชฏเชพเชจ เชเชชเซเชฏเชพ เชตเชฟเชจเชพ เชฐเซเชชเชฐเซเชเชพเชจเซ เชฒเชพเชเซ เชเชฐเชถเซ. เชญเชฒเซ เชคเซ เชคเชฎเชจเซ เชเซ เชเซเชเช เชคเซ เชฌเชฐเชพเชฌเชฐ เชจ เชนเซเชฏ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชเซ เชคเชฎเซ เชเซเชตเชพ เชเซเชฒเซเชธเชจเซ เชเชเซเชธเซเชธเชจเซ เช
เชตเชฐเซเชงเชฟเชค เชเชฐเซ เชเซ exit
เช
เชฅเชตเชพ exit_group
, เชเชจเซเชเซเชจเชฐ เชฏเซเชเซเชฏ เชฐเซเชคเซ เชฌเชเชง เชเชฐเซ เชถเชเชถเซ เชจเชนเซเช เช
เชจเซ เชเช เชธเชฐเชณ เชเชฆเซเชถ เชชเชฃ echo hi
เชเชตเชพ เชเชฟเชธเซเชธเชพเชเชฎเชพเช, เชเชชเชฏเซเชเชฟเชคเชพ เชฌเชเชพเชตเชฎเชพเช เชเชตเซ เชถเชเซ เชเซ strace
- เชคเซ เชฌเชคเชพเชตเชถเซ เชเซ เชธเชฎเชธเซเชฏเชพ เชถเซเช เชนเซเช เชถเชเซ เชเซ:
sudo strace -c -p 9331
เชเชพเชคเชฐเซ เชเชฐเซ เชเซ เชฐเซเชชเชฐเซเชเชพเช เช เชคเชฎเชพเชฎ เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธ เชงเชฐเชพเชตเซ เชเซ เชเซเชจเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ เชฐเชจเชเชพเชเชฎ เชชเชฐ เชเชฐเซเชฐ เชนเซเชฏ เชเซ.
เชเซเชช # 7: เชตเชฟเชเชค เชชเชฐ เชงเซเชฏเชพเชจ เชเชชเซ เช เชจเซ เชเชพเชคเชฐเซ เชเชฐเซ เชเซ เชคเชฎเชพเชฎ เชเชฐเซเชฐเซ เชธเชฟเชธเซเชเชฎ เชเซเชฒเซเชธ เชตเซเชนเชพเชเชเชฒเชฟเชธเซเชเซเชก เชเซ.
เช SecDevOps เชจเซ เชญเชพเชตเชจเชพเชฎเชพเช Kubernetes เชฎเชพเช seccomp เชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพ เชชเชฐเชจเชพ เชฒเซเชเซเชจเซ เชถเซเชฐเซเชฃเซเชจเชพ เชชเซเชฐเชฅเชฎ เชญเชพเชเชจเซ เชธเชฎเชพเชชเซเชค เชเชฐเซ เชเซ. เชจเซเชเซเชจเชพ เชญเชพเชเซเชฎเชพเช เชเชชเชฃเซ เช เชถเชพ เชฎเชพเชเซ เชฎเชนเชคเซเชตเชชเซเชฐเซเชฃ เชเซ เช เชจเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพเชจเซ เชเซเชตเซ เชฐเซเชคเซ เชธเซเชตเชเชพเชฒเชฟเชค เชเชฐเชตเซ เชคเซ เชตเชฟเชถเซ เชตเชพเชค เชเชฐเซเชถเซเช.
เช เชจเซเชตเชพเชฆเช เชคเชฐเชซเชฅเซ เชชเซเชเชธ
เช เชฎเชพเชฐเชพ เชฌเซเชฒเซเช เชชเชฐ เชชเชฃ เชตเชพเชเชเซ:
- ยซ
เชกเซเชเชฐ เชเชจเซเชเซเชจเชฐ เชฎเชพเชเซ เชธเซเชฐเชเซเชทเชพ ยป; - ยซ
33+ เชเซเชฌเชฐเชจเซเชเซเชธ เชธเซเชฐเชเซเชทเชพ เชธเชพเชงเชจเซ ยป; - ยซ
เชกเซเชเชฐ เช เชจเซ เชเซเชฌเชฐเชจเซเชเซเชธ เชธเซเชฐเชเซเชทเชพเชจเซ เชฎเชพเชเช เชเชฐเชคเชพ เชตเชพเชคเชพเชตเชฐเชฃเชฎเชพเช ยป; - ยซ
เชเซเชฌเชฐเชจเซเชเซเชธ เชธเซเชฐเชเซเชทเชพ เชฎเชพเชเซ 9 เชถเซเชฐเซเชทเซเช เชชเซเชฐเชฏเชพเชธเซ ยป.
เชธเซเชฐเซเชธ: www.habr.com