인터넷은 24/7 거대한 인구조사야. 전문 엔진들 (Shodan, Censys, BinaryEdge, ZoomEye, 거기에 수천 개의 독립 botnet) 이 IPv4 공간 전체를, 포트 단위로 쓸어. 22 포트 열린 채로 fresh VPS 띄우면 SSH probe 가 몇 시간 이 아니라 몇 분 안에 와.
스캔이 실제로 어떻게 보이는지
| Surface | 최초 probe 까지 걸리는 시간 | 뭘 시도하는지 |
|---|---|---|
| fresh public IP 에 22번 (SSH) | 몇 초 ~ 몇 분 | root + 가장 흔한 비밀번호 1만 개 |
| host header check 없는 80/443 | 몇 분 | WordPress 경로, .env probe, 노출된 dashboard |
| 11434 (Ollama 기본) | 며칠 ~ 몇 주 | API 직접 호출해서 네 모델로 자기들 prompt 돌려 |
5432 (Postgres) + 기본 postgres 사용자 | 몇 시간 | 빈 비밀번호, "postgres/postgres" 시도 |
| 열린 S3 / MinIO 엔드포인트 | 몇 시간 ~ 며칠 | DNS 패턴으로 bucket enumeration 툴이 찾아내 |
"obscurity 로 보안" 이 거의 항상 실패하는 이유
- 랜덤 포트 — 스캐너는 65,535 포트 다 sweep 해. "SSH 를 2222 로 옮겼어" 는 발견을 몇 시간 늦출 뿐, 몇 주가 아니야.
- 긴 서브도메인 — Certificate Transparency 로그가 발급된 모든 TLS cert 를 공개해. Let's Encrypt cert 받는 순간 서브도메인 "비밀" 은 깨져.
- 맞히기 어려운 path — Google indexer 나 referer leak 으로 노출돼. 오타 난 path 가 적힌 로그 파일 하나면 충분.