Windows 방화벽 로그로 방화벽 활동을 추적하는 방법

게시 됨: 2022-01-29

인터넷 트래픽을 필터링하는 과정에서 모든 방화벽에는 방화벽이 다양한 유형의 트래픽을 처리하는 방법을 문서화하는 일종의 로깅 기능이 있습니다. 이러한 로그는 소스 및 대상 IP 주소, 포트 번호 및 프로토콜과 같은 중요한 정보를 제공할 수 있습니다. Windows 방화벽 로그 파일을 사용하여 방화벽에 의해 차단된 TCP 및 UDP 연결과 패킷을 모니터링할 수도 있습니다.

방화벽 로깅이 유용한 이유와 시기

  1. 새로 추가된 방화벽 규칙이 제대로 작동하는지 확인하거나 예상대로 작동하지 않는 경우 디버그합니다.
  2. Windows 방화벽이 응용 프로그램 실패의 원인인지 확인하려면 — 방화벽 로깅 기능을 사용하면 비활성화된 포트 개방, 동적 포트 개방을 확인하고 푸시 및 긴급 플래그를 사용하여 삭제된 패킷을 분석하고 전송 경로에서 삭제된 패킷을 분석할 수 있습니다.
  3. 악의적인 활동을 돕고 식별하려면 — 방화벽 로깅 기능을 사용하면 네트워크 내에서 악의적인 활동이 발생하고 있는지 여부를 확인할 수 있지만 활동의 출처를 추적하는 데 필요한 정보는 제공하지 않는다는 점을 기억해야 합니다.
  4. 한 IP 주소(또는 IP 주소 그룹)에서 방화벽 및/또는 기타 상위 프로필 시스템에 액세스하려는 시도가 반복적으로 실패한 것을 발견하면 해당 IP 공간에서 모든 연결을 삭제하는 규칙을 작성할 수 있습니다. IP 주소는 스푸핑되지 않습니다).
  5. 웹 서버와 같은 내부 서버에서 나가는 연결은 누군가 사용자 시스템을 사용하여 다른 네트워크에 있는 컴퓨터에 대한 공격을 시작하고 있음을 나타낼 수 있습니다.

로그 파일을 생성하는 방법

기본적으로 로그 파일은 비활성화되어 있으므로 로그 파일에 정보가 기록되지 않습니다. 로그 파일을 생성하려면 "Win key + R"을 눌러 실행 상자를 엽니다. "wf.msc"를 입력하고 Enter 키를 누릅니다. "고급 보안이 포함된 Windows 방화벽" 화면이 나타납니다. 화면 오른쪽에서 "속성"을 클릭합니다.

새 대화 상자가 나타납니다. 이제 "개인 프로필" 탭을 클릭하고 "로깅 섹션"에서 "사용자 지정"을 선택합니다.

새 창이 열리고 해당 화면에서 최대 로그 크기, 위치 및 삭제된 패킷만 기록할지, 성공적인 연결 또는 둘 다를 기록할지 여부를 선택합니다. 삭제된 패킷은 Windows 방화벽이 차단한 패킷입니다. 성공적인 연결은 들어오는 연결과 인터넷을 통해 이루어진 모든 연결을 모두 의미하지만 침입자가 컴퓨터에 성공적으로 연결했다는 의미는 아닙니다.

기본적으로 Windows 방화벽은 %SystemRoot%\System32\LogFiles\Firewall\Pfirewall.log 에 로그 항목을 기록하고 마지막 4MB의 데이터만 저장합니다. 대부분의 프로덕션 환경에서 이 로그는 지속적으로 하드 디스크에 기록되며 로그 파일의 크기 제한을 변경하면(장시간 동안 활동을 기록하기 위해) 성능에 영향을 줄 수 있습니다. 이러한 이유로 문제를 적극적으로 해결할 때만 로깅을 활성화하고 완료되면 즉시 로깅을 비활성화해야 합니다.

광고

그런 다음 "공개 프로필" 탭을 클릭하고 "비공개 프로필" 탭에서 수행한 것과 동일한 단계를 반복합니다. 이제 개인 및 공용 네트워크 연결 모두에 대한 로그를 설정했습니다. 로그 파일은 선택한 텍스트 편집기로 검사하거나 스프레드시트로 가져올 수 있는 W3C 확장 로그 형식(.log)으로 생성됩니다. 단일 로그 파일에는 수천 개의 텍스트 항목이 포함될 수 있으므로 메모장을 통해 읽는 경우 열 형식을 유지하려면 줄 바꿈을 비활성화하십시오. 스프레드시트에서 로그 파일을 보고 있는 경우 모든 필드는 더 쉽게 분석할 수 있도록 열에 논리적으로 표시됩니다.

