본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

2021.03.15

© CIO Korea/Lucian Constantin | CSO

 

리눅스 재단(Linux Foundation)이 소프트웨어 개발자가 자신의 릴리스 및 기타 소프트웨어 아티팩트에 디지털 서명하는 데 사용할 수 있는 무료 서비스를 출범했다. 이 프로젝트는 최근 몇 년 사이 전례 없이 많은 공격에 직면한 오픈소스 소프트웨어 공급망의 보안과 감사 가능성을 강화하는 데 목표를 두고 있다.
 

새로운 서비스의 기반 코드인 시그스토어(sigstore)는 구글, 레드햇, 그리고 퍼듀 대학과의 협력으로 개발됐으며, 앞으로 커뮤니티에 의해 유지 관리된다. 모든 서명 이벤트는 위조 방지 기능이 있고 모니터링을 통해 잠재적 악용을 발견할 수 있는 퍼블릭 로그에 저장된다.


시그스토어 작동 방법 

시그스토어는 오픈ID(OpenID) 인증 프로토콜을 사용해 인증서와 ID를 연계한다. 이는 개발자가 자신의 이메일 주소 또는 기존 오픈ID ID 제공업체가 있는 계정을 사용해 소프트웨어에 서명할 수 있음을 의미한다.

예를 들어 마이크로소프트나 애플과 같은 특정 소프트웨어 생태계의 유지 관리자에 의해 신뢰된 인증 기관(CA)으로부터 인증을 받아야 하는 기존 코드 서명과는 다르다. 기존 코드 서명 인증서를 받기 위해서는 ID 확인이 포함된 특수한 절차를 거치거나 개발자 프로그램에 가입해야 한다.

시그스토어 서명 클라이언트는 단기간 유지되는 키 쌍을 생성하고, 리눅스 재단이 운영하는 시그스토어 PKI(public-key infrastructure)에 연결한다. PKI 서비스는 성공적인 오픈ID 연결을 확인하고 소프트웨어 서명에 사용될 키 쌍을 기반으로 인증서를 발급한다. 서명 이벤트는 퍼블릭 로그에 기록되고 이후 키를 폐기할 수 있다.

이는 기존 코드 서명과 또 다른 차이점이다. 각 서명 이벤트에서 새 키 쌍과 인증서가 생성되기 때문이다. 궁극적인 목표는 특정 ID가 특정 시간에 하나의 파일에 서명했다는 공개적 증거를 남기는 것이다. 이 정보를 사용해 정책 및 실행 메커니즘을 만드는 도구를 구축하는 것은 커뮤니티의 몫이다.

구글 오픈소스 보안 팀원이자 프로젝트 기여자인 댄 로렝은 “일반적인 X.509 인증 기관을 기반으로 하므로 사람들은 자신의 루트 CA를 추가하고, 원한다면 우리 루트 CA를 제거할 수 있고, 자체 중개자를 추가할 수도 있다”라고 설명했다.

개발자는 공개 PKI 서비스와 투명성 로그를 사용하거나, 조직용으로 자체 내부 서명 시스템을 배포해 실행할 수 있다. 로깅 서비스용 코드인 리코(Rekor), 루트 인증 기관용 코드인 풀치오(Fulcio)는 오픈소스이며 깃허브에서 받을 수 있다.


소프트웨어 릴리스에 서명하는 이유

소프트웨어 코드 서명(Software code signing)은 일반적으로 소프트웨어의 출처에 대한 보장을 통해 코드 조각이 사용자가 신뢰하는 특정 개발자 또는 조직에서 나온 것이라는 증거를 제공하는 데 사용된다. 예를 들어 애플리케이션 화이트리스팅(Application whitelisting) 솔루션은 이 정보를 사용해 특정 시스템에서 어떤 소프트웨어가 실행되는지에 관한 사용자 정책을 시행할 수 있다.

이런 정책을 패키지 관리자로 확장할 수도 있다. 

(후략)

 

[원본기사 : https://www.itworld.co.kr/news/186393]

 

※ 본 내용은 한국아이디지(주) (https://www.idg.co.kr/)의 저작권 동의에 의해 공유되고 있습니다.

Copyright ⓒ 2020 International Data Group. 무단전재 및 재배포 금지.

맨 위로
맨 위로