깃허브 인기 오픈소스 보안 툴 11선

InfoWorld

“잡지 못할 버그는 없다”는 신념은 오픈소스 개발의 초석이다. 리누스의 법칙이라고 알려진 이 격언은 오픈소스 모델에서 보안 문제가 발생했을 때 IT 전문가들이 가장 먼저 떠올리는 말이기도 하다.
현재 깃허브 같은 인기 있는 코드 공유 사이트들 덕분에 오픈소스 커뮤니티는 악성코드를 분석하고 침입 테스트와 컴퓨터 포렌직을 수행하는 데 필요한 풍부한 보안 툴과 프레임워크를 제공하고 있어 다른 기업과 조직이 오픈소스 코드와 시스템을 안전하게 만드는 데 큰 도움을 주고 있다.
깃허브에서 인기를 얻고 있는 11가지의 필수 보안 프로젝트를 소개한다. 더욱 안전한 코드와 시스템에 관심이 있는 운영자들이라면 반드시 확인해 보기 바란다. editor@itworld.co.kr

메타스플로잇 프레임워크 오픈소스 커뮤니티와 보안업체 래피드7(Rapid7)가 주도하는 메타스플로잇 프레임워크(Metasploit Framework)는 침투 테스트를 위한 취약점 공격 개발 및 전달 시스템이다. 메타스플로잇 프레임워크에는 악의적인 공격자보다 먼저 취약점을 찾아냄으로써 애플리케이션의 보안 현황을 파악하는데 도움을 주는 취약점 공격 라이브러리가 포함되어 있으며, 윈도우, 리눅스, 맥, 안드로이드, iOS 등 다른 플랫폼용 소프트웨어를 테스트하는 데도 사용할 수 있다. 래피드7 엔지니어링 관리자 토드 비어슬리는 “메타스플로잇은 보안 연구원들이 상당히 일반적인 형식으로 취약점을 나타낼 수 있는 방법”이라며, “일반적인 컴퓨터, 전화기, 라우터, 스위치, 산업 제어 시스템, 임베디드 기기 등 모든 종류의 기기를 대상으로 한 수천 가지의 모듈을 가지고 있다. 메타스플로잇을 활용할 수 없는 소프트웨어나 펌웨어는 없다고 생각한다”고 강조했다.

브레이크맨 루비 온 레일스(Ruby on Rails) 앱을 위한 취약점 스캐너인 브레이크맨(Breakeman)은 프로그램의 한 부분에서 다른 부분으로 값을 추적하는 데이터 플로우 분석 기능도 제공한다. 브레이크맨의 저자이자 운영자인 저스틴 콜린스에 의하면, 이 소프트웨어를 사용하기 위해 애플리케이션 전체 스택을 설치할 필요는 없다. 브레이크맨은 '블랙 박스(black box)' 스캐너들보다 빨라 대형 애플리케이션도 단 몇 분만에 검사할 수 있다고 주장한다. 브레이크맨을 사용할 때는 긍정 오류(False Positives)에 주의해야 한다. 물론, 최근 이런 문제점을 해결하기 위한 교정 코드가 개발된 상태이다. 또한 웹사이트 보안 스캐너와 함께 사용해야 한다. 콜린스는 다른 플랫폼까지 브레이크맨을 확장시킬 계획은 없지만, 개발자들이 이 코드를 참고하는 것은 적극 장려한다는 입장이다.

쿠쿠 샌드박스 쿠쿠 샌드박스(Cuckoo Sandbox)는 자동화된 동적 악성코드 분석 시스템으로, 격리된 환경에서 의심스러운 파일을 검사하는데 사용된다. 쿠쿠 샌드박스 프로젝트 설립자인 클라우디오 과니에리는 “주요 목적은 윈도우 가상머신을 시작할 때 자동적으로 실행되고 내부에서 어떤 악성코드의 행동이라도 모니터링하는 것이다. 실행이 완료되면 쿠쿠는 수집된 데이터를 심층 분석하고 어떤 악성코드인지를 설명하는 통합 보고서를 만든다”고 설명했다. 분석을 통해 네이티브 함수와 윈도우 API 호출 추적, 생성되고 삭제된 파일의 사본, 분석 기기의 메모리 덤프 등의 데이터를 생성한다. 처리와 보고 방식은 맞춤형으로 설정할 수 있고, 결과 보고서는 JSON과 HTML 등의 다양한 포맷으로 생성할 수 있다.

