깃, 보안 수준 강화...'SHA-1→256'

2.29버전부터 지원

컴퓨팅입력 :2020/10/23 09:24

소스코드 관리 도구 '깃'의 보안 수준이 강화된다. 그 동안 암호화 수준이 낮은 암호화 알고리즘인 SHA-1를 사용해왔지만, SHA-256을 사용할 수 있게 됐다.

SHA-1과 SHA-256은 사용자 브라우저와 웹사이트 간 통신에 쓰이는 디지털 인증서를 특정 길이의 문자, 숫자 등으로 구성되는 '해시값'으로 만들어주는 알고리즘이다.

이 중 구형 버전인 SHA-1은 해시 충돌 문제가 몇 년 전부터 제기돼왔다. 해시 충돌이란 서로 다른 내용이 같은 해시값으로 변환되는 것을 뜻한다. 즉 디지털 인증서에 대한 해시값이 고유하지 않을 수 있는 것이다. 해커는 이를 악용해 디지털 인증서를 위조해 정보를 가로채거나 악성 웹사이트 접근을 유도하는 공격을 시도할 수 있다.

미국 지디넷에 따르면 깃허브는 깃 2.29 버전을 출시함에 따라 SHA-256을 지원하는 소스코드 저장소를 만들 수 있게 됐다고 지난 19일 밝혔다.

버전관리시스템 깃(Git) 공식 로고

구글은 일찍이 깃의 SHA-1 사용을 문제삼았다. 구글은 지난 2017년 SHA-1의 해시 충돌을 의도적으로 유발할 수 있는 기법 '섀터드'을 선보이면서, SHA-1이 아닌 SHA-256 등 더 강력한 암호화 알고리즘을 채택해야 한다고 조언한 바 있다. 깃도 여기에 해당돼 안전한 기술이 아니라는 지적이었다. 구글은 정상적인 소스코드 저장소가 백도어 소스코드 저장소로 변조될 가능성을 언급했다.

당시 깃을 만든 리누스 토발즈는 이런 지적에 동의하지 않았다. 섀터드 기법을 시연한 환경과 깃 시스템 환경이 다르기 때문에 SHA-1을 쓰더라도 깃에서 고의적인 해시 충돌을 만들어내기 어렵다고 봤다. 그러면서도 깃허브는 섀터드 방식의 해시 충돌 공격을 탐지, 차단하는 보안 패치를 내놨다.

이후에도 SHA-1 해시 충돌과 관련해 보안 문제제기가 이어졌다. 지난해 3월 프랑스 국립정보통신기술연구소와 싱가포르 난양 이공대학 연구팀은 섀터드보다 사이버공격으로 발전할 가능성이 더 높은 방식의 SHA-1 해시 충돌 방식을 발표했다.

관련기사

깃허브는 SHA-1 해시 충돌 공격 탐지 기능을 구현했으나 향후 새로운 공격이 등장할 가능성을 배제할 수 없는 만큼, 아직 공격 기법이 보고되지 않은 SHA-256으로의 전환 계획을 준비하고 있다고 밝혔다.

깃 2.29 버전에서 SHA-256을 사용할 수 있지만, SHA-1 기반 저장소와 SHA-256 기반 저장소와 상호 연동이 되지 않는 상태다. 깃허브는 궁극적으로는 이 기능도 지원할 계획이라고 덧붙였다.