SHA-1, 더이상 안전하지 않아
Announcing the first SHA1 collision
HASH 함수는 대량의 데이터를 고정 길이의 의사난수를 생성하는 연산기법으로, 브라우저 보안, 코드 라이브러리 관리, 무결성 체크 등 다양한 방면에서
사용되고 있습니다. 하지만 기술이 발전함에 따라, 몇몇 해쉬함수는 더이상 안전하지 않게 되었습니다.
SHA-1은 채택된지 10년만에, 처음으로 취약점이 제기되었습니다. 그 후 CWI Amsterdam과 Google의 공동 연구 끝에 SHA1 해쉬충돌을 성공시켰습니다. 이는 즉 SHA-1은 더이상 안전한 알고리즘이 아니며, 그렇기 때문에 더 이상 사용되면 안된다는 것을 뜻합니다.
Google은 몇년동안 SHA-1을 폐기해야 한다고 주장해왔으며, 2014년 Chrome 그룹은 SHA-1의 사용을 줄여나가겠다고 밝히기도 했습니다.
해쉬충돌이란 ?
해쉬 충돌이란 두가지의 서로 다른 데이터에서 동일한 해쉬값이 출력되는 것으로, 보안적인 관념에서의 해쉬함수는 서로 다른 데이터들을 입력하였을 때 출력되는 값들은 무조건 다른 값이 출력되어야 합니다. 하지만 해쉬함수의 취약점으로 인하여 다른 데이터를 입력해도 동일한 해시값이 출력되는 경우가 있는데, 이러한 경우를 해쉬충돌이라고 합니다.
SHA-1의 해쉬충돌
2013년 Marc Stevens는 SHA-1 해쉬충돌의 이론방법에 대한 논문을 발표하였습니다. 그는 특수하게 제작된 "PDF prefix"를 통하여 두 개의 다른 내용을
가진 파일을 생성하였습니다. 하지만 이 파일들은 동일한 SHA-1 값을 갖게 되었습니다. 연구원들은 Google이 가진 기술적 전문지식과 클라우드 인프라를 이용하여 슈퍼 컴퓨터를 제작하였으며, 충돌 결과값을 계산해 냈습니다.
충돌을 위한 계산 크기는 다음과 같았습니다.
1) 총 9,223,372,036,854,775,808번의 SHA-1 계산
2) 공격을 위한 첫번째 단계를 완성하기 까지, 단일 CPU로 6500년 소요
3) 공격을 위한 두번째 단계를 완성하기까지, 단일 GPU로 110년 소요
SHA-1 충돌 위협의 감소
현재 보안연구원들은 더 안전한 해쉬함수, 즉 SHA-256, SHA-3 등을 사용해야 한다고 주장하고 있습니다. Google의 취약점 정책에 따라서 90일 후 코드를
공개할 것이며, 해당 코드를 이용하면 어떤 사람들이라도 다른 PDFs를 통하여 동일한 해쉬값을 생성해 낼 수 있게 됩니다. 이러한 적극적 공격을 막기
위하여, PDF 충돌 기술에 대해 검증하고 있으며, Gmail과 GSuite 사용자의 보안성을 향상시켰다고 밝혔습니다. 또한 일반 사용자들에게 무료로 취약점
검증을 할 수 있는 시스템을 공개하였다고 밝혔습니다.
바이러스(computer virus) (0) | 2017.10.06 |
---|---|
리눅스 장비를 프록시 서버로 바꾸는 트로이목마 등장 (0) | 2017.02.12 |
다크웹(Dark Web)에서 배포하는 랜섬웨어 ‘Satan’ (0) | 2017.02.12 |
전 세계 기기를 감염시키는 새로운 IoT 악성코드, Linux/IRCTelnet 발견 (0) | 2017.02.11 |
악성코드(Malicious Code) (0) | 2016.10.07 |
좀 알려주세요 현기증 난단 말이에요..