소개
이 챌린지에서 여러분은 회사 내 잠재적인 데이터 유출 사고를 조사하는 네트워크 보안 전문가 역할을 맡게 됩니다. 여러분의 임무는 Wireshark를 사용하여 네트워크 트래픽을 분석하고, 민감한 정보가 어떻게 유출되었는지 설명할 수 있는 평문(clear text) 형태의 사용자 자격 증명 전송 여부를 확인하는 것입니다.
이 챌린지에서는 최근 네트워크 통신이 담긴 패킷 캡처(PCAP) 파일을 검사하여 노출된 로그인 자격 증명을 찾아내야 합니다. 패킷 분석 기법을 적용하여 적절한 암호화 없이 전송되었을 가능성이 있는 사용자 이름과 비밀번호를 식별함으로써, 인증 데이터 처리에 있어 보안 프로토콜이 얼마나 중요한지 확인하게 됩니다.
노출된 로그인 자격 증명 찾기
회사에서 잠재적인 데이터 유출 사고가 감지되었습니다. 네트워크 보안 전문가로서 여러분은 최근 네트워크 트래픽을 분석하여 유출의 원인이 될 수 있는 평문 형태의 사용자 자격 증명 전송이 있었는지 확인해야 합니다.
작업
- 'user', 'pass', 'login'이라는 단어가 포함된 패킷을 찾기 위한 디스플레이 필터 생성
- 노출된 자격 증명을 식별하고 추출
- 발견된 자격 증명을 지정된 형식으로 문서화
요구 사항
Wireshark를 사용하여
/home/labex/project/network_analysis/company_traffic.pcap경로에 있는 패킷 캡처 파일을 엽니다.자격 증명 정보가 포함될 가능성이 있는 패킷을 보여주는 디스플레이 필터를 생성합니다.
필터는 패킷 내용에서 'user', 'pass' 또는 'login'이라는 단어를 검색해야 합니다.
필터가 정상 작동하는지 테스트한 후, 필터 바의 "+" 버튼을 클릭하여 필터를 저장합니다.
자격 증명을 찾으면
/home/labex/project/network_analysis/found_credentials.txt파일에 다음 형식으로 저장합니다.username: [found username] password: [found password]
예시
올바른 필터를 적용하면 Wireshark는 자격 증명 정보가 포함된 패킷만 표시해야 합니다. 자격 증명이 포함된 패킷은 패킷 목록에서 HTTP 또는 TCP로 나타날 수 있으므로, 프로토콜 열만 보지 말고 일치하는 패킷 내용을 확인하는 데 집중하세요.
No. Time Source Destination Protocol Length Info
1 0.000000 192.168.0.2 192.168.0.1 TCP 193 51234 -> 80 [PSH, ACK] Len=139
패킷 세부 정보를 검사하거나 스트림을 따라가면(Follow Stream) 평문으로 된 자격 증명 정보를 확인할 수 있습니다.
GET /login.php HTTP/1.1
content: username=admin&password=secret123
found_credentials.txt 파일은 다음과 같은 형태여야 합니다.
username: admin
password: secret123
힌트
- 터미널에서
wireshark명령어를 사용하여 Wireshark를 실행합니다. - 패킷 캡처 파일을 열려면 File > Open을 사용하고 파일 위치로 이동합니다.
- 디스플레이 필터 바는 Wireshark 창 상단에 있습니다.
- OR 논리를 사용하여 여러 용어를 검색하려면 파이프 기호(|)를 사용합니다.
- 일치하는 요청이 패킷 목록에서 TCP 패킷으로 나타날 수 있으므로, 프로토콜 열에만 의존하지 말고 패킷 내용을 검색하세요.
- Wireshark 필터는 기본적으로 대소문자를 구분합니다.
nano나gedit같은 텍스트 편집기를 사용하여 자격 증명 파일을 생성할 수 있습니다.
요약
이번 챌린지에서는 Wireshark를 사용하여 네트워크 트래픽을 분석하고 자격 증명 노출과 관련된 잠재적인 보안 취약점을 식별하는 방법을 배웠습니다. 작업 과정에서 회사 네트워크 트래픽의 PCAP 파일을 검사하여 사용자 자격 증명이 평문으로 전송된 사례를 찾아냈으며, 이는 감지된 데이터 유출 사고의 원인을 설명할 수 있는 근거가 되었습니다.
꼼꼼한 패킷 검사를 통해 암호화되지 않은 username=admin&password=secret123 데이터가 포함된 로그인 요청을 발견했습니다. Wireshark가 생성된 패킷을 어떻게 분석하느냐에 따라 패킷 목록에 HTTP 또는 TCP로 나타날 수 있으므로, 이번 실습을 통해 프로토콜 레이블에만 의존하지 않고 패킷 내용을 직접 검사하는 것이 얼마나 중요한지 다시 한번 확인했습니다. 또한 민감한 정보를 전송할 때 HTTPS와 같은 암호화된 프로토콜을 사용하는 것이 필수적임을 배웠습니다.