몰로치 몰로치(Moloch)는 확장 가능한 IPv4 패킷 캡처 및 인덱싱, 데이터베이스 시스템으로, 데이터를 살펴보고 검색하고 외부로 내보내는 단순한 웹 인터페이스가 특징이다. HTTPS나 HTTP 약식 암호를 사용해 적용할 수 있으며, IDS 엔진을 대신하는 역할을 하지는 않는다. 몰로치는 모든 네트워크 트래픽을 표준 PCAP 형식으로 저장하고 인덱싱하며, 여러 시스템에 걸쳐서 배치할 수 있으며, 기가비트급 트래픽용으로 확장할 수도 있다. 캡처와 뷰어, 일래스틱서치(Elasticsearch)의 세 가지 요소로 구성되어 있다. 캡처는 단일 쓰레드의 C 애플리케이션으로 시스템 당 여러 개의 캡처 프로세스를 실행할 수 있으며, 뷰어는 Node.js 애플리케이션으로 웹 인터페이스와 PCAP 파일 전송을 담당한다.

모즈데프: 모질라 디펜스 플랫폼 ‘모즈데프(MozDef)’라는 이름으로 불리는 모질라 디펜스 플랫폼(Mozilla Defense Platform)은 보안 상황 처리 프로세스를 자동화해 공격자 정보를 확보할 수 있도록 한다. 프로젝트 저자 제프 브리너는 실시간 통합 플랫폼으로 모니터링과 대응, 협업을 진행하고 역량을 강화할 수 있다고 설명한다. 모즈데프는 전통적인 SIEM(Security Information and Event Management) 기능을 협업화된 상황 대응, 시각화, 다른 시스템으로의 손쉬운 통합으로 확장시켜 준다. 모즈데프는 일래스틱서치, 메테오(Meteor), 몽고DB(MongoDB)를 활용해 다양한 데이터를 수집하고, 이를 저마다의 알맞은 방식으로 유지한다. 브리너는 “모즈데프를 보안 상황 대응 워크플로우를 보조하는 일래스틱서치 상위의 SIEM 오버레이로 볼 수도 있다”고 설명했다. 이 프로젝트는 2013년 모질라 내에서 개념 검증 단계로 시작됐다.

MIDAS Etsy와 페이스북 보안팀 사이의 협업을 기반으로 하는 마이다스(MIDAS)는 맥 침투 감지와 분석 시스템 구축 프레임워크다. 이 모듈식 프레임워크는 OS X의 지속 메커니즘에 대한 수정을 감지하기 위한 예시 모듈과 보조 유틸리티를 제공한다. 이 프로젝트는 자가 방어 보안(Homebrew Defensive Security)와 공격 주도형 방어(Attack-Driven Defense) 프레젠테이션에서 나온 개념을 기반으로 삼고 있다. Etsy와 페이스북 보안팀은 소개 문서를 통해 “이 프레임워크 발표에 있어서 우리의 공통 목표는 이 분야에 대한 토론을 활성화하고 기업이나 기관에 일반적인 감염 패턴을 탐지할 수 있도록 OS X 엔드포인트 관리를 위한 시작점을 제공하는데 있다”고 밝혔다. MIDAS 사용자는 호스트 기반 점검이나 인증, 분석 등을 위한 모듈을 정의할 수 있다.

