XSS 공격 (도둑): 해커는 건물의 창문이나 문에 숨겨진 함정 (악성 스크립트) 을 설치합니다. 방문자가 그 문을 열면, 함정이 작동해 방문자의 정보를 훔쳐가거나 건물을 망가뜨립니다.
검출 시스템 (경비원): 최근에는 **딥러닝 (AI)**이라는 똑똑한 경비원이 등장했습니다. 이 경비원은 들어오는 사람 (데이터) 을 보고 "저 사람은 도둑이야!"라고 잡아냅니다.
🧪 2. 기존 연구의 문제점: "가짜 탈출극"
연구자들은 "AI 경비원을 속일 수 있을까?"라고 궁금해하며, **강화학습 (RL)**이라는 기술을 써서 AI 도둑을 훈련시켰습니다.
기존 연구 (Chen et al., 2022): "우리의 AI 도둑은 90% 이상 성공적으로 경비원을 속이고 건물을 침입했다!"라고 발표했습니다.
이 논문의 발견 (저자들의 의문): "잠깐만요! 그 성공률이 진짜 도둑의 실력 때문일까요, 아니면 경비원의 시스템 결함 때문일까요?"
저자들은 기존 연구를 다시 해보면서 **세 가지 치명적인 문제 (위험 요소)**를 발견했습니다.
🔍 문제 1: "도둑이 변장하는 법을 제대로 배웠나?" (TH1)
비유: 도둑이 경비원을 피하려고 옷을 바꾸는데, 옷을 너무 많이 갈아입다가 정작 도둑의 목적 (범행) 을 잊어버린 경우입니다.
현실: AI 도둑이 악성 코드를 변형할 때, 원래의 해킹 기능이 사라져 버리는지 확인하지 않았습니다.
🔍 문제 2: "경비원이 코드를 읽을 때 실수를 했나?" (TH2)
비유: 경비원이 도둑의 신분증을 읽는데, 알 수 없는 낱말 (OOV) 이 나오면 "아무것도 없음 (None)"이라고 처리해버리는 시스템 결함이 있었습니다.
현실: AI 도둑이 "이런 낯선 낱말을 섞으면 경비원이 '아무것도 없음'이라고 착각하고 통과시켜 주겠다"라고 학습했습니다. 즉, 진짜 해킹을 하지 않고도 경비원의 시스템 버그를 이용해 통과한 것이었습니다.
🔍 문제 3: "결과를 다시 확인할 수 없나?" (TH3)
비유: "우리가 이걸 성공시켰어!"라고 말했지만, 사용한 자료나 코드를 공개하지 않아 다른 사람이 다시 해볼 수 없는 상태였습니다.
🛠️ 3. 해결책: "진짜 도둑인지 확인하는 심문관 (Oracle)"
저자들은 이 문제를 해결하기 위해 **XSS 오라클 (Oracle)**이라는 새로운 장치를 만들었습니다.
오라클의 역할: "이 변장한 도둑이 진짜로 건물을 해킹할 수 있는 능력을 가지고 있는지, 아니면 그냥 헛수고인지 실제 실행해 보고 판단하는 심문관"입니다.
방법:
AI 도둑이 만든 변장된 코드를 실제 웹페이지에 넣어봅니다.
웹페이지가 망가졌다면 (해킹 성공) "진짜 도둑"으로 인정합니다.
웹페이지가 멀쩡하다면 (해킹 실패) "가짜 도둑"으로 간주하고 벌점을 줍니다.
이 오라클을 AI 도둑의 훈련 과정에 포함시켰습니다. "진짜 해킹이 안 되면 점수를 주지 않아!"라고 가르친 것입니다.
📊 4. 결과: "진짜 실력이 드러나다"
기존 연구의 결과: 경비원을 속이는 데 90% 이상 성공했다고 했지만, 그중 97% 이상이 오라클 심문관에게 "이건 해킹이 아니야 (Ruin Rate)"라고 걸러졌습니다. 즉, 시스템 버그를 이용한 가짜 성공이었습니다.
이 논문의 새로운 결과: 오라클을 훈련에 넣은 후, AI 도둑은 진짜 해킹 능력을 유지하면서도 여전히 96% 이상의 성공률을 보였습니다.
의미: "우리가 발견한 90% 성공률은 시스템 버그 때문이 아니었습니다. AI 도둑은 정말로 똑똑해서 경비원을 속일 수 있었습니다."
💡 5. 결론: 우리가 배운 교훈
시스템 점검이 필수: AI 경비원 (검출 시스템) 을 평가할 때, 단순히 "통과했는가"만 보면 안 됩니다. **데이터를 어떻게 가공하는지 (전처리)**가 얼마나 중요한지 깨달았습니다.
진짜 위협: 악성 코드가 시스템 버그를 이용하는 게 아니라, 진짜 해킹 기술로도 AI 를 속일 수 있다는 점이 밝혀졌습니다. 이는 더 무서운 일입니다.
투명한 연구: 앞으로는 연구 결과를 공개하고, 다른 사람이 다시 검증할 수 있어야 합니다.
한 줄 요약:
"기존 연구는 AI 가 경비원을 속인 게 아니라, 경비원의 **눈가림법 (시스템 버그)**을 이용한 거라고 생각했지만, 실제로는 AI 도둑이 진짜로 너무 똑똑해서 경비원을 속일 수 있었습니다. 이제 우리는 그 진짜 위협을 제대로 평가할 수 있게 되었습니다."
1. 연구 배경 및 문제 제기 (Problem)
배경: 웹 애플리케이션의 보안 위협 중 하나인 크로스 사이트 스크립팅 (XSS) 공격을 탐지하기 위해 딥러닝 (DL) 기반 모델이 널리 사용되고 있습니다.
문제: 최근 Chen et al. (2022) 은 심층 강화학습 (Deep Reinforcement Learning, DRL) 을 활용하여 XSS 탐지기를 우회하는 적대적 공격 (Adversarial Attack) 을 제안했습니다. 이 연구는 거의 완벽한 탈출률 (Escape Rate, ER > 90%) 을 달성했다고 주장했습니다.
연구의 동기: 본 논문은 Chen et al. (2022) 의 연구를 재현 (Replication) 하되, 해당 연구의 **타당성 위협 (Threats to Validity)**이 결과에 결정적인 영향을 미쳤을 가능성을 제기합니다.
TH1 (행위 검증 부재): 적대적 에이전트가 적용한 변형 (Mutation) 이 XSS 스크립트의 의미 (Semantic) 를 유지하는지 검증하지 않음.
TH2 (전처리 검증 부재): 탐지기의 전처리 (Preprocessing) 및 어휘 (Vocabulary) 구축 과정에서 생성된 새로운 토큰이 'OOV(Out-of-Vocabulary)'로 처리되어 'None'으로 대체됨. 이로 인해 실제 XSS 공격이 아님에도 탐지기를 우회하는 결과가 발생할 수 있음.
TH3 (재현성 부재): 코드, 데이터셋, 모델의 비공개로 인해 연구의 재현 및 검증이 어려움.
2. 방법론 (Methodology)
저자들은 Chen et al. (2022) 의 연구를 재현하고, 제안된 위협을 해결하기 위해 XSS Oracle을 도입한 확장 연구를 수행했습니다.
A. 재현 연구 (Replication Study)
데이터셋: 원래 연구의 비공개 데이터셋 대신 공개된 데이터셋 (Mereani and Howe, 2018) 을 사용했습니다.
모델: 탐지기로 MLP, LSTM, CNN 을 훈련시켰으며, 강화학습 에이전트 훈련에는 PPO (Proximal Policy Optimization) 알고리즘을 사용했습니다.
목표: 원래 연구와 유사한 높은 탈출률을 달성하여 재현성을 확인하고, 동시에 TH1 과 TH2 가 실제로 발생했는지 분석하기 위한 기준을 마련했습니다.
B. XSS Oracle 도입 및 확장 (Extension Study)
XSS Oracle 설계:
웹 서버 템플릿에 페이로드를 렌더링하여 DOM(Document Object Model) 을 비교합니다.
렌더링 후 DOM 이 변경되면 'Malicious', 변경되지 않으면 'Benign'으로 판별하여 페이로드의 의미적 무결성을 검증합니다.
새로운 지표 (Metrics):
Ruin Rate (RR): 변형된 페이로드가 Oracle 에 의해 더 이상 XSS 로 인식되지 않는 비율 (의미 파괴 정도).
OOV-Rate (OR): 전처리 과정에서 'None'으로 대체된 토큰의 비율.
훈련 과정 개선:
기존 보상 함수 (탐지 우회 시 +10, 탐지 시 -1) 에 Oracle 검증 단계를 추가했습니다.
새로운 보상: 전처리 후 Oracle 이 XSS 로 인식하지 않으면 (RR 발생), 에이전트에게 -2 의 페널티를 부여합니다. 이는 에이전트가 의미 없는 OOV 토큰 생성을 통해 우회하는 것을 방지하고, 실제 XSS 공격을 유지하면서 우회하도록 유도합니다.
3. 주요 기여 (Key Contributions)
선행 연구의 재현 및 비판적 분석: Chen et al. (2022) 의 결과를 성공적으로 재현하면서도, 높은 탈출률이 실제 공격 능력 때문이 아니라 전처리 과정의 결함 (OOV 토큰 활용) 에 기인했음을 증명했습니다.
타당성 위협 완화 방법 제안: XSS Oracle 을 강화학습 훈련 루프에 통합하여, 의미적 무결성을 유지하는 적대적 예제만 생성되도록 하는 새로운 훈련 전략을 제시했습니다.
투명한 평가 프레임워크: 코드, 데이터셋, 결과를 공개하여 연구의 재현성과 투명성을 높였으며, OOV Rate 와 Ruin Rate 와 같은 새로운 평가 지표를 도입했습니다.
4. 실험 결과 (Results)
재현성 확인: 재현 연구에서 LSTM, MLP, CNN 탐지기에 대한 탈출률은 각각 **98.62%, 99.73%, 98.25%**로, 원래 연구 (90% 이상) 와 유사한 높은 수치를 기록했습니다.
TH1 평가 (행위 검증): 생성된 페이로드의 Ruin Rate 는 약 **6~7%**로 낮게 나타나, 에이전트의 행동 자체가 의미 파괴를 유발하는 주된 원인은 아님을 보였습니다.
TH2 평가 (전처리 검증):
전처리 후 페이로드의 Ruin Rate 는 **92~97%**로 매우 높게 나타났습니다.
OOV Rate 는 **43~47%**로, 변형되지 않은 페이로드 (약 6%) 에 비해 압도적으로 높았습니다.
결론: 에이전트는 실제 XSS 공격을 우회하는 것이 아니라, 전처리 과정에서 'None'으로 변환되는 OOV 토큰을 생성하여 탐지기를 무력화시켰습니다.
확장 연구 결과 (Oracle 통합):
Oracle 을 훈련에 통합한 후, 탈출률은 **96.89% ~ 98.13%**로 여전히 매우 높았습니다 (원래 연구 대비 2% 미만 감소).
하지만 Ruin Rate 는 0.01~0.11% 로 급감했고, OOV Rate 는 1.7~2.3% 로 크게 감소했습니다.
이는 에이전트가 전처리 결함을 악용하지 않고도, 의미가 보존된 실제 XSS 공격으로 탐지기를 우회할 수 있음을 증명합니다.
5. 의의 및 결론 (Significance)
방어 전략의 중요성 재조명: XSS 탐지기의 강건성 (Robustness) 을 평가할 때, DNN 아키텍처뿐만 아니라 전처리 (Preprocessing) 및 어휘 구축 (Vocabulary Construction) 과정이 얼마나 취약한지 평가해야 함을 강조합니다.
실제 위협의 확인: 원래 연구의 높은 탈출률이 전처리 결함 때문이었음에도 불구하고, 본 연구의 확장된 방법 (Oracle 통합) 을 통해 전처리 결함을 악용하지 않은 순수한 적대적 공격으로도 96% 이상의 우회 성공률을 보임으로써, DL 기반 XSS 탐지기의 근본적인 취약점이 존재함을 확인했습니다.
미래 방향: OOV Rate 와 같은 지표를 통해 탐지 파이프라인의 약점을 식별하고, 의미적 무결성을 유지하는 공격에 대비한 방어 메커니즘을 강화해야 함을 시사합니다.
요약하자면, 이 논문은 기존 적대적 공격 연구가 가진 방법론적 결함을 규명하고, 이를 보완한 더 엄격한 평가 기준 (Oracle) 을 도입하여, DL 기반 XSS 탐지기가 실제로 매우 취약하다는 사실을 과학적으로 입증했습니다.