sudo가 아닌 사용자를 사용하여 `Docker`의 읽기 전용 파일에 대한 루트 권한을 재정의하는 기능

sudo가 아닌 사용자를 사용하여 `Docker`의 읽기 전용 파일에 대한 루트 권한을 재정의하는 기능

몇 가지 실험을 하고 있어요루스트어바웃이상한 행동을 발견했습니다.

Docker 내에서 루트 사용자가 생성한 파일의 소유권을 루트 권한이 없는 다른 사용자로 덮어쓸 수 있었습니다.

이를 재현하는 단계는 다음과 같습니다.

$> docker run -dit ubuntu:16.04 bash
$> docker exec -it cont_id bash
$> apt update && apt install -y vim
$> useradd cp -m
$> vim /home/cp/hello.txt
  #  Write some text and save it

$> su cp 
$> cd ~/ && ls -latr;
  #  Will list hello.txt with user and group as root

$> vim hello.txt
  #  Write some text and try saving it normally which will fail.
  #  Try saving it with `:wq!`

그런데 보라, 그것은 저장되었고 파일이 속한 사용자와 그룹이 새로운 사용자로 변경되었습니다.

나는 이것에 대한 터미널 녹음을 만들고 동일한 내용을 게시했습니다.여기.

답변1

사실 이것은 이 사건과 관련이 없습니다 Docker. vim사용자가 폴더에 대한 전체 권한을 가지고 있다고 가정하면 파일이 새 파일로 바뀌기 때문에 이는 정상적인 동작입니다 . 사용자에게 전체 권한이 없는 폴더의 경우에도 마찬가지입니다.

관련 정보