기본 "고급 보안이 포함된 Windows 방화벽" 화면에서 "모니터링" 링크가 나타날 때까지 아래로 스크롤합니다. 세부 정보 창의 "로깅 설정"에서 "파일 이름" 옆에 있는 파일 경로를 클릭합니다. 로그가 메모장에서 열립니다.

Windows 방화벽 로그 해석

Windows 방화벽 보안 로그에는 두 개의 섹션이 있습니다. 헤더는 로그 버전 및 사용 가능한 필드에 대한 정적 설명 정보를 제공합니다. 로그의 본문은 방화벽을 통과하려는 트래픽의 결과로 입력되는 컴파일된 데이터입니다. 이것은 동적 목록이며 새 항목이 로그 맨 아래에 계속 나타납니다. 필드는 페이지에서 왼쪽에서 오른쪽으로 작성됩니다. (-)는 필드에 사용할 수 있는 항목이 없을 때 사용됩니다.

Microsoft Technet 설명서에 따르면 로그 파일의 헤더에는 다음이 포함됩니다.

버전 — 설치된 Windows 방화벽 보안 로그의 버전을 표시합니다.
소프트웨어 — 로그를 생성하는 소프트웨어의 이름을 표시합니다.
시간 — 로그의 모든 타임스탬프 정보가 현지 시간임을 나타냅니다.
필드 — 데이터가 있는 경우 보안 로그 항목에 사용할 수 있는 필드 목록을 표시합니다.

로그 파일의 본문에는 다음이 포함됩니다.

날짜 — 날짜 필드는 YYYY-MM-DD 형식으로 날짜를 식별합니다.
time — 현지 시간은 HH:MM:SS 형식을 사용하여 로그 파일에 표시됩니다. 시간은 24시간 형식으로 참조됩니다.
action — 방화벽이 트래픽을 처리할 때 특정 작업이 기록됩니다. 기록된 작업은 연결 끊기에 대한 DROP, 연결 열기에 대한 OPEN, 연결 닫기에 대한 CLOSE, 로컬 컴퓨터에 열린 인바운드 세션에 대한 OPEN-INBOUND 및 Windows 방화벽에서 처리되는 이벤트에 대한 INFO-EVENTS-LOST입니다. 보안 로그에 기록되지 않았습니다.
protocol — TCP, UDP 또는 ICMP와 같이 사용되는 프로토콜입니다.
src-ip — 소스 IP 주소(통신 설정을 시도하는 컴퓨터의 IP 주소)를 표시합니다.
dst-ip — 연결 시도의 대상 IP 주소를 표시합니다.
src-port — 연결을 시도한 발신 컴퓨터의 포트 번호입니다.
dst-port — 보내는 컴퓨터가 연결을 시도한 포트입니다.
size — 패킷 크기를 바이트 단위로 표시합니다.
tcpflags — TCP 헤더의 TCP 제어 플래그에 대한 정보입니다.
tcpsyn — 패킷의 TCP 시퀀스 번호를 표시합니다.
tcpack — 패킷의 TCP 승인 번호를 표시합니다.
tcpwin — 패킷의 TCP 창 크기를 바이트 단위로 표시합니다.
icmptype — ICMP 메시지에 대한 정보입니다.
icmpcode — ICMP 메시지에 대한 정보입니다.
정보 — 발생한 작업 유형에 따라 항목을 표시합니다.
경로 — 통신 방향을 표시합니다. 사용 가능한 옵션은 SEND, RECEIVE, FORWARD 및 UNKNOWN입니다.

광고

알다시피 로그 항목은 실제로 크고 각 이벤트와 연결된 최대 17개의 정보를 포함할 수 있습니다. 그러나 일반적인 분석에는 처음 8개의 정보만 중요합니다. 이제 세부 정보를 통해 악의적인 활동에 대한 정보를 분석하거나 애플리케이션 오류를 디버그할 수 있습니다.

악의적인 활동이 의심되는 경우 메모장에서 로그 파일을 열고 작업 필드에 DROP이 있는 모든 로그 항목을 필터링하고 대상 IP 주소가 255 이외의 숫자로 끝나는지 확인합니다. 이러한 항목이 많이 발견되면 다음을 수행하십시오. 패킷의 대상 IP 주소를 기록합니다. 문제 해결을 마치면 방화벽 로깅을 비활성화할 수 있습니다.

네트워크 문제를 해결하는 것은 때때로 매우 어려울 수 있으며 Windows 방화벽 문제를 해결할 때 권장되는 모범 사례는 기본 로그를 활성화하는 것입니다. Windows 방화벽 로그 파일은 네트워크의 전체 보안을 분석하는 데 유용하지 않지만 배후에서 일어나는 일을 모니터링하려는 경우 여전히 좋은 방법입니다.