일반사항
- 점검내용 : 윈도우즈 최상위 관리자 계정인 Administrator의 계정명 변경 또는 보안을 고려한 비밀번호 설정 여부 점검
- 점검목적 : 위도우즈 기본 관리자 계정인 Administrator의 이름을 변경 또는 보안을 고려한, 잘 알려진 계정을 통한 악의적인 패스워드 추측 공격을 차단
- 보안위협
- 일반적으로 관리자 계정으로 잘 알려진 Administrator를 변경하지 않은 경우 악의적인 사용자의 패스워드 추측 공격을 통해 사용 권한 상승의 위험이 있으며, 관리자를 유인하여 침입자의 액세스를 허용하는 악성코드를 실행할 우려가 있음
- 윈도우즈 최상위 관리자 계정인 Administrator는 기본적으로 삭제하거나 잠글 수 없어 악의적인 사용자의 목표가 됨
- 참고 : 윈도우즈 서버는 Administrator 계정을 비활성화 할 수 있으나 안전 모드로 컴퓨터를 시작할 경우 본 계정은 자동으로 활성화 됨
- 점검대상 및 판단기준
- 대상 : Window NT, 2000, 2003, 2008, 2012, 2016, 2019
- 판단기준
- 양호 : Administrator Default 계정 이름을 변경하거나 강화된 비밀번호를 적용한 경우
- 취약 : Adminsitrator 계정 이름 변경 및 보안성이 있는 비밀번호 설정
- 점검 및 조치
- Window NT, 2000, 2003, 2008, 2012, 2016, 2019
- 시작 > 프로그램 > 제어판 > 관리도구 > 로컬 보안 정책 > 로컬 정책 > 보안옵션
- "계정 : Administrator 계정 이름 바꾸기"를 유추하기 어려운 계정 이름으로 변경
- Window NT, 2000, 2003, 2008, 2012, 2016, 2019
스크립트
@echo off
chcp 437 >nul 2>&1
:W_01
set YEAR=%date:~0,4%
set MONTH=%date:~5,2%
set DAY=%date:~8,2%
set OUTPUT_DIRECTORY=C:\INSPECT\%YEAR%_%MONTH%_%DAY%_INSPECTION\
set OUTPUT_FILE=%OUTPUT_DIRECTORY%INSPECTION_OUTPUT.txt
set DETAIL_FILE=%OUTPUT_DIRECTORY%W_01.txt
:: FILE EXISTENCE CHECK
if NOT EXIST %OUTPUT_DIRECTORY% (mkdir %OUTPUT_DIRECTORY%)
echo. >> %DETAIL_FILE%
echo :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: > %DETAIL_FILE%
echo :: >> %DETAIL_FILE%
echo :: [W-01] Administrator Name Check >> %DETAIL_FILE%
echo :: >> %DETAIL_FILE%
echo :: Check Administrator's Name is configured, >> %DETAIL_FILE%
echo :: Password is set >> %DETAIL_FILE%
echo :: >> %DETAIL_FILE%
echo :: PASS : Default Administrator name is changed or >> %DETAIL_FILE%
echo :: Strong Password is applied >> %DETAIL_FILE%
echo :: >> %DETAIL_FILE%
echo :: MADE By REDUCTO https://tutoreducto.tistory.com/ >> %DETAIL_FILE%
echo :: >> %DETAIL_FILE%
echo :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: >> %DETAIL_FILE%
echo. >> %DETAIL_FILE%
secedit /export /cfg %OUTPUT_DIRECTORY%secedit.txt >nul 2>&1
set vulcount=0
type %OUTPUT_DIRECTORY%secedit.txt | findstr /bic:"NewAdministratorName" > %OUTPUT_DIRECTORY%tmp_w_01.txt
for /f "tokens=1,2 delims==" %%a in (%OUTPUT_DIRECTORY%tmp_w_01.txt) do set conf=%%b
if %conf% EQU "Administrator" (set /A vulcount+=1)
echo Administrators Account Name is %conf% >> %DETAIL_FILE%
net user %conf% | find /i "Password required" > %OUTPUT_DIRECTORY%tmp_w_01.txt
for /f "tokens=1,3 delims= " %%a in (%OUTPUT_DIRECTORY%tmp_w_01.txt) do set conf=%%b
if %conf% NEQ Yes (set /A vulcount+=1)
echo Administrator PASSWORD Required? "%conf%" >> %DETAIL_FILE%
if %vulcount% EQU 2 (set result=W_01 = FAIL) else (set result=W_01 = PASS)
echo %result%
echo %result% >> %OUTPUT_FILE%
if EXIST %OUTPUT_DIRECTORY%tmp_w_01.txt (del %OUTPUT_DIRECTORY%tmp_w_01.txt)
if EXIST %OUTPUT_DIRECTORY%secedit.txt (del %OUTPUT_DIRECTORY%secedit.txt)
:FINISH
pause >nul 2>&1
파일의 검사결과는 C:\INPSECT아래 오늘날짜로 이루어진 폴더에 들어가 있다. secedit은 관리자 권한을 필요로 하니, "반드시" 관리자 권한으로 실행시켜주기를 바란다.
- INSPECT_OUTPUT.txt : W-01 항목의 PASS/FAIL여부가 들어있다. 다른 취약점 스크립트의 결과도 이곳에 기록된다.
- W_01.txt : 점검 결과인 Default Administrator의 계정명과 패스워드가 필요한지가 기록되어 있다.
첨언
Default Administrator의 계정명을 바꾸는것은 과연 안전한 것일까에 대한 물음의 대답은 "YES"이다. 당연한 이야기 처럼 들릴 수 있으니까 말이다. KISA지침에서는 계정명변경 OR 패스워드 설정이 되어있으면 위 항목에 PASS를 주었는데, 사실 얼만 안걸리니까 Administrator의 비밀번호랑 계정명 전부 바꾸어 두자
'정보보안-이론 > KISA주요정보통신기반시설 취약점가이드' 카테고리의 다른 글
[KISA 주요정보통신기반시설] W-05 해독 가능한 암호화를 사용하여 암호 저장 해제 (0) | 2022.02.26 |
---|---|
[KISA 주요정보통신기반시설] W-04 계정 잠금 임계값 설정 (0) | 2022.02.26 |
[KISA 주요정보통신기반시설] W-03 불필요 계정점검 (0) | 2022.02.26 |
[KISA 주요정보통신기반시설] W-02 Guest 계정 비활성화 여부 (0) | 2022.02.26 |
[KISA 주요정보통신기반시설] 취약점 분석 스크립트 올리기 (1) | 2022.02.26 |