오늘 끝나면
정찰
- ✓정찰의 핵심 문제를 한 문장으로 설명한다
- ✓오른쪽 실습에서 정찰이 어떻게 움직이는지 관찰한다
- ✓다음 강의와 이어지는 한계를 말할 수 있다
실습 미션
공격은 정보 수집부터 — OSINT·포트 스캔 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.
성공 조건
- □실습의 기본값을 먼저 관찰
- □입력값이나 모드를 한 번 이상 바꿔 결과 비교
- □왜 결과가 바뀌었는지 한 문장으로 설명
화이트해킹 · 03
정찰
먼저 본다
공격은 익스플로잇이 아니라 정보 수집부터 시작한다.
상대가 뭘 가졌는지 모르면 어디도 뚫지 못한다.
방어자가 같은 시야를 먼저 가지면 공격할 곳을 줄일 수 있다.
공격은 정보 수집부터
공격의 대부분은 정찰이다. 익스플로잇은 마지막 단계일 뿐이다.
정찰은 표적의 지도를 그리는 일이다. 어떤 서버가 살아 있는지, 어떤 서비스가 도는지, 어떤 버전을 쓰는지, 누가 관리하는지를 알아낸다.
이 지도가 없으면 어떤 공격도 헛손질이다.
정찰은 크게 둘로 나뉜다.
공개정보를 줍는 OSINT와 직접 두드려 보는 능동 스캔이다.
앞은 흔적이 안 남고 뒤는 남는다. 그래서 순서가 중요하다.
영화는 침투부터, 현실은 정찰이 9할이다
OSINT, 공개된 단서
OSINT는 공개된 정보만으로 표적을 조립하는 일이다. 침입이 아니라 줍는 것이다.
회사 홈페이지, 채용공고, 깃허브, 도메인 등록정보, 검색엔진 캐시에 이미 단서가 흩어져 있다.
채용공고의 “AWS · Spring · MySQL 경험자” 한 줄이 곧 기술 스택 지도가 된다.
서브도메인 하나, 유출된 이메일 형식 하나가 진입의 실마리가 된다.
방어 관점에서는 우리가 무심코 공개한 것이 공격자의 첫 장이 된다. 채용공고와 깃 커밋, 에러 페이지에서 내부 정보가 새는지 점검해야 한다.
포트 스캔, 어디가 열렸나
능동 스캔의 핵심은 포트 스캔이다. 호스트의 문, 즉 포트를 하나씩 두드려 응답을 본다.
포트는 셋 중 하나로 응답한다. 열림은 서비스가 살아 응답하는 것, 닫힘은 문은 있지만 안 받는 것, 필터됨은 방화벽이 응답 자체를 삼키는 것이다.
열린 포트는 공격자가 가장 반기는 칸이다. 살아 있는 서비스가 곧 진입점 후보이기 때문이다.
방화벽을 켜면 열림과 닫힘이 전부 필터됨으로 가려져 표적의 윤곽이 흐려진다. 이게 방어의 첫 수다.
아직 두드리기 전이다. 스캔하면 어떤 포트가 응답하는지 드러난다.
공격 표면이 넓을수록 위험
공격 표면은 외부에서 닿을 수 있는 모든 진입점의 합이다. 넓을수록 위험하다.
포트 하나하나, 서비스 하나하나, 안 쓰는 옛 페이지 하나하나가 다 표면이다.
공격자는 가장 약한 한 점만 찾으면 된다. 방어자는 모든 점을 다 지켜야 한다. 애초에 불공평한 싸움이다.
그래서 방어의 정석은 단순하다. 표면을 줄이는 것이다.
안 쓰는 포트는 닫고, 불필요한 서비스는 끄고, 공개정보는 최소화한다.
가장 안전한 포트는 처음부터 열려 있지 않은 포트다.
노릴 점 11개
노릴 점 2개
줄이기, 방어자의 정찰
정찰은 공격자만의 도구가 아니다. 방어자가 먼저 자기 자신을 스캔해야 한다.
공격자가 보는 지도를 내가 먼저 그리면 내가 모르던 열린 포트, 잊고 방치한 서버, 새는 정보가 드러난다.
이게 자산 인벤토리이자 표면 관리다.
핵심은 하나다. 공격은 보이는 것부터 시작하니, 안 보이게 만들면 시작 자체가 막힌다.
줄이고 닫고 가린 만큼 안전해진다.
Q. 포트 스캔으로 알 수 있는 것은? (관리자 비밀번호 · 열린 서비스 · 내부 직원 수 · 데이터 내용)
정답은 열린 서비스다.포트 스캔은 어떤 포트가 응답하는지, 즉 어떤 서비스가 살아 열려 있는지를 알려준다.
그게 곧 진입점 후보의 목록이다.
비밀번호와 데이터 내용은 그다음 단계의 일이다. 정찰은 어디를 노릴지 고르는 단계다.
| 줄이는 수 | 효과 |
|---|---|
| 안 쓰는 포트 닫기 | 응답이 사라진다 |
| 옛 서비스 끄기 | 표면이 한 칸 준다 |
| 공개정보 최소화 | OSINT 단서 차단 |
| 방화벽으로 가리기 | 필터됨 처리 |