Event ID 4625 AUDIT_FAILURE 과 WINDOWS 자동 계정 잠금 해제

WINDOWS EVENT ID 4625 가 발생하는 원인과, 윈도우 계정 자동 잠김 설정을 해제하는 방법

EVENT ID 4625

이벤트 로그에 보면 가끔 이런 이벤트를 볼 수 있다.

Security-Auditing: 4625: AUDIT_FAILURE 계정을 로그온하지 못했습니다. 주체: 보안 ID: S-1-0-0 계정 이름: - 계정 도메인: - 로그온 ID: 0x0 로그온 유형: 3 로그온을 실패한 계정: 보안 ID: S-1-0-0 계정 이름: ------ 계정 도메인: - 오류 정보: 오류 이유: 알 수 없는 사용자 이름 또는 잘못된 암호를 사용했습니다. 상태: 0xC000006D 하위 상태: 0xC000006A 프로세스 정보: 호출자 프로세스 ID: 0x0 호출자 프로세스 이름: - 네트워크 정보: 워크스테이션 이름: ------ 원본 네트워크 주소: ---.---.---.--- 원본 포트: ----- 인증 세부 정보: 로그온 프로세스: NtLmSsp 인증 패키지: NTLM 전송된 서비스: - 패키지 이름(NTLM 전용): - 키 길이: 0 이 이벤트는 로그온 요청이 실패할 때 액세스하려고 했던 컴퓨터에 생성됩니다. 주체 필드는 로그온을 요청한 로컬 시스템의 계정을 나타냅니다. 이것은 주로 서버 서비스와 같은 서비스 또는 Winlogon.exe나 Services.exe와 같은 로컬 프로세스입니다. 로그온 유형 필드는 요청한 로그온의 유형을 나타냅니다. 가장 일반적인 유형은 2(대화식)와 3(네트워크)입니다. 프로세스 정보 필드는 시스템에서 로그온을 요청한 계정과 프로세스를 나타냅니다. 네트워크 정보 필드는 원격 로그온 요청이 시작된 위치를 나타냅니다. 워크스테이션 이름은 항상 사용할 수 있는 것은 아니며 어떤 경우에는 비워 둘 수도 있습니다. 인증 정보 필드는 이 특정 로그온 요청에 대한 자세한 정보를 제공합니다. - 전송된 서비스는 이 로그온 요청과 관련된 중간 서비스를 나타냅니다. - 패키지 이름은 NTLM 프로토콜 간에 사용된 하위 프로토콜을 나타냅니다. - 키 길이는 생성된 세션 키의 길이를 나타냅니다. 이 값은 요청된 세션 키가 없으면 0이 됩니다.

뭐, 이래저래 복잡하게 써 놨지만, 한마디로, 왠 이상한 놈이 들이대고 있으니 조심해라 라는 뜻 이다. 발생하는 이유는 여러가지가 있겠으나, 그 근본적인 원인은 누군가 내 윈도우 PC에 로그온 하면서 잘못된 ID과 비밀번호를 입력한 경우 이다.

잘못된 접근 시도 주체의 파악

당연히 먼저 해야 하는 일은, 잘못된 계정 정보로 계속해서 들이대는 막되먹은 불청객이 도대체 누구인가 파악해서 그 놈을 혼내주는 일이다. 이벤트 메시지를 잘 보면 로그온 유형워크스테이션 이름, 그리고 원본 네트워크 주소를 보면 이 불청객의 정체를 알아낼 수 있다.

로그온 유형

로그온 유형이 2로 표시되어 있으면, 누군가가 내 PC를 켜고, 직접 키보드와 마우스를 움직여 로그온 ID와 비번을 입력하고 있다는 얘기다. 로그온 유형이 3으로 표시되어 있으면, 누군가가 네트워크를 타고 들어와 원격 데스크톱이나 공유자원(공유폴더나 공유프린터 등)에 접근하려 하고 있다는 얘기다. 대부분의 경우 로그온 유형은 3으로 보일 것이다.

워크스테이션 이름과 원본 네트워크 주소

