본문 바로가기
  • 오늘처럼

seccomp3

Kubernetes 와 Seccomp Kubernetes 에서의 seccomp docker 와 마찬가지로, kubernetes 또한 어플리케이션이 모든 시스템 함수에 대한 권한을 갖는 걸 막기 위하여, seccomp 필터를 사용할 수 있다. 여기서는 docker 와 비교되는 kubernetes 의 seccomp 사용에 대해 확인해본다. 먼저 docker 가 default seccomp profile 을 이용하여 시스템 함수를 필터링 하는 결과를 확인해 보기 위해 다음의 오픈소스를 이용한다. genuinetools/amicontained 컨테이너에 대한 인스펙션 툴로 아래와 같이 사용할 수 있다. # docker run --rm -it r.j3ss.co/amicontained amicontained Container Runtime: not-f.. 2022. 9. 23.
Docker container 와 seccomp 도커는 Linux 기반 기술을 사용하여, 어플리케이션에 대해 격리된 공간을 만들어주는 가상화 서비스다. 여기에는 cgroup, chroot 등의 기반 기술들이 포함되는데, 추가로 보안을 위하여 커널에서 제공하는 보안 컴퓨팅 모드(seccomp) 또한 사용할 될 수 있다. seccomp filter Docker 에는 호스트 커널에 SECCOMP가 활성화되어 있는 경우 컨테이너를 생성할 때마다 기본적으로 사용하는 내장 SECCOMP 필터가 있다. 이를 확인하기 위해 간단한 도커 컨테이너를 구동해본다. root@localhost~$ docker run -it --rm ubuntu /bin/sh # # date -s '23 OCT 2022 13:46:00' date: cannot set date: Operati.. 2022. 9. 23.
strace 를 통한 syscall 확인과 seccomp Kernel 과 system call 리눅스 운영체제에서 핵심이되는 프로그램은 커널(kernel) 이다. 커널은 하드웨어 장치와 어플리케이션(소프트웨어) 사이에서 동작하며 두 계층 사이의 인터페이스를 담당한다. 그 외에도 메모리 관리, I/O 장치 관리 등 하드웨어의 모든 주요 기능을 제어하면서 효율적인 자원 관리를 수행하게 된다. 운영체제의 자원인 메모리 영역은 크게 2가지 공간인, Kernel space(커널 공간) 와 User space(사용자 공간) 로 구분할 수 있다. 사용자가 작성한 프로그램이나 어플리케이션들은 이 사용자 공간의 메모리를 사용하게 되고, 커널 자체의 코드에 대한 부분이나 커널 확장 등의 경우 커널 공간의 메모리를 사용한다. 또한 이 커널 공간에는 시스템 내부적인 제어를 위해 시.. 2022. 9. 22.