크라켄
크라켄은 OSGi 기반 보안 플랫폼인 크라켄 코어와 각종 보안 모듈로 구성된 오픈소스 프로젝트입니다.
특장점
크라켄은 명확한 서비스 인터페이스를 기준으로 다양한 기능을 확장하거나 대체, 또는 불필요한 기능을 제거할 수 있는 보안 플랫폼을 제공합니다. 개발사는 더 이상 사이트별 브랜치를 유지하지 않아도 되고, 사용자는 자신의 요구에 정확하게 부합하는 시스템을 얻을 수 있습니다. 운영체제에 앱을 설치하는 것처럼 보안 커뮤니티에서 자발적으로 개발된 응용을 설치하거나 독자적인 서비스를 개발하여 탑재할 수 있는 자유를 누릴 수 있습니다.
라이센스
아파치 라이센스 2.0 하에 배포됩니다. 다만 경우에 따라 특정 모듈에 한해 다른 라이센스가 적용될 수 있습니다. 아파치 라이센스는 상업적인 이용에도 제한이 없으며 GPL과 달리 소스를 공개할 의무도 없습니다.
크라켄 코어
크라켄 코어는 OSGi 애플리케이션 서버 플랫폼으로 엔초비에서 개발되는 모든 솔루션과 서비스의 기반입니다.
- OSGi 기반 서비스 지향 아키텍처(SOA) 및 핫 디플로이 지원
- OSGi 기반 버전 관리 및 패키지 의존성 관리
- 전용 번들 관리 및 패키지 관리 시스템 탑재
- 텔넷 서버 내장 (+ SSH 서버 지원 예정)
- 손쉬운 사용자 명령어 추가 및 명령어 자동 완성 지원
- 통합된 로깅 시스템
크라켄 기반 요소
크라켄의 모든 기능은 선택적으로 설치될 수 있습니다. 그 중에서도 아래의 패키지들은 운영체제의 주요 서비스처럼 대부분의 응용 프로그램들이 사용하는 핵심 기능을 제공합니다. 많은 기반 요소들이 어노테이션을 이용한 선언적 프로그래밍을 지원합니다.
| 크라켄 iPOJO | 크라켄 iPOJO는 현재 설치된 iPOJO 팩토리, 컴포넌트 인스턴스 등을 텔넷 콘솔에서 관리할 수 있도록 만들어주고 의존성 문제를 쉽게 파악할 수 있도록 지원합니다. |
|---|---|
| 크라켄 필터 | 크라켄 필터는 보안 솔루션에서 가장 흔하게 사용되는 필터 파이프라인 아키텍처 스타일을 지원하며 런타임에 동적으로 텔넷 콘솔에서 파이프라인을 구성할 수 있는 기능을 제공합니다. |
| 크라켄 크론 | 크라켄 크론은 유닉스 계열 시스템에서 제공하는 크론 서비스와 완전히 동일한 문법을 사용하여 OSGi 서비스 스케줄링을 할 수 있도록 지원합니다. |
| 크라켄 HTTP | 크라켄 HTTP는 Jetty를 내장하여 서블릿 컨테이너 기능을 제공합니다. 텔넷 콘솔을 통해 다수의 웹 서버를 동적으로 제어할 수 있습니다. |
| 크라켄 JPA | 널리 사용되고 있는 하이버네이트 3 라이브러리를 내장하여 OSGi 환경에서 JPA 명세를 지원합니다. 선언적 트랜잭션과 객체 쿼리를 이용하여 손쉽게 데이터베이스 응용 프로그램을 구현할 수 있습니다. |
크라켄 네트워크 스택
전통적으로 네트워크 스택은 C로 구현되어 왔습니다. 널리 사용되고 있는 PCAP이나 와이어샤크, TcpDump 등 각종 네트워크 유틸리티는 모두 C로 구현되어 있었기 때문에 엔터프라이즈 환경에 통합하기에 어려움이 있었습니다. 크라켄은 TCP/IP 스택을 비롯하여 다양한 응용 프로토콜 디코더를 자바로 개발하여 제공합니다.
| 크라켄 PCAP | 크라켄 PCAP은 PCAP 덤프 파일이나 라이브 스트림으로부터 패킷을 읽어들일 수 있으며, 독자적인 TCP/IP 스택을 이용하여 분할된 IP 데이터그램이나 TCP 세그먼트를 완전히 재조립 할 수 있는 능력을 갖추고 있습니다. (IPv6 지원) 개발자는 콜백을 설정하기만 하면 쉽게 응용 프로토콜을 해석하는데 필요한 기반을 얻을 수 있습니다. |
|---|---|
| 크라켄 PCAP 라이브 | PCAP 라이브러리를 JNI를 통해 사용할 수 있습니다. 이를 이용하면 10/100Mbps 네트워크에서 충분히 실시간으로 패킷을 수집하고 분석할 수 있습니다. 공유 라이브러리는 운영체제 버전에 따라 배포됩니다. |
| 크라켄 DHCP 디코더 | DHCP 프로토콜 디코딩을 지원합니다. DHCP 메시지 포맷 그대로 파싱하므로 다양한 DHCP 옵션까지 모두 해석 가능합니다. |
| 크라켄 HTTP 디코더 | HTTP 프로토콜 디코딩을 지원합니다. GZIP으로 압축된 스트림도 해석 가능합니다. 각종 헤더와 첨부 파일을 쉽게 추출할 수 있습니다. |
| 크라켄 FTP 디코더 | FTP 프로토콜 디코딩을 지원합니다. 커맨드 세션의 명령에 따라 동적으로 데이터 세션을 연관시켜 추적할 수 있는 세션 트랙킹 API를 사용합니다. |
| 크라켄 MSN 디코더 | MSN 프로토콜 디코딩을 지원합니다. 콜백만 설정하면 모든 대화내용을 추출할 수 있습니다. |
| 크라켄 SMTP 디코더 | SMTP 프로토콜 디코딩을 지원합니다. 메일의 제목, 내용 뿐 아니라 첨부파일도 쉽게 추출할 수 있습니다. |
| 크라켄 SNMP 디코더 | SNMP v1, v2 프로토콜 디코딩을 지원합니다. 라우터, 스위치, 프린터 관련된 네트워크 모니터링에 중요하게 사용될 수 있습니다. |
| 크라켄 텔넷 디코더 | 텔넷 프로토콜 디코딩을 지원합니다. 각종 안시코드와 제어 명령을 모두 확인할 수 있습니다. |
크라켄의 미래
엔초비는 패시브 네트워크 스캐너와 호스트 보안진단에 필요한 OVAL 인터프리터의 개발을 진행할 예정입니다. 이 모듈들은 취약점 진단 정보와 소프트웨어 인벤토리 정보를 수집함으로써 기존의 보안 시스템을 지능적으로 움직일 수 있도록 지원할 것입니다. 가령 침입방지시스템의 경우 문맥 기반으로 오탐을 극적으로 감소시킬 수 있습니다.
개발 참여
직접적인 코드 개발부터 문서화, 버그 추적, 재정적 후원, 프로젝트 제안에 이르기까지 모든 종류의 도움이나 논의를 환영합니다. 특히 보안 분야에 관심있는 학생의 경우 보안 솔루션 개발을 전반적으로 경험하는 좋은 기회가 될 수 있습니다. xeraph@nchovy.com으로 연락주시기 바랍니다.
