Southcode Desk
워크플로

네트워크 스캔 도구: 첫 스캔부터 포트를 닫을 때까지

03
시나리오

홈랩 주간 점검

공유기 한 대, 파일 서버, 오래된 테스트용 기기 몇 대가 있다고 해 봐요. 대부분의 네트워크 스캔 도구는 목록을 출력하고 끝나요. 여기서는 그 목록을 내가 보관한 기준선과 비교하고, 달라진 부분마다 keep, close, check 중 하나로 결정해요. 내 주소만 대상이에요.

01

프로젝트 폴더 열기

expected-ports.csv, scans/, reports/가 있는 폴더를 작업 폴더로 고르고, Plan only에서 계획을 읽어요.

02

스캔 실행하기

Ask first로 바꾸고 명령을 승인해요. Shell이 내 범위의 192.168.1.x에 스캐너를 실행하는데, 이것이 'scan network for devices' 작업이에요.

03

기준선과 비교하기

에이전트가 두 파일을 읽고 새 행, 사라진 행, close로 표시된 행을 나열해요.

04

닫고 다시 스캔하기

서비스를 직접 닫거나 승인한 diff로 닫고, 다시 스캔해서 포트가 사라졌을 때만 보고서를 수락해요.

에이전트가 비교 기준으로 쓰는 기준선 파일

expected-ports.csv
# expected-ports.csv: baseline for the home network
# host,port,protocol,service,owner,action
192.168.1.1,53,udp,dns forwarder,me,keep
192.168.1.1,80,tcp,router admin page,me,check
192.168.1.1,443,tcp,router admin page,me,keep
192.168.1.20,445,tcp,file sharing,me,keep
192.168.1.20,3389,tcp,remote desktop,me,close
192.168.1.35,22,tcp,ssh,me,check
192.168.1.35,80,tcp,old test web server,me,close

주석은 #으로 시작해요. 각 행에는 호스트, 포트, 프로토콜, 서비스, 소유자와 함께 내가 정한 조치가 적혀 있고, 에이전트는 새 스캔을 이 행들과 비교해요.

내 연구실에서 하는 포트 스캔 모범 사례

기기 한 대로 부드럽게 시작하기

작게 시작하세요. 전체 범위가 아니라 내가 소유한 기기 한 대부터 시작해요. 먼저 Plan only를 요청해서 에이전트가 Shell로 실행할 명령을 나열하게 해요. 스캔하는 동안 기기가 느려지거나, 재부팅되거나, 응답을 멈추면 스캔을 멈추고 주소 목록을 좁혀서 Ask first 모드로 다시 실행하세요. 오래된 프린터, 카메라, 컨트롤러는 탐색에 안 좋게 반응할 수 있으니 조용한 시간대를 고르세요. 스캔이 끝나면 저장된 파일을 열어서 그 안의 모든 주소가 내 것인지 확인해요.

무엇이든 바꾸기 전에 이상한 발견 사항 검토하기

이상하게 열린 포트는 세 가지를 확인해 볼 만해요. netstat -ano의 프로세스 ID, tasklist의 프로그램 이름, 그리고 기준선에 그 포트가 적혀 있는지예요. 앞의 두 가지는 앱이 실행 중인 PC의 포트에만 쓸 수 있고, 거기서는 에이전트가 답을 행 옆에 적어 줘요. 다른 기기라면 그 기기에서 직접 프로세스를 확인해요. Cron은 주간 비교를 자동화할 수 있고, 포트 스캔 결과를 차트로 시각화하려면 에이전트가 내 스프레드시트 프로그램에서 쓸 CSV 파일로 써 줄 수 있어요. 변경할 때마다 다시 스캔하세요. 설명되지 않는 것은 check로 남겨 둬요.

Windows용 Southcode Desk

오늘 첫 기준선을 만들어 보세요

Southcode Desk 다운로드 ↗