브로 미국 캘리포니아주립대 국제컴퓨터공학연구소의 선임 연구원이자 브로(Bro)의 선도 개발자인 로빈 소머는 네트워크 분석 프레임워크인 브로가 많은 사람들이 생각하는 침입 탐지 시스템과는 완전히 다른 것이라고 말한다. 침입 탐지 시스템이 일반적으로 공격 패턴과 연관되는 것과 달리, 브로는 사용자들이 아주 높은 수준의 시맨틱 단계로 작업을 프로그래밍할 수 있어서 보통의 시스템들보다 더욱 강력한 프로그래밍 언어라는 것. 브로는 공격을 찾고 상황 정보와 사용 패턴을 제공한다. 그리고 네트워크 트래픽에 대한 정보를 얻고 네트워크 패킷을 조합해 네트워크 상의 시스템에 대한 가시성을 제공한다. 좀 더 일반적인 트래픽 분석을 위한 플랫폼도 제공한다.

OS X 오디터 OS X 오디터(OS X Auditor)는 무료 컴퓨터 포렌직 툴로 구동되는 시스템이나 시스템 사본 상에 있는 의도치 않은 부산물들을 세밀하게 분석한다. 대상이 되는 부산물은 커널 확장자나 시스템이나 서드파티의 에이전트와 데몬, 사용하지 않은 기동 아이템, 사용자가 다운로드한 파일, 설치된 에이전트 등이다. 사용자가 따로 저장한 파일도 감사 대상 시스템의 사파리 히스토리, 파이어폭스 쿠키, 크롬 히스토리, 소셜과 이메일 계정, 와이파이 AP 등을 기반으로 추출한다.

슬루스 키트 슬루트 키트(Sleuth Kit)는 라이브러리와 볼륨과 파일 시스템 데이터를 포함한 디스크 이미지 조사를 위한 명령줄 툴 콜렉션을 갖추고 있다. 이 키트는 플러그인 프레임워크를 제공해 사용자가 예를 들어 파일 컨텐츠를 분석하고 자동화된 시스템을 구축하기 위한 모듈 등을 추가할 수 있게 해준다. 마이크로소프트와 유닉스 시스템에 맞춰져 있으며, 조사자가 보안 사고 대응 중이거나 가동 중인 시스템의 이미지로부터 증거를 식별 복구할 수 있게 해준다. 슬루스 키트와 다른 툴의 상위 사용자 인터페이스의 역할을 수행하는 것은 디지털 포렌직 플랫폼인 오톱시(Autopsy)다. 슬루스 키트와 오톱시의 저작자인 브라이언 캐리어는 “오톱시는 좀 더 사용자 지향적이고, 슬루스 키트는 직접 사용하기 보다는 자체 툴에 통합하는 라이브러리에 가깝다”라고 설명했다.

OSSEC OSSEC 호스트 기반 침입 탐지 시스템은 로그 분석, 파일 무결성 점검, 정책 모니터링, 경보, 리눅스, 맥 OS, 솔라리스, AIX, 윈도우 등을 포함한 다양한 시스템에 대한 능동적인 대응을 수행한다. OSSEC는 PCI와 HIPAA를 포함한 컴플라이언스 충족에 도움을 주고 인증 받지 않은 파일 시스템 수정과 소프트웨어와 커스텀 앱의 로그파일에 내장된 강의적인 행위를 감지하면 경보를 보내도록 구성할 수 있다. 중앙집중화된 관리 서버는 여러 운영체제에 걸쳐 정책을 관리한다. OSSEC는 트렌드마이크로가 지원하고 있다.

패시브DNS 패시브DNS(PassiveDNS)는 보안 사고 처리, 네트워크 보안 모니터링, 디지털 포렌직을 지원하기 위해 수동적인 방식으로 DNS 기록을 수집한다. 이 소프트웨어는 PCAP 파일을 읽고 DNS 데이터를 로그 파일이나 스니프 트래픽으로 출력하도록 설정할 수 있다. 이 툴은 IPv4와 IPv6 트래픽에서 사용할 수 있으며, TCP와 UDP 프로토콜을 통해 트래픽을 분석하고, 중복 DNS 데이터를 메모리 내에 임시저장해 데이터 로그의 양을 제한한다.