05. PHP 실행 경로 제한

설명
웹 서비스 진단 시에도 있는 path traversal 취약점 관련 설정이다.
http://localhost/home.html 이라는 경로가 존재할 경우, 상위 디렉터리로 이동하여
웹 서버 내부 경로를 벗어나 시스템 파일을 확인 할 수 있는 취약점이다.
apache를 예시로 들 경우 위 home.html 파일은 (시스템 자체에서)
/var/www/html/home.html
이라는 경로에 존재한다.
html이라는 디렉터리가 웹 서버측에선 최상위(root) 디렉터리여야 하지만 해당 설정이 되어있지 않으면
../../../../ 같은 상위 디렉터리로 이동하는 명령어를 통해 시스템 내부 파일로 접근이 가능하다.
ex. http://localhost/../../../../../../../etc/passwd
* 말이 또 길어지네; 이러려고 만든 페이지가 아니니까 설명은 여기까지만 쓰는걸로
기본 값

open_basedir 설정이 주석처리되어 있음 -> 취약
딴소리
모의해킹 프로젝트를 진행하다보면 의외로 한두번씩 나오는 취약점

php config에서는 ; 가 주석으로 처리되는데
2024 가이드에선 조치방법 과정에서 주석을 안지웠다.
조치 방법
01. php Config 파일 접근

02. 웹 서버의 루트 디렉터리를 설정 값에 추가

* 경로를 여러개 지정 할 시 :(콜론) 사용,
ex. /var/www:/tmp -> /var/www 과 /tmp 지정
No comments to display
No comments to display