

이 저장소는 G1 사이트에 존재하는 Clickjacking 유형의 보안 취약점을 시연합니다. 이 취약점으로 인해 공격자는 사이트를 iframe 안에 로드하여 사용자를 속이기 위한 악성 요소를 겹쳐 표시할 수 있습니다.
Clickjacking(UI Redressing이라고도 함)은 사용자가 인지하지 못하는 사이에 합법적인 페이지와 상호작용하도록 속이는 공격입니다. 이는 다음 용도로 악용될 수 있습니다:
이 저장소의 HTML 코드는 G1 사이트를 전체 화면 iframe 안에 로드하고 앱 다운로드를 제안하는 가짜 팝업을 표시합니다.
위험에는 다음이 포함됩니다:
X-Frame-Options 또는 Content-Security-Policy와 같은 적절한 보안 헤더를 구현하지 않습니다.Clickjacking 공격을 완화하려면 사이트 관리자는 다음을 수행해야 합니다:
X-Frame-Options 헤더 추가하여 iframe 내 로드를 차단:
X-Frame-Options: DENY
Content-Security-Policy (CSP) 구현하여 iframe을 제한:
Content-Security-Policy: frame-ancestors 'none';
Clickjacking은 웹 애플리케이션 보안의 주요 가이드 중 하나인 OWASP Top 10에서 인정하는 보안 문제입니다. iframe 보호 헤더가 없으면 사용자가 공격에 노출되므로 A05:2021 - 취약하고 오래된 구성 요소 범주에 해당합니다.
자세한 정보: OWASP Clickjacking
MITRE ATT&CK 프레임워크에서 Clickjacking은 사용자의 동의 없이 작업을 수행하도록 사용자 상호작용을 악용하므로 T1204 - 사용자 실행 기술 아래 분류됩니다.
자세한 정보: MITRE ATT&CK - T1204
이 저장소는 교육 및 보안 연구 목적으로만 제공됩니다. 이 코드를 악의적인 목적으로 사용하지 마세요!
저는 index.html을 작성했습니다. 이 파일은 웹 페이지(especiais.g1.globo.com/app-g1/index.html)를 렌더링합니다. 이 페이지는 헤더에 X-Frame이 없어 높은 심각도의 취약점이 있습니다. 따라서 원본 페이지 전체를 렌더링(및 탈취)하여 우리가 통제하는 서버나 호스트에 호스팅할 수 있습니다.
[
손상된 렌더링 페이지의 초기 섹션에서 헤더(head)에 코드 블록을 삽입했으며, 2초 후 팝업이 표시됩니다. 이 팝업은 사회공학 기법의 실행을 용이하게 하도록 전략적으로 개발되었습니다. 이 접근 방식을 통해 Drive-By Download 메커니즘을 구현하여 사용자 기기에 악성 콘텐츠를 자동으로 다운로드할 수 있습니다. 다운로드가 완료되면 악성 코드가 실행되어 RAT(Remote Access Trojan), Ransomware, Infostealer 등 다양한 페이로드와 기타 사이버 위협을 설치할 수 있는 경로가 열립니다.
이 개념 증명에서는 열리도록 이미지를 추가했습니다:
