[윈도우/서비스 관리] FTP 디렉토리 접근권한 설정 (W-26)

FTP 디렉토리 접근권한 설정

 

취약점 개요

■ 위험도
- 상

■ 점검 목적
- FTP 서비스 디렉토리의 접근 권한을 적절하게 설정하여 의도치 않은 정보 유출 등의 보안 사고를 방지하고자 함

■ 보안 위협
- FTP 홈디렉토리에 과도한 권한이 부여된 경우 임의의 사용자가 쓰기, 수정이 가능하여 정보 유출, 파일 위변조 등의 위험이 존재

점검 및 조치 방법

■ 판단 기준
- 양호 : FTP 홈 디렉토리에 Everyone 권한이 없는 경우
- 취약 : FTP 홈 디렉토리에 Everyone 권한이 있는 경우

■ 조치 방법
- FTP 홈 디렉토리에서 Everyone 권한 삭제, 각 사용자에게 적절한 권한 부여

● Windows NT(IIS4.0), 2000(IIS 5.0), 2003(IIS 6.0)
Step 1) 인터넷 정보 서비스(IIS) 관리 > FTP 사이트 > 해당 FTP 사이트 > 속성 > [홈 디렉토리] 탭에서 FTP 홈 디렉토리 확인


Step 2) 탐색기 > 홈 디렉토리 > 속성 > [보안] 탭에서 Everyone 권한 제거


● Windows 2008(IIS 7.0), 2012(IIS 8.0)
Step 1) 제어판 > 관리도구 > 인터넷 정보 서비스(IIS) 관리 > 해당 웹사이트 > 마우스 우클릭 > FTP 게시 추가
Step 2) 이후 진행 과정에서 권한 부여 화면의 엑세스 허용 대상 선정 시 [지정한 사용자] 만 선택


■ 스크립트

echo. W-26 START
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo [ W-26 "FTP 디렉터리 접근권한 설정" ]                                       						>>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
net start | find "FTP" > nul
IF ERRORLEVEL 1 GOTO DIRACL-FTP-DISABLE
IF NOT ERRORLEVEL 1 GOTO DIRACL-FTP-ENABLE
:DIRACL-FTP-DISABLE
echo FTP Service Disabled                                                                       >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
GOTO W-38 END
:DIRACL-FTP-ENABLE
:: reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSFtpsvc\Parameters\Virtual Roots" /s    >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt 2>&1
echo ■ C:\Inetpub\ftproot 접근 권한 ■                                                         		>>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
icacls "C:\Inetpub\ftproot" | find /v "파일을 처리했으며"                                            >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo ■ 입력 받은 ftp 디렉터리 접근 권한 ■                                                      		>>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo 입력 받은 ftp 디렉터리 : "%ftpR% "                                                          	>>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
icacls "%ftpR% " | find /v "파일을 처리했으며"                                                       >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
:W-26 END
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo W-26 END                                                                                   >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo ======================================================================================     >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt
echo.                                                                                           >>	[RESULT]_%COMPUTERNAME%_WINSVR.txt

댓글

Designed by JB FACTORY