로컬에서 ChatGPT 세션을 안전하게 auth.json으로 추출하는 Codex 인증 도우미
Chrome 확장으로 현재 브라우저의 ChatGPT 로그인 세션을 읽어 Codex 규격의 auth.json을 로컬에서 합성·다운로드하는 도구이다.
TL;DR
이 확장은 브라우저에 로그인된 ChatGPT 세션에서 필요한 인증 요소를 추출해 Codex 규격의 auth.json을 로컬에서 자동 합성하고 data: URL 기반으로 즉시 다운로드하는 Chrome 확장이다. 모든 처리와 토큰 합성은 브라우저 샌드박스 내부에서 완료되어 네트워크 업로드가 전혀 발생하지 않으므로 민감한 자격 증명 유출 위험을 구조적으로 차단한다. 설치 방식은 개발자 모드로 extension 폴더를 로드하는 일반적 절차를 따르며 토큰 만료 시간 카운트다운과 계정 메타데이터 시각화를 통해 세션 관리를 용이하게 만든다. 이러한 설계는 로컬 테스트와 보안 감사가 필요한 개발 워크플로에서 수작업을 줄이고 운영 리스크를 낮추는 현실적인 대안이 된다.
주요 기능
- 브라우저에서 로그인 상태를 감지해 계정 아바타와 이메일 및 구독 플랜을 시각적으로 표시하고 상태 불일치가 있으면 사용자에게 유도 경로를 제공한다. 이 기능은 DOM 및 세션 스토리지 또는 쿠키를 읽어 계정 메타데이터를 추출하며 초당 수준의 응답성을 목표로 구현되어 있다. 상태 감지는 확장 팝업에서 즉시 확인 가능하도록 설계되어 사용자가 별도 개발 도구를 열 필요가 없다.
- 토큰 만료 시간 정보를 정밀하게 파싱해 팝업 인터페이스에 초 단위의 카운트다운으로 표시한다. 만료 시점은 JWT 또는 세션 메타데이터에서 추출한 exp 필드를 기반으로 계산하며 사용자에게 남은 생존 시간을 명확히 보여 세션 갱신 여부 판단을 돕는다. 이 카운트다운은 화면 갱신과 비동기 타이머를 결합해 정확도를 유지한다.
- 세션 요소를 바탕으로 Synthetic 서명 id_token을 생성하고 Codex가 요구하는 auth.json 포맷으로 자동 조합해 파일을 다운로드한다. id_token 합성은 필요한 클레임을 채워 서명 구조를 흉내 내는 방식으로 수행되며 서버 전송 없이 로컬에서 직렬화하여 data: URL로 트리거한다. 이 과정은 확장 내부 모듈이 순서대로 토큰 파싱, 클레임 합성, 직렬화 단계를 거쳐 실행되도록 구성되어 있다.
어떻게 동작하는가
확장은 현재 브라우저에서 ChatGPT 관련 세션 식별자를 찾아 필요한 인증 필드를 추출한 다음 내부 로직으로 id_token 형태의 서명 유사 구조를 합성한다. 합성된 인증 정보는 Codex 규격의 JSON 구조로 직렬화되며 Blob 대신 data: URL을 생성하여 브라우저 다운로드 API를 호출해 파일 저장을 유도한다. 모든 처리 흐름은 확장 내부의 스크립트(팝업 및 백그라운드 핸들러)에서 완료되어 네트워크 전송이 발생하지 않는다.
해결 문제
이 레포지토리는 브라우저에 로그인된 ChatGPT 세션을 외부 서버에 전달하지 않고도 Codex 규격의 인증 구성 파일로 추출하는 문제를 해결한다. 기존에 개발자가 수동으로 세션 데이터를 수집해 형식에 맞춰 변환하던 작업을 자동화하여 실수와 노출 위험을 줄인다. 또한 권한 최소화와 로컬 처리 설계를 통해 민감한 인증 정보의 외부 유출 가능성을 구조적으로 낮춘다.
지금 주목받는 이유
프로젝트는 GitHub에서 높은 스타 수를 기록했으며 로컬에서 민감한 세션을 안전하게 백업하려는 요구와 Manifest V3 전환에 따른 호환 요구가 맞물려 주목을 받았다. 개인정보 보호와 서버 비의존 처리라는 현재 보안 트렌드와 결이 일치하며 클라이언트 측만으로 인증 파일을 생성하는 실용적 솔루션이라는 점이 관심을 끌었다. 또한 단순하고 시각적으로 세련된 UI를 내세워 개발자와 파워유저 사이에서 입소문이 확산된 것으로 보인다.
차별점
- 모든 인증 처리와 파일 생성이 브라우저 내부 샌드박스에서 완료되어 생성된 정보가 절대 외부 서버로 업로드되지 않는다. 이 설계는 확장 매니페스트와 다운로드 트리거를 조합해 네트워크 전송 단계 자체를 배제하므로 개인정보 유출 위험을 실질적으로 제거한다. 동일 기능을 제공하는 일부 도구가 서버 중계나 클라우드 동기화를 요구하는 것과 대비된다.
- auth.json을 Codex 규격으로 자동 합성하는 로직을 포함해 추가 수작업 없이 바로 사용할 수 있는 출력물을 만든다. 이 자동화는 JWT 구조 파싱과 클레임 채움, 직렬화 및 data: URL 트리거까지 연속적으로 실행되도록 구성되어 있어 사용자의 반복 작업을 크게 줄인다. 따라서 파형이 다른 포맷을 수동 변환하던 개발자 워크플로를 단축시킨다.
- Manifest V3 기반의 최소 권한 선언과 외부 라이브러리 미사용 원칙으로 코드 투명성과 감사 가능성을 확보했다. 모든 정적 자원이 로컬에 포함되어 있어 브라우저 개발자 도구로 파일과 스크립트 내용을 직접 검증할 수 있으며, 불필요한 권한 요청을 배제해 운영 보안 위험을 낮춘다. 이 점은 보안 요구사항이 엄격한 환경에서 도입 장벽을 낮춘다.
사용 사례
- 로컬 개발환경에서 Codex 런타임이나 로컬 도구가 요구하는 인증 파일을 준비해야 할 때 유용하다. 개발자는 브라우저에 로그인된 상태에서 확장 팝업을 통해 즉시 auth.json을 생성해 테스트 서버나 로컬 프로세스에 투입할 수 있으며 수동으로 토큰을 추출해 포맷을 맞추는 과정을 생략할 수 있다. 이 과정은 인증 정보가 외부로 전송되지 않으므로 민감한 데이터 취급 규정이 있는 프로젝트에서 특히 적합하다.
- 브라우저 기반 세션을 주기적으로 백업하거나 만료 시점을 확인해 갱신 작업을 계획할 때 활용할 수 있다. 확장은 토큰 만료 시각을 정확히 계산하여 팝업에서 초 단위 카운트다운을 제공하므로 세션 관리와 갱신 시점을 운영 절차에 통합하기 용이하다. 이 기능은 장기 세션을 유지해야 하는 자동화 테스트 환경이나 로컬 개발 워크플로에서 안정성을 높인다.
- 보안 감사나 내부 검토 과정에서 사용자가 직접 생성한 인증 구성 파일의 생성 과정을 공개적으로 검증해야 할 때 활용할 수 있다. 모든 처리 로직이 로컬에 존재하므로 감사자는 브라우저 개발자 도구로 background.js와 popup.js를 확인해 데이터 흐름을 추적할 수 있으며, 외부 서버 호출이 전혀 없음을 증명하는 데 도움이 된다.
시작하기
레포지토리를 클론한 후 Chrome 확장 개발자 모드에서 extension 폴더를 'Load unpacked'로 로드하면 즉시 사용을 시작할 수 있다. 설치 절차는 chrome://extensions/로 이동해 개발자 모드를 활성화하고 로컬 디렉토리를 지정하는 전형적인 Manifest V3 기반 설치 흐름을 따른다. 설치 후 확장 아이콘을 클릭하면 현재 브라우저 세션을 감지하고 auth.json을 생성할 수 있는 팝업 인터페이스가 즉시 표시된다.
요구사항
- Chrome 브라우저 또는 Chromium 계열 브라우저가 필요하며 Manifest V3를 지원하는 최신 버전에서 정상 동작한다. 확장은 브라우저 권한으로 downloads와 https://chatgpt.com/ 도메인 접근을 요구하므로 해당 권한이 허용되어야 파일 저장과 세션 읽기가 가능하다. 서버나 외부 서비스 의존성이 전혀 없으므로 별도의 클라우드 계정이나 백엔드 인프라 요구는 없다.
4.7k
Stars
218
Forks
+212
Trending
2
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.