피드로 돌아가기
The RegisterSecurity
원문 읽기
github.dev OAuth Token 탈취를 통한 Private Repo 무단 접근 취약점 분석
Another bug hunter leaks Microsoft exploits in defiance of company’s handling of vulnerability disclosures
AI 요약
Context
github.dev 환경에서 브라우저 기반 VS Code를 사용할 때 OAuth Token의 Scope가 특정 저장소로 제한되지 않는 구조적 결함 존재. 공격자가 제어하는 저장소의 설정을 통해 사용자의 권한을 탈취할 수 있는 아키텍처적 취약점 노출.
Technical Solution
- Workspace Recommendations 기능을 통한 악성 VS Code Extension 설치 유도
- Jupyter Notebook(.ipynb) 파일 내 Hidden HTML Snippet을 이용한 JavaScript 실행 환경 구축
- Webview 내 실행된 JS 코드가 Simulated Keyboard Shortcut을 전송하여 Extension 설치 팝업을 자동 승인하도록 설계
- 브라우저 환경의 권한을 획득한 Extension이 세션 내 OAuth Token을 추출하는 메커니즘 구현
- 추출된 Token을 통해 사용자가 접근 가능한 모든 Public 및 Private GitHub Repo에 대한 Read/Write 권한 확보
실천 포인트
1. OAuth Token 발행 시 최소 권한 원칙(Least Privilege)에 따라 Resource-level Scope 제한 적용 여부 검토
2. Webview 및 Iframe 내에서 메인 에디터로 전달되는 Event Bubbling 제어 로직 점검
3. Third-party Extension 설치 전 사용자 명시적 동의 단계에서 UI/UX 우회 가능성 분석
4. 사용자 입력 기반 파일(Markdown, Notebook 등) 내 임의 스크립트 실행 방지를 위한 Sanitization 강화