네트워크를 타고 들어온 경우, 접근을 시도한 PC의 호스트 명과 IP가 기록 된다. 들어 와도 되는 놈이라면, 제대로 된 접속정보를 알려주면 이 메시지는 더 이상 발생하지 않는다. 물론, 들어오면 안되는 놈일 경우, 메시지를 무시하고 방화벽 등의 점검을 통해 들이대지 못하게 해야 할 것이다.

윈도우 계정 자동 잠금

그런데 가끔, 특히 이기종간 접속 환경 (타 OS에서 SAMBA를 이용해 SMB에 접근할 때)에서, 처음 계정정보를 잘못 입력해서 수정 할 경우, 제대로 된 정보를 주었음에도, 처음의 틀린 정보를 가지고 계속 접근을 시도하는 경우가 있다. 그리고 이런 일이 발생하면, 얼마 지나지 않아 접속이 막혀버리는 경우가 생긴다. 클라이언트에서는 환장할 노릇이다. ID/비번을 맞게 쳐도 접속이 되질 않으니..

윈도우 입장에서는, 잘못된 접속정보를 가지고 들이대는 이놈이 착한놈인지 나쁜놈인지 알 방법이 없다. 그래서 일정 횟수 이상 잘못된 비밀번호를 가지고 접근을 시도할 경우, 해당 계정을 일시적으로 비활성화 시켜 버린다. 계정이 잠겨버린 결과, 제대로 된 접속정보를 가져 오더라도 접속이 불가능하게 된다. 서버에서 확인 해 보면, 해당 계정이 잠겨져 있다고 표시 될 것이다.

GUI와 Powershell을 통해 윈도우 로컬 계정상태 확인
윈도우 로컬 계정상태 확인, GUI와 Powershell

일반적인 상황에서는, 보통 10여분을 기다리고 나면 잠겼던 계정이 다시 풀린다. 하지만, 제대로 된 접속정보를 준 상태에서도 뭔가 꼬인 클라이언트가 잘못된 접속정보를 가지고 접근을 시도하는 중이라면, 클라이언트를 내렸다가 올리는 것 외에는 방법이 없게 된다. 그리고 이번에는 오타가 안나게.. 한.자.한.자.정.성.들.여 ID와 비번을 입력해 주면 상황이 종료 될 것이다. (하지만 또 오타가 나면? )

하.지.만 클라이언트를 끌 수 없는 상황이라면? 혹은, 방화벽도 없고 뭣도 없어서 실제로 나쁜놈이 두드려 대고 있지만, 이걸 쓰지 않으면 북한이 핵 미사일을 발사해 버릴 가능성이 너무 높기에 내 몸과 세계 평화를 지키기 위해 일단 이대로 이걸 꼭 써야만 한다면? 계정 자동 잠금을 해제 시켜 주어야 한다.(왠만하면 하지 말란 소리다)

계정 자동 잠금 해제 방법

  1. WINDOWS + R 을 눌러, 실행창을 띄우고, gpedit.msc 를 입력한 후 엔터를 쳐서, '로컬 그룹 정책 편집기'를 실행한다.
  2. 로컬정책 - 컴퓨터구성 - 보안설정 - 계정 잠금 정책으로 이동한다.
    윈도우 로컬 그룹 정책 편집기
    로컬 그룹 정책 편집기


  3. 계정 잠금 임계값을 0으로 수정한다.
    계정 잠금 임계값 속성
    계정 잠금 임계값 속성
  4. 임계값 0의 의미는, 계정 잠금 기능을 사용하지 않겠다는 의미이다. 관련된 다른 값들도 자동을 변경 된다.
  5. 관련 설정 값 변경 확인

이렇게 변경하고 나면, 당장 계정이 잠겨서 사용을 못하는 상황을 방지할 수 있다. 일단 뭔가 조치를 취하는 동안의 시간을 번 것이다. 아무리 나쁜놈이 들이 댄다 하더라도, 해당 계정은 잠기지 않는다. 언제까지? 뚫고 들어와서 다 털어갈 때 까지!