- 조만간 수정예정입니다. 전자금융기반시설 2020-1호 진단기준에 allowoverride none인 경우도 양호로 진단되므로, none인 경우 굳이 설정하실 필요 없으신 것으로 확인됩니다.
주요정보통신기반시설 U-37(상)
3. 서비스 관리 > 3.19 Apache 상위 디렉토리 접근 금지
- 점검내용 : ".."와 같은 문자 사용 등으로 상위 경로로 이동이 가능한지 여부 점검
환경 설정
- AWS Linux에 httpd를 설치하여 구동
- Server version : Apache/2.2.34 (Unix)
- DocumentRoot "/var/www/html"
- AccessFileName .htaccess
- 테스트 경로 : "/var/www/html/test2/test3"
- AllowOverride 값을 "None", "AuthConfig" 두가지로 설정 변경
- 각 디렉토리마다 .htaccess 및 .auth 파일 생성(유지)
- 매 설정 변경시마다 service httpd restart로 데몬 재구동
- 매 설정 변경시마다 크롬 종료 후 새 시크릿탭으로 접속
테스트 -1)
<Directory />~</Directory> 옵션과 <Directory "/var/www/html">~</Directory> 옵션이 설정되어 있는 경우
결과 -1)
해당 디렉토리에 설정값이 들어있는 경우, <Directory />의 설정값을 따라가지 않는다.
테스트 -2)
<Directory />~</Directory> 옵션만 있고, 하위 설정이 없는 경우
최상위 결과가 None 이고 하위 디렉토리 옵션을 주석처리 하였을 때는 인증창이 뜨지 않았으나, 최상위를 AuthConfig로 바꾼 결과 모든 페이지에서 인증창이 나타났다. 이 때, 각 디렉토리별 .htaccess 파일이 존재하고 있어서 나온 결과일 수도 있어서 "/var/www/html/test2/.htaccess" 파일의 이름을 바꾸고 접속해본 결과 인증창이 떴고, "/var/www/html/.htaccess" 파일의 인증 계정/패스워드를 통해 인증이 되었다. 표에는 없지만 "/var/www/html/test2/test3/test3.html" 접속 시에는 "/var/www/html/test2/test3/.htaccess"의 정보로 로그인이 되었다.(해당 디렉토리 설정도 주석처리 되어있음)
Authconfig 인증모드 사용시 해당 디렉토리부터 최상위 디렉토리까지 .htaccess를 순서대로 검색하는 메커니즘에 따른 것으로 보인다.
결과 -2)
해당 디렉토리 설정 자체가 없는 경우 최상위 <Directory /> 설정을 따라가며, AuthConfig 사용시 인증파일은 해당 디렉토리부터 상위 디렉토리로 찾아가며 처음 찾게되는 인증정보를 따라간다.
테스트 -3)
httpd.conf 파일 내 <Directory>에 대한 아무 설정도 없는 경우
모든 <Directory> 옵션값을 주석처리하고 인증창 확인시, 인증창이 발생하는 것을 확인했고, 설정이 없는 경우 기본값으로 각 디렉토리의 ".htaccess" 파일을 확인하는 것 같아 해당 파일들의 이름을 바꾸고 테스트를 해보았다.
결과 -3)
httpd.conf 파일 내 <Directory> ~</Directory> 관련된 옵션 자체가 없는 경우 기본적으로 각 디렉토리부터 상위 디렉토리 까지의 httpd.conf 파일 내 "AccessFileName"(.htaccess) 으로 설정된 파일 유무를 확인하고 자동으로 적용한다.
전체 테스트 총평
- AllowOverride는 /etc/httpd/conf/httpd.conf 파일 내 <Directory>~</Directory> 설정에 따르며, 해당 디렉토리 및 하위 디렉토리들에 대해 접근통제를 수행한다.
- 해당 디렉토리에 설정이 존재하지 않는 경우, 상위 디렉토리의 AllowOverride값을 참조하며, <Directory> 옵션 자체가 없는 경우 기본값으로 httpd.conf 파일 내 "AccessFileName"(.htaccess) 으로 설정된 파일 유무를 확인하여 자동으로 적용한다.
- 상위 디렉토리에 AuthConfig 설정을 해두고, 하위 디렉토리에 None 설정을 하여도, 상위 디렉토리의 AllowOverride값을 참조하여 하위 경로 접근시에도 인증창이 나타나게 된다.
- 따라서 별도의 설정이 없는 경우 최상위 또는 중간 경로에 임의의 .htaccess파일을 삽입하는 경우 해당 페이지 및 하위 경로에 대하여 접근이 불가하게 되는 경우가 발생할 우려가 존재하는 것으로 판단된다.
- 현재 주요정보통신기반시설 점검 기준 항목은 <상위 디렉토리 접근 금지>이나, 해당 진단 방법 및 조치방안은 <해당 디렉토리 및 하위 디렉토리에 대한 접근통제>이므로 항목에 대한 적절성은 재검토해 보아야 할 것으로 판단된다.
'[ IT ] > 기반시설 취약점 진단' 카테고리의 다른 글
주요정보통신기반시설 U-54 Session Timeout 설정, SunOS 5.10 csh 세션 타임아웃 설정(set autologout) (0) | 2021.07.12 |
---|---|
주요정보통신기반시설 U-25 NFS 접근 통제 (0) | 2021.03.08 |
주요정보통신기반시설 U-24 NFS 서비스 비활성화 (1) | 2021.03.08 |
HP-UX 서버(B.11.31.) /etc/default/security 값 변경 테스트 (0) | 2020.04.21 |
주요정보통신기반시설 U-46 [HP-UX] 패스워드 최소 길이 설정 (9자리 가능한지, LongPass11i3 설치 및 사용방법) (0) | 2020.04.16 |