깃허브, 보안권고에 쓰기 권한자 전용 댓글 도입…REST API에는 제외

깃허브가 2일 저장소 보안권고에 비공개 댓글을 추가했다. 저장소 쓰기 권한이 있는 사람만 볼 수 있으며, 같은 날 공개한 REST 댓글 API에서는 이 댓글을 읽을 수 없다.

창가 책상 위 노트북 화면에 추상적인 대화 칸과 자물쇠 그림이 보이고 옆에 종이 서류철이 놓여 있다
창가 책상 위 노트북 화면에 추상적인 대화 칸과 자물쇠 그림이 보이고 옆에 종이 서류철이 놓여 있다. 사진은 기사 이해를 돕기 위한 자료 이미지입니다.

깃허브가 2일 저장소 보안권고에 '비공개 댓글' 기능을 도입했다. 취약점 신고자와 권고에 초대된 협력자가 보는 대화와 별개로, 저장소 쓰기 권한자끼리 조사 내용과 대응 방안을 논의할 수 있게 했다.

기존에는 권고에 달린 댓글이 신고자를 포함한 모든 협력자에게 보였다. 깃허브는 오용 의심 사례나 조사 세부사항을 내부에서 논의하려면 대화를 다른 곳으로 옮겨야 했다고 설명했다. 새 댓글은 권고의 대화 기록 안에 남지만 쓰기 권한이 없는 신고자와 초대자는 볼 수도, 알림을 받을 수도 없다.

'비공개'의 기준은 담당자 이름 아닌 권한

권한 경계는 댓글 작성자가 지정한 개별 명단이 아니라 현재 저장소의 쓰기 권한이다. 쓰기 권한을 잃으면 그 댓글도 읽을 수 없고, 댓글 열람은 감사 로그에 기록된다. 따라서 신고자라도 저장소에 쓰기 권한이 있다면 열람 대상에서 자동 제외된다고 볼 수 없다. 이는 깃허브가 밝힌 권한 규칙에 따른 해석이다.

댓글 입력란에서 비공개를 선택하면 권한자만 본다는 안내가 나온다. 게시한 뒤에는 일반 댓글과 비공개 댓글을 서로 바꿀 수 없다. 적용 대상은 비공개 취약점 신고 기능을 켠 공개 저장소로, Free·Pro·Team·Enterprise Cloud 요금제가 포함된다.

댓글 API 공개…비공개 기록은 REST 응답 밖

깃허브는 같은 날 저장소 보안권고의 일반 댓글을 조회·작성·수정하는 REST API도 공개 시험으로 내놨다. 비공개 취약점 신고에서 만든 권고 역시 대상이다. 댓글 목록을 갱신 시각으로 걸러 읽고, 댓글 건수를 확인할 수 있지만 이 건수와 REST 응답에는 비공개 댓글이 들어가지 않는다. API를 이용한 기록 보관이나 이관에서 공개 가능한 대화와 내부 대화를 같은 범위로 취급해서는 안 된다는 뜻이다.

비공개 댓글은 GraphQL API에서 접근할 수 있다고 깃허브는 밝혔다. REST 댓글 API는 권고를 볼 권한과 해당 보안권고의 읽기·쓰기 권한 또는 토큰 범위를 요구하며, 현재 댓글 삭제는 지원하지 않는다. 두 기능은 취약점을 고치는 절차 자체를 대신하지 않는다. 깃허브 문서는 저장소 보안권고를 신고자와 유지관리자가 비공개로 문제를 논의하고 수정한 뒤 공개하는 수단으로 설명한다.

출처: https://github.blog/changelog/2026-10-02-confidential-comments-on-repository-security-advisories/
출처: https://github.blog/changelog/2026-10-02-repository-security-advisory-comments-api-in-public-preview/
출처: https://docs.github.com/en/code-security/concepts/vulnerability-reporting-and-management/repository-security-advisories
대표 이미지: AI 생성 이미지 / 데이마크