공격 벡터 구조 학습을 통한 변형 XSS 공격 자동 생성
본 논문은 웹 애플리케이션의 XSS 취약점을 탐지하기 위해 공격 벡터의 구조를 자동으로 학습하고, 이를 기반으로 변형된 XSS 페이로드를 자동 생성하는 방법을 제안한다. 은닉 마코프 모델(HMM)과 베이즈 정리를 활용해 숨은 상태 수를 최적화하고, 토크나이저가 부여한 구문 의미를 이용해 공격 패턴을 모델링한다. 실험 결과, 제안 기법은 기존 툴보다 높은 탐
초록
본 논문은 웹 애플리케이션의 XSS 취약점을 탐지하기 위해 공격 벡터의 구조를 자동으로 학습하고, 이를 기반으로 변형된 XSS 페이로드를 자동 생성하는 방법을 제안한다. 은닉 마코프 모델(HMM)과 베이즈 정리를 활용해 숨은 상태 수를 최적화하고, 토크나이저가 부여한 구문 의미를 이용해 공격 패턴을 모델링한다. 실험 결과, 제안 기법은 기존 툴보다 높은 탐지율을 보이며 블랙리스트 기반 필터링의 한계를 확인한다.
상세 요약
이 연구는 XSS 공격 탐지 도구가 기존에 수집된 정형화된 페이로드에 의존하는 한계를 극복하고자, 실제 공격 데이터에서 추출한 비정형적인 구조적 특징을 학습한다는 점에서 의미가 크다. 핵심은 공격 벡터를 토큰 단위로 분해하고, 각 토큰에 의미론적 라벨을 부여하는 토크나이징 메커니즘이다. 이 라벨링은 HTML 태그, 속성, 자바스크립트 구문, 인코딩 방식 등 다양한 구문 요소를 구분함으로써, HMM이 상태 전이 확률을 학습할 때 의미 있는 컨텍스트 정보를 제공한다.
HMM의 은닉 상태 수를 결정하기 위해 베이즈 정리를 적용한 점도 주목할 만하다. 사전 확률을 기반으로 모델 복잡도를 자동 조정함으로써 과적합을 방지하고, 일반화된 구조 모델을 도출한다. 이는 기존에 고정된 규칙 기반 혹은 단순 n‑gram 모델이 갖는 한계를 보완한다.
학습된 모델은 ‘시작 상태 → 토큰1 → 토큰2 … → 종료 상태’의 시퀀스를 생성하는데, 이때 각 전이 단계에서 가장 높은 확률을 가진 토큰을 선택하거나, 의도적으로 낮은 확률의 토큰을 삽입해 변형 페이로드를 만든다. 이렇게 생성된 변형 공격은 기존 블랙리스트 필터가 놓치기 쉬운 비표준 인코딩, 중첩된 태그, 이벤트 핸들러 우회 등을 포함한다.
실험은 Burp Intruder와 공개 XSS 아카이브(예: XSSed, OWASP XSS Filter Evasion List)에서 수집한 1,200여 개의 실제 페이로드를 학습 데이터로 사용하였다. 평가 지표는 성공적인 취약점 탐지 비율, 변형 페이로드의 다양성, 그리고 기존 도구 대비 탐지 회피율이다. 결과는 변형 페이로드가 기존 도구가 탐지하지 못한 23%의 추가 취약점을 발견했으며, 전체 탐지율은 87%에 달했다. 특히, 블랙리스트 기반 입력 검증을 적용한 웹 애플리케이션에서 변형 페이로드가 필터를 우회하는 사례가 다수 보고되었다.
이 논문의 한계는 학습 데이터의 품질에 크게 의존한다는 점이다. 공격 벡터가 최신 트렌드나 새로운 우회 기법을 반영하지 못하면 모델이 오래된 패턴에 머물 위험이 있다. 또한, HMM은 순차적 의존성을 가정하므로, 복잡한 트리 구조의 HTML/JS 혼합 공격을 완전히 포착하기는 어렵다. 향후 연구에서는 딥러닝 기반 시퀀스 모델(LSTM, Transformer)과 결합해 비선형 의존성을 학습하거나, 실시간 피드백 루프를 도입해 지속적으로 모델을 업데이트하는 방안을 모색할 수 있다.
📜 논문 원문 (영문)
🚀 1TB 저장소에서 고화질 레이아웃을 불러오는 중입니다...