신생도메인이 생기면, 해커들(?)은 어떻게 알고 bot 공격시도를 하는 것일까?
새로운 도메인을 생성하고, aws lamp를 사용하여 사이트를 구축하고, 방문자 로그를 남기고 확인을 하다보니, 수많은 시도가 발생하고 있음을 알게되었고, 차단하는 시스템을 구축하였습니다.

crontab에 자동 차단 시스템을 등록하여, 5분단위로 차단하고 있는데, 내가 자고 있는 시간에도 열심히 차단해주고 있어요. 대부분의 공격시도가 짧게는 몇초에서 길게는 3분까지.. 그안에 종료가 됩니다.

그래서 사실 ip 차단이 의미가 있나 싶기도 해요. 워드프레스도 아닌데, bot에 의한 헛점 찾기하는 모습이 많이 보입니다.

AWS Lightsail의 LAMP 인스턴스를 사용 중이라, 기본적인 보안 설정은 어느 정도 되어 있어요. 하지만 “엄청나게 많이 유입되니까….. 해커들의 자동화된 스캐닝 봇(Bot)들이 이미 선생님의 도메인을 타겟 리스트에 올렸다는 뜻입니다.
신생 도메인이 등록되자마자 해커들이 이를 알아채고 공격을 시도하는 것은 단순히 ‘우연’이 아닙니다.
이들은 자동화된 도구와 공개된 데이터 스트림을 활용해 전 세계의 도메인 등록 현황을 실시간으로 감시한다.
해커들이 신생 도메인을 식별하는 주요 경로는 다음과 같다.
1. 투명성 로그 (Certificate Transparency Logs)
가장 빠르고 확실한 방법입니다. 오늘날 대부분의 사이트는 HTTPS 보안 인증서(SSL)를 사용합니다. 인증서 발급 기관(CA)은 보안을 위해 인증서 발급 내역을 **’투명성 로그’**라는 공개 저장소에 의무적으로 기록해야 합니다.
- 공격 방식: 해커는 이 로그를 모니터링하는 스크립트를 짜서, 새로운 도메인에 대한 인증서가 발급되는 순간 해당 도메인의 주소를 즉시 파악합니다.
2. WHOIS 데이터 및 존 파일 (Zone Files)
도메인이 등록되면 해당 정보는 WHOIS 데이터베이스에 기록됩니다. 또한, .com, .net 같은 최상위 도메인(TLD) 관리소는 매일 업데이트되는 **존 파일(Zone File)**을 배포하거나 판매합니다.
- 공격 방식: 해커는 이 파일을 입수하여 어제는 없었지만 오늘은 새로 생긴 도메인 목록을 추출합니다.
3. DNS 쿼리 모니터링 및 무차별 대입 (Brute-forcing)
해커들은 특정 단어 조합(예: test, dev, admin, api)을 사용해 존재하지 않는 서브도메인을 계속 찔러봅니다.
- 공격 방식: 만약 새 도메인이 생성되고 하위 주소가 만들어지면, DNS 응답을 통해 해당 주소의 존재 여부를 확인할 수 있습니다.
4. 수동적 수집 (Passive Reconnaissance)
검색 엔진 스파이더(Googlebot 등)가 새로운 사이트를 인덱싱하기 전에, 해커들은 이미 인터넷 트래픽의 흐름을 분석하는 노드를 운영하거나 공개된 보안 피드(Security Feed)를 통해 정보를 얻습니다.
해커들이 신생 도메인을 노리는 이유
신생 도메인은 해커들에게 매우 매력적인 먹잇감입니다.
- 설정 미비: 서버 설정 초기 단계라 보안 패치가 안 되어 있거나,
admin/admin같은 기본 비밀번호를 사용 중일 확률이 높습니다. - 디버깅 모드: 개발자가 테스트를 위해 오류 메시지를 상세하게 출력하도록 설정해 두는 경우가 많아, 시스템 구조를 파악하기 쉽습니다.
- 보안 솔루션 부재: 방화벽이나 WAF(웹 방화벽) 등이 아직 구축되지 않았을 가능성이 큽니다.
어떻게 방어해야 할까요?
도메인을 등록하고 서비스를 올리기 전에 다음 사항을 점검하는 것이 좋습니다.
화이트리스트 기반 접근: 개발 중에는 특정 IP에서만 접속 가능하도록 ACL(Access Control List)을 설정하세요
초기 설정 주의: 서버를 외부로 공개하기 전에 모든 기본 비밀번호를 변경하고 불필요한 포트를 닫으세요.
보안 인증서 발급 시점: 실제 서비스 준비가 완료된 후 인증서를 발급 받는 것이 노출 시간을 줄이는 방법입니다.
Litesail 환경에서 특히 주의 깊게 보셔야 할 부분과 추가적인 대응 방안 정리
1. 로그에 남는 “404 Not Found”의 정체
접속 로그(access.log)를 보시면 아마 다음과 같은 경로로 접속 시도가 많을 것입니다.
/wp-admin(워드프레스 관리자 페이지 시도)/.env(환경 설정 파일 탈취 시도)/phpMyAdmin또는/admin(데이터베이스 관리 도구 탐색)
이것은 특정인을 노린 공격이라기보다, 전 세계의 모든 신규 IP와 도메인을 대상으로 “혹시 문 열린 곳 없나?” 하고 찔러보는 자동화 봇들입니다.
2. AWS Lightsail 기본 보안 외에 꼭 해야 할 설정
AWS가 네트워크 포트(80, 443 등)는 막아주지만, 애플리케이션 내부 보안은 직접 챙기셔야 합니다.
- SSH 포트 변경 또는 제한: 기본 22번 포트 대신 다른 번호를 사용하거나, 가급적 AWS 콘솔의 “브라우저 기반 SSH”만 사용하고 포트는 닫아두는 것이 안전합니다.
- Fail2Ban 설치: 짧은 시간 내에 여러 번 접속 실패를 일으키는 IP를 서버 레벨에서 자동으로 차단해 줍니다. LAMP 환경에서 매우 효과적입니다.
.htaccess활용: 관리자 페이지나 민감한 디렉토리에 대해 IP 화이트리스트를 설정하세요. 선생님의 사무실이나 집 IP만 허용하는 방식입니다.
3. 더 강력한 방패: Cloudflare (클라우드플레어) 도입
현재 접속량이 너무 많아 서버 자원(CPU, Memory)에 부담이 된다면, 무료로 사용할 수 있는 Cloudflare를 도메인 앞에 두는 것을 강력 추천합니다.
- 효과: 실제 서버 IP를 숨겨줍니다. 해커는 Cloudflare의 IP만 보게 되며, 악의적인 봇 트래픽을 클라우드플레어 단에서 미리 걸러줍니다.
- WAF 기능: 기본적인 SQL 인젝션이나 크로스 사이트 스크립팅(XSS) 공격을 차단하는 방화벽 기능을 무료 플랜에서도 일부 제공합니다.
요약하자면
현재 들어오는 트래픽은 대부분 “무작위 스캔”일 가능성이 높으므로 너무 당황하실 필요는 없습니다. 다만, 불필요한 관리자 페이지 노출만 막아도 실제 해킹 사고의 90% 이상을 예방할 수 있습니다.
연관글



