ChatGPT 데스크톱, 로컬 SSH 에이전트를 원격 머신에 그대로 전달
- ChatGPT 데스크톱이 로컬 SSH 에이전트를 원격 머신에 넘겨서, 원격에서 도는 에이전트가 사용자 로컬 SSH 자격증명으로 인증할 수 있음
- 그 결과 원격 에이전트가 사용자 권한으로 GitHub 비공개 저장소에 push하는 일이 가능하다는 것이 게시물의 주장이며, 근거로 openai/codex PR #28131의 토론 댓글 링크를 붙임
- 글은 DenGorbachev가 올렸고 확인 시점 2포인트, 올라온 지 2분 된 신규 게시물임
- 댓글에서는 macOS Secure Enclave 키나 Yubikey touch-required 방식으로 세션마다 지문·터치 확인을 걸어 에이전트가 임의로 연결을 열지 못하게 하자는 제안이 나옴
- Docker Desktop과 devpod도 SSH 소켓을 사용자 설정 파일에 그대로 밀어넣은 전례가 있으며, 에이전트가 그 환경 안에서 작업하는 지금은 더 위험하다는 지적이 있음
Hacker News opinions
맥이면 Secure Enclave에 SSH 키 넣고 세션마다 지문 찍게 해두는 게 낫더라. 그러면 에이전트가 멋대로 연결을 못 열고, 새 SSH 연결이 생길 때마다 내가 알 수 있음.
아니면 Yubikey에 넣고 touch-required 걸어두면 됨. 인증할 때 키에 불 들어오니까 눈으로 확인 가능함.
난 맥에서 Secretive 쓰고 있어서 딱 그렇게 해뒀음.
제품 결정이 늘 '마찰 제거'로 가는 게 신기함. 보안에서 마찰은 좋은 건데. 뭔가 의식을 거쳐야 하는 거임. 편의를 위해 통제권을 내주는 건 거의 필연인 듯.
그래서 보안은 편의의 반대쪽이고, 위협 모델 생각 안 하는 사람들이 그냥 손 떼게 됨. 균형이 문제인데 남의 머신으로 에이전트를 자동 전달하는 건 균형이 아님. 최소한 서명 요청별로 승인하게 해줘야지.
코덱스랑 채팅 합치는 게 실제로 이걸 하는 거임. 근데 그걸 구독료 엄청 올리는 이유로 내세우고 있음. 아무도 원하지 않는데 전부에다 적용함. OpenAI 내부에서도 몇 명이 반대한다고 들었음.
코딩은 풀었어도 상식은 못 풀었음. 에이전트들이 일 처리할 때 너무 과하게 덤벼서 꼼수까지 씀. 그런데 내 저장소 보안 도와달라고 하면 갑자기 간달프처럼 '통과하지 못하리라' 함.
이런 게 이제 뉴스인가 싶기도 함. 로컬 에이전트 가드레일이 죄다 블랙리스트 기반이라 새는 게 당연함. 화이트리스트도 있긴 한데 입자가 굵어서 사실상 껍데기고, 샌드박스는 사용자 몫으로 남음.
Docker Desktop도 예전에 똑같았고 devpod도 그럼. 설정 파일에 그냥 쑤셔넣는 게 제일 짜증남. Include 문 하나 쓰면 될 걸. 이제 에이전트가 그 박스 안에서 다 하니까 더 미침. 나는 소켓 관리하는 유틸을 따로 만들어 씀.