2017.01.10

SW 프로젝트에서 하드코딩된 키 제거 툴 개발

Lucian Constantin | IDG News Service
한 보안 연구원이 소프트웨어 프로젝트에서 하드코딩된 민감한 액세스 키를 자동으로 탐지할 수 있는 도구를 개발했다.


트뤼플 호그가 기트 코드 저장소에서 코드를 스캔하고 있다. Credit: Ilya Pavlov/Unsplash


트뤼플 호그(Truffle Hog)는 미국의 보안 연구원인 다일란 에이리가 파이썬으로 작성한 툴이다. 이 툴은 20개 이상의 문자와 하이 엔트로피(high entropy)를 가진 문자열에 대해 기트 코드 저장소를 스캔해 하드코딩된 액세스 키를 검색해 준다. 미국의 수학자 클로드 E. 섀넌의 이름을 딴 ‘하이 섀넌 엔트로피(high Shannon Entropy)’는 액세스 토큰 등 암호 해독 후보를 무작위로 제안하는 것이 특징이다.

소프트웨어 프로젝트에서 다양한 서비스에 관한 액세스 토큰을 하드코딩하는 것은 해커가 많은 노력을 기울이지 않고 해당 토큰을 추출할 수 있으므로 보안 위험으로 간주한다. 이 관습은 매우 일반적이다.

2014년 한 연구원은 아마존 웹 서비스에서 약 1만 개의 액세스 키를 발견했고, 기트허브에서 공개적으로 접근할 수 있는 코드 안에 개발자가 남긴 엘라스틱 컴퓨트 클라우드(Elastic Compute Cloud)를 찾아냈다. 아마존은 자체적으로 기트허브를 스캐닝하고 이러한 키들을 철회하기 시작했다.

지난해 디텍티파이(Detectify)의 연구원들은 개발자가 하드코딩한 기트허브 프로젝트에서 1,500여 개의 슬랙 토큰을 발견했는데, 그중 다수는 채팅, 파일, 비공개 메시지, 슬랙 팀 내에서 공유되는 기타 중요한 데이터에 대한 접근을 제공하고 있었다.

2015년 독일 다름슈타트(Darmstadt)에 있는 푸라운후버 정보보안 기술 연구소(Fraunhofer Institute for Secure Information Technology)와 기술 대학 연구원은 안드로이드와 iOS 애플리케이션에 저장한 BaaS(Backend-as-a-Service) 프레임워크에 대한 1,000가지 이상의 접근 자격 증명을 찾아냈다. 페이스북의 파스(Parse), 클라우드마인(CloudMine)이나 아마존 웹 서비스(Amazon Web Services) 등 BaaS 제공업체에 저장된 5,600만 건의 데이터 항목을 포함한 1,850만 건 이상의 기록에 대한 접근 권한을 확보했다.

트뤼플 호그는 프로젝트의 커밋 내역과 해당 프로젝트에서 어떤 것들이 파생돼 나왔는지를 깊이 파고든다. 에이리는 프로젝트 설명에서 20자가 넘는 텍스트의 모든 부분에 대해 베이스64(base64) 및 16진수 문자 집합에 대한 섀넌 엔트로피를 평가한다고 밝혔다.

이 툴은 기트허브에서 사용할 수 있으며, 실행하려면 기트파이썬(GitPython) 라이브러리가 필요하다. 기업과 독립 개발자는 해커보다 먼저 자신의 소프트웨어 프로젝트를 스캔하는 데 이 툴을 사용할 수 있다. ciokr@idg.co.kr 

2017.01.10

SW 프로젝트에서 하드코딩된 키 제거 툴 개발

Lucian Constantin | IDG News Service
한 보안 연구원이 소프트웨어 프로젝트에서 하드코딩된 민감한 액세스 키를 자동으로 탐지할 수 있는 도구를 개발했다.


트뤼플 호그가 기트 코드 저장소에서 코드를 스캔하고 있다. Credit: Ilya Pavlov/Unsplash


트뤼플 호그(Truffle Hog)는 미국의 보안 연구원인 다일란 에이리가 파이썬으로 작성한 툴이다. 이 툴은 20개 이상의 문자와 하이 엔트로피(high entropy)를 가진 문자열에 대해 기트 코드 저장소를 스캔해 하드코딩된 액세스 키를 검색해 준다. 미국의 수학자 클로드 E. 섀넌의 이름을 딴 ‘하이 섀넌 엔트로피(high Shannon Entropy)’는 액세스 토큰 등 암호 해독 후보를 무작위로 제안하는 것이 특징이다.

소프트웨어 프로젝트에서 다양한 서비스에 관한 액세스 토큰을 하드코딩하는 것은 해커가 많은 노력을 기울이지 않고 해당 토큰을 추출할 수 있으므로 보안 위험으로 간주한다. 이 관습은 매우 일반적이다.

2014년 한 연구원은 아마존 웹 서비스에서 약 1만 개의 액세스 키를 발견했고, 기트허브에서 공개적으로 접근할 수 있는 코드 안에 개발자가 남긴 엘라스틱 컴퓨트 클라우드(Elastic Compute Cloud)를 찾아냈다. 아마존은 자체적으로 기트허브를 스캐닝하고 이러한 키들을 철회하기 시작했다.

지난해 디텍티파이(Detectify)의 연구원들은 개발자가 하드코딩한 기트허브 프로젝트에서 1,500여 개의 슬랙 토큰을 발견했는데, 그중 다수는 채팅, 파일, 비공개 메시지, 슬랙 팀 내에서 공유되는 기타 중요한 데이터에 대한 접근을 제공하고 있었다.

2015년 독일 다름슈타트(Darmstadt)에 있는 푸라운후버 정보보안 기술 연구소(Fraunhofer Institute for Secure Information Technology)와 기술 대학 연구원은 안드로이드와 iOS 애플리케이션에 저장한 BaaS(Backend-as-a-Service) 프레임워크에 대한 1,000가지 이상의 접근 자격 증명을 찾아냈다. 페이스북의 파스(Parse), 클라우드마인(CloudMine)이나 아마존 웹 서비스(Amazon Web Services) 등 BaaS 제공업체에 저장된 5,600만 건의 데이터 항목을 포함한 1,850만 건 이상의 기록에 대한 접근 권한을 확보했다.

트뤼플 호그는 프로젝트의 커밋 내역과 해당 프로젝트에서 어떤 것들이 파생돼 나왔는지를 깊이 파고든다. 에이리는 프로젝트 설명에서 20자가 넘는 텍스트의 모든 부분에 대해 베이스64(base64) 및 16진수 문자 집합에 대한 섀넌 엔트로피를 평가한다고 밝혔다.

이 툴은 기트허브에서 사용할 수 있으며, 실행하려면 기트파이썬(GitPython) 라이브러리가 필요하다. 기업과 독립 개발자는 해커보다 먼저 자신의 소프트웨어 프로젝트를 스캔하는 데 이 툴을 사용할 수 있다. ciokr@idg.co.kr 

X