MITM 프록시 뒤에 GitHub Copilot을 배치하고 배운 것
GitHub
한 엔지니어가 mitmproxy를 사용하여 VS Code와 GitHub Copilot의 네트워크 트래픽을 가로챈 통찰력을 공유합니다. 이 기사는 프록시 설정 방법, Copilot이 시작 시 보내는 요청을 설명하고, 인라인 제안이 현재 파일이 비밀 파일이 아닐 때에도 최근에 편집한 파일의 비밀을 유출할 수 있음을 보여줍니다.
저자는 개발자로서 AI 기반 애플리케이션의 내부 동작에 대해 궁금증을 느꼈고, 월간 크레딧이 빠르게 소진되는 상황에서 GitHub Copilot을 조사하기로 선택했다. 이러한 앱 중 다수가 Electron으로 구축되어 있다는 점을 인지한 저자는 인기 있는 오픈소스 MITM 도구인 mitmproxy를 사용하여 VS Code에서 오가는 HTTP/HTTPS 트래픽을 가로챘다. 프록시를 통해 VS Code를 라우팅하도록 구성한 후, Copilot이 타이핑을 시작하기 전에도 인증 및 세션, 구성 및 정책, MCP 레지스트리, 저장소 및 세션, 모델 검색, 최근 저장소 등 여러 범주의 요청을 보내는 것을 관찰했다. 프롬프트에 응답하기 전에 Copilot은 /models 및 /agents/swe/models와 같은 엔드포인트를 통해 사용 가능한 모델을 확인한다. 자동 모드에서는 /models/session/intent에 대한 요청이 사용자 프롬프트의 의도(코드 생성, 디버깅, 추론, 도구 사용)를 분류하여 적절한 모델을 선택한다. 저자는 .env 파일의 비밀이 유출될 수 있는지 테스트했다. .env 파일에 가짜 비밀을 추가한 후 무관한 pyproject.toml 파일에 입력을 시작했다. 가로챈 인라인 제안 요청에는 프롬프트에 비밀이 포함되어 있었는데, 최근에 편집된 파일이 컨텍스트로 포함되기 때문이다. 이는 비밀 파일에 대해 Copilot을 비활성화해도 최근 편집이 이루어진 경우 유출을 막지 못함을 보여준다.
출처: Habr — хаб ИИ —
원문
