URLScan을 통한 악성 URL 분석은(는) 무엇을 하나요?
개요
URLScan.io는 의심스러운 URL을 스캔하고 분석하는 무료 서비스입니다. 격리된 환경에서 웹 페이지의 스크린샷, DOM 콘텐츠, HTTP 트랜잭션, JavaScript 동작 및 네트워크 연결을 캡처합니다. 이 스킬은 분석가의 시스템을 위험에 노출시키지 않고 피싱 URL, 자격 증명 수집 페이지 및 악성 리디렉션을 조사하기 위해 URLScan의 웹 인터페이스와 API를 사용하는 방법을 다룹니다.
사용 시기
- URLScan으로 악성 URL 분석이 필요한 보안 인시던트를 조사할 때
- 이 도메인에 대한 탐지 규칙 또는 위협 헌팅 쿼리를 구축할 때
- SOC 분석가가 이 분석 유형에 대한 정형화된 절차가 필요할 때
- 관련 공격 기술에 대한 보안 모니터링 적용 범위를 검증할 때
전제 조건
- URLScan.io 계정 (무료 티어 사용 가능, 자동화를 위한 API 키 필요)
- requests 라이브러리가 포함된 Python 3.8+
- HTTP 프로토콜 및 웹 기술에 대한 이해
- 피싱 URL 패턴에 대한 친숙함
주요 개념
URLScan 기능
- 안전한 브라우징: 격리된 Chromium 인스턴스에서 URL 렌더링
- 스크린샷 캡처: 렌더링된 페이지의 시각적 스냅샷
- DOM 분석: JavaScript 실행 후 전체 HTML 콘텐츠
- 네트워크 로그: 페이지가 만든 모든 HTTP 요청 (HAR 형식)
- 인증서 분석: SSL/TLS 인증서 세부 정보
- 기술 탐지: 웹 프레임워크 및 라이브러리 식별
- IP/ASN 매핑: 인프라 정보
- 판정: 커뮤니티 및 자동 분류
피싱 URL 위험 신호
- 새로 등록된 도메인 (30일 미만)
- 무료 호스팅 서비스 (Wix, GitHub Pages, Firebase)
- 최종 목적지를 숨기는 URL 단축기
- 과도한 서브도메인 깊이 (login.microsoft.com.evil.com)
- 도메인이 아닌 서브도메인 또는 경로에 브랜드 이름 포함
- 비표준 포트
- Data URI 또는 base64 인코딩 콘텐츠
- 최소한의 HTML로 JavaScript가 많은 페이지
워크플로우
1단계: URLScan에 URL 제출
웹: https://urlscan.io 로 이동하여 의심스러운 URL 제출
API: POST https://urlscan.io/api/v1/scan/
헤더: API-Key: your-api-key
본문: {"url": "https://suspicious-url.com", "visibility": "private"}
2단계: 결과 분석
- 브랜드 사칭을 위해 스크린샷 검토
- 리디렉션 및 최종 목적지 URL 확인
- 자격 증명 입력 양식을 위해 DOM 검사
- 데이터 유출 엔드포인트를 위해 네트워크 요청 검토
- SSL 인증서 유효성 및 발급자 확인
3단계: IOC 추출
- 연결된 도메인 및 IP
- 리디렉션 체인의 URL
- 페이지 리소스의 SHA-256 해시
- JavaScript 파일 해시
4단계: 위협 인텔리전스와 교차 참조
scripts/process.py를 사용하여 URL 스캔을 자동화하고 IOC를 추출한 다음 VirusTotal, PhishTank 및 Google Safe Browsing과 교차 참조합니다.
도구 및 리소스
- URLScan.io: https://urlscan.io/
- URLScan API: https://urlscan.io/docs/api/
- VirusTotal URL Scanner: https://www.virustotal.com/
- PhishTank: https://phishtank.org/
- Google Safe Browsing: https://transparencyreport.google.com/safe-browsing/search
- Any.Run: https://any.run/ (대화형 샌드박스)
- Hybrid Analysis: https://www.hybrid-analysis.com/
검증
- API를 통해 의심스러운 URL을 성공적으로 스캔
- 스크린샷을 추출하고 브랜드 사칭 식별
- 전체 리디렉션 체인 문서화
- 스캔 결과에서 IOC 목록 생성
- 최소 2개의 위협 인텔리전스 소스와 결과 교차 참조