열린 UDP 포트 찾기

NmapBeginner
지금 연습하기

소개

이 챌린지에서는 서버에서 실행 중일 수 있는 비정상적인 UDP 서비스를 스캔하여 잠재적인 보안 침해 사고를 조사합니다. 9995 번 포트에서 대기 중인 임의의 UDP 서버를 설정한 다음, Nmap 을 사용하여 로컬 호스트 (localhost) 의 9990 번부터 10000 번 포트 사이를 대상으로 UDP 스캔을 수행합니다. 스캔 결과는 ~/project/udp_scan_results.txt 파일에 저장됩니다.

여러분의 과제는 지정된 범위 내에서 열려 있는 UDP 포트 번호를 찾아 콘솔에 출력하는 것입니다. grep을 사용하여 Nmap 출력 결과를 분석하고, awksed를 활용해 포트 번호만 추출해야 합니다. 만약 열려 있는 UDP 포트가 없다면 "No open UDP port found"를 출력합니다. 또한 Nmap 스캔 결과 파일이 실제로 존재하며 예상된 내용이 포함되어 있는지 확인하는 검증 단계도 포함되어 있습니다.

이 콘텐츠는 챌린지 (Challenge) 로, 가이드에 따라 학습하는 실습 (Guided Lab) 과 달리 스스로 과제를 해결해야 합니다. 챌린지는 다소 난이도가 있을 수 있습니다. 해결이 어렵다면 Labby 와 상담하거나 모범 답안을 확인해 보세요. 통계에 따르면 이 챌린지는 초급 수준이며, 100%의 통과율과 학습자들로부터 99%의 긍정적인 평가를 받고 있습니다.

열린 UDP 포트 찾기

서버에서 비정상적인 UDP 서비스를 스캔하여 잠재적인 보안 위협을 조사하세요.

과제

  • Nmap 을 사용하여 로컬 호스트의 9990-10000 포트 범위를 대상으로 UDP 스캔을 수행하고, 그 결과를 ~/project/udp_scan_results.txt에 저장하세요.
  • 지정된 범위 내에서 열려 있는 UDP 포트 번호를 식별하고, 이를 OPEN_UDP_PORT라는 이름의 환경 변수에 저장하세요.

요구 사항

  1. UDP 스캔을 수행할 때 nmap 명령어를 사용하세요.
  2. Nmap 스캔 결과를 ~/project 디렉토리 내의 udp_scan_results.txt 파일로 저장하세요.
  3. Nmap 명령어는 반드시 로컬 호스트 (127.0.0.1) 의 9990 번부터 10000 번 포트까지 스캔해야 합니다.
  4. grep을 사용하여 udp_scan_results.txt 파일을 분석하고 열린 포트를 찾으세요.
  5. 발견된 가장 작은 열린 (open) 포트 번호를 OPEN_UDP_PORT 환경 변수에 저장하세요. 열린 포트가 없다면 변수 값을 "NONE"으로 설정하세요.

예시

1234 번 포트가 열려 있는 경우:

echo $OPEN_UDP_PORT
1234

지정된 범위 내에 열린 UDP 포트가 없는 경우:

echo $OPEN_UDP_PORT
NONE

힌트

  • UDP 스캔을 위해 Nmap 을 실행할 때는 sudo 권한이 필요함을 잊지 마세요.
  • UDP 스캔을 지정하려면 Nmap 의 -sU 옵션을 사용하세요.
  • Nmap 출력 파일에서 open이라는 단어가 포함된 줄을 찾으려면 grep을 사용하세요.
  • grep의 출력 결과에서 포트 번호만 뽑아내려면 awksed를 활용하세요.
  • 환경 변수를 설정할 때는 export OPEN_UDP_PORT=value 형식을 사용하세요.
✨ 솔루션 확인 및 연습

요약

이 챌린지의 목표는 로컬 호스트의 9990-10000 포트 범위 내에서 열려 있는 UDP 포트를 식별하여 비정상적인 UDP 서비스에 대한 보안 조사를 시뮬레이션하는 것이었습니다. 이 과정에는 Python 을 이용한 임의의 UDP 서버 설정, Nmap 의 -sU 옵션을 이용한 UDP 스캔 수행, 그리고 스캔 결과를 파일로 저장하는 작업이 포함되었습니다.

해당 과제를 해결하기 위해 grep을 사용하여 Nmap 출력 파일에서 열린 포트를 나타내는 줄을 찾고, awksed를 통해 포트 번호를 추출하는 분석 능력이 요구되었습니다. 최종적으로 식별된 포트 번호를 콘솔에 출력하거나, 범위 내에 열린 포트가 없을 경우 "No open UDP port found"를 출력하도록 구성했습니다. 이 챌린지는 UDP 스캔을 위한 Nmap 활용법과 스캔 결과 분석을 위한 텍스트 처리 도구 사용의 중요성을 강조합니다.