미소띠움

네트워크를 이해하면 포렌식 분석이 쉽다 (1) 본문

Diary/Diary

네트워크를 이해하면 포렌식 분석이 쉽다 (1)

미소띠움 2009. 10. 8. 10:25

네트워크 포렌식에서는 비휘발성 증거를 다루는 디스크 포렌식과 달리 휘발성 증거를 수집하여 분석하는 방법으로 네트워크들에 대한 올바른 이해와 구성에 대한 기본지식을 필요로 한다. 본 원고에서는 P2P 네트워크, 클라우드컴퓨팅 등 네트워크들에 대한 구성 및 소개를 하고 모니텅링 보안 및 포렌식에 대해 구체적인 분석 및 실례를 예로 들어 연재하고자 한다. 이번 호에서는 P2P 네트워크에 대한 설명으로서 현재 우리가 쓰고 있는 P2P에 대해서 바로 알고 있으면 속도저하 현상, 접속 실패 등에 대한 원인을 찾아내고 그 이유에 대한 정답을 스스로 찾을 수 있도록 하는데 그 의미가 있겠다.

1. P2P 네트워크 구성 및 소개

1-1. P2P 네트워크의 기원

인 터넷은 완벽하게 대칭적으로 탄생한 네트워크로 초기 당시 아르파넷(ARPANET)처럼 컴퓨팅 자원을 공유하고 신뢰할 수 있고 효율적이며 강력한 네트워크를 구축할 목적으로 시작하였다. 따라서 이러한 목적을 달성하기 위해서는 여러 종류의 네트워크들이 통합되어 모든 호스트들이 하나의 공동 네트워크를 갖도록 해야 한다. 초창기 아르파넷에 적용된 서버급 호스트들은( UCLA, SRI, University of Utah, UCSB) 상호간에 동일한 위치에 선 독립사이트로서 클라이언트 서버 관계가 아닌 Peer 방식을 사용하고 있었다. 초기 인터넷은 서로 믿고 연구하는 분위기 속에서 개방적이고 자유로움을 포함하고 있었으며 상호간의 프로토콜과 시스템들이 서로 상이한 부분이 많았기에 일반 사용자들에게 악영향을 미치지 않았다. 대표적인 응용 프로그램으로 FTP 와 Telnet 이며 클라이언트와 서버관계가 서로 대칭적이기에 Peer 형식을 갖고 있다고 볼 수 있다. 

1994 년부터 인터넷이 대중화되면서 거대한 대중매체로 급속히 변화하였으며 익명 속에서 자신의 의견을 솔직하게 표출할 수 있는 언어의 자유 세상이 되고 다수의 공감대를 형성 시키게 되었다. 복잡한 네트워크 환경 속에서 컴퓨터를 연구하는 학자뿐만 아니라 인터넷을 통해 전자메일을 보내고 웹 서핑을 하고 물건 등을 도매가로 구입하는 보통사람들이 참여하게 되면서 기존 의도대로 시작했던 Peer 네트워크가 다시 구현되었다. Peer 네트워크로 인하여 네트워크를 접속하는 방법, 인터넷에서 협력이 와해되는 현상, 보안장비(방화벽, 침입탐지시스템 등), ADSL 과 케이블 모뎀 같은 비대칭 네트워크 연결이 성장하게 되었다. 인터넷이 상업적으로 변하면서 웹 브라우저, 응용프로그램에서 클라이언트/서버 프로토콜을 기본으로 제공하는데 클라이언트가 먼저 서버연결을 시도하여 서버로부터 데이터를 받고 데이터를 모두 받게 되면 연결을 끊는 방식이었다. 해당 서비스에는 웹 상에서 비디오 강의나 영화보기, 주식거래, 쇼핑, 대화형 온라인 게임 등이 있으며 클라이언트가 설치된 컴퓨터에는 고정 IP주소나 잘 알려진 도메인 이름을 가질 필요가 없으며 지속적인 인터넷 접속도 필요 없게 된다. 서버에 연결하여 질문하고 질문에 대한 응답을 받기만 하면 되기 때문이다. 그러나 전자메일의 경우 클라이언트와 서버 사이에 많은 양방향 통신을 필요로 하며 그 효과로는 사용자가 단순 정보를 보는 게 아닌 자신의 견해를 게시(업로드)하는 시스템으로 발전하게 되었다. 이러다가 텔레비전과 신문에서 이미 사용하고 있는 다운로드 방식에 적응하게 되었다.

오늘날 Peer 네트워크에서는 기본적인 협력연구에 대한 기대가 무너지는 위험한 상황을 보여주면서 인터넷 구조도를 위협하고 있다. 온라인 게임의 경우 한 서버가 다른 서버와 통신하게 되면 Peer 네트워크에 접속해서 게임을 시작하는 것을 말하며 한편에서는 Peer 응용 프로그램이 관리중앙서버에서 포인터를 저장하고 주소를 관리하기 때문에 엄격한 의미의 Peer 네트워크는 아닐 수 있다.

1-2. P2P 네트워크의 시작을 주도했던 냅스터란? 


출처 <
http://www.howstuffworks.com/>

미 국에서 선풍적인 인기를 끌었던 음악파일 공유 프로그램인 냅스터(Napster)는 P2P(Peer To Peer)로서 DNS(Domain Name Server)를 거치지 않고 냅스터 서버에서 특정 음악파일을 가지고 있는 컴퓨터의 주소를 찾아내고 그 파일 전송 관리를 노드에게 맡기는 구성으로 동작했다. 냅스터의 노드는 중앙서버의 간섭 없이 음악파일을 다운로드 받을 수 있으며 냅스터 노드들은 저장공간과 대역폭을 무료로 사용할 수 있었다. 그리고, 냅스터는 자체 웹사이트에 접속한 후 사용자의 모든 검색을 중재하는 다수의 서버들로 구성하는 클라이언트와 서버모델 성격을 가지고 있어 쉽게 통제가 가능했다. 전자메일 서버는 많은 사용자들에게 다양한 연결성을 지원하지만 사용자의 주소를 서버에서 관리하기 때문에 엄밀히 말해 P2P라고 볼 수가 없다.

냅 스터는 음반산업에 막대한 영향을 끼쳤으며 열광적인 유행어를 만들어 냈으나 그 이후 나온 그누텔라나 프리넷과 같은 분산화 된 순수 P2P는 시스템은 아니라고 본다. 그 이유로는 수 많은 사용자의 하드 디스크를 서로 공유하고 있지만 해당 데이터를 찾는 작업은 중앙서버의 인덱스 정보를 통해 이루어지기 때문이다. 음악 파일을 모두 중앙서버에 업로드 하느냐 파일들의 주소만 중앙에 두느냐의 차이점으로 P2P를 판단하면 될 것이다. 냅스터는 비즈니스 모델을 구현할 수 있는 도구로서 회원등록을 해야 하며 사용료를 유료화 시켜 회원들에게 부과할 수 있다. 음반협회의 법적 분쟁을 피하고자 이러한 노력은 냅스터의 마지막 자구책이라고 볼 수 있다. 현재 미국의 전자종합 쇼핑몰 BESTBUY에서 인수하여 월 5달러짜리 무제한 MP3 스트리밍 서비스 등을 출시하여 미 전역에 제공하고 있다. 현재 미 전역에는 애플사의 iTunes, Amazon, RealNetworks,  Microsoft,  WallMart가 디지털 음악시장을 주도하고 있다.그럼 넵스터 이후에 공개된 그누텔라에 대해 알아보도록 하자.

1-3. 냅스터에서 진보된 그누텔라의 발전


출처:
http://www.howstuffworks.com/


출처:
http://shareme.com/screenshot/gnutella-lite.html

GNU+ Nutella의 합성어로서 GNU( GNU is no Unix)와 이탈리아 제빵기술자 페레로(Ferrero)가 헤이즐넛에 초콜릿을 입힌 것에서 따온 이름 누텔라를 합친 것이다. 그누텔라에서는 복잡한 주소를 직접 입력할 필요가 없으며 찾고 있는 파일의 이름만 검색하면 검색결과가 나오도록 되어 있다. 전자메일, 웹 페이지 같은 인터넷 기반 응용프로그램들은 네트워크상에서 라우터, 스위칭허브 같은 하드웨어와 , TCP/IP 프로토콜 등에 의존하지만 그누텔라는 네트워크 구조가 순간 순간 바뀌는 응용 네트워크를 구축하게 되어있다. 기존 네트워크의 경우 전화선 또는 케이블선이 지반에 매설되어 있고 라우터는 고정되어 해당 경로 테이블에서 가장 빠른 경로를 선택하도록 되어있는 반면 그누텔라에 참여하는 라우터와 경로는 순간마다 바뀌는 동적인 구조 위에 가상 기반구조를 가지고 있다.

그누텔라는 네트워크를 구성하며 트랜잭션을 중재하는 관리자가 필요 없으며 그누텔라에 네트워크에 연결되어 있는 호스트에만 자동으로 접속하도록 되어 있다. 그누텔라는 네트워크 분산을 이용하여 책임자를 누구라고 특정 지을 수 없으며 운영의 책임을 추궁하려면 수많은 수색영장, 집행영장, 소환장을 발급하여 대대적인 수사인력의 투입이 필요해야 가능하리라 추측하나 현실적으로는 거의 불가능하다고 볼 수 있다.

최신 고성능 사양의 컴퓨터의 등장으로 그누텔라는 클라이언트와 서버를 한 시스템에 통합시켰으며 파일을 업로드하고 다운로드 하는 2가지 방법을 통하여 인터넷 사용자들과 쉽게 접속이 가능하다. 소프트웨어 기반 네트워크로 형성 된 그누텔라는 인터넷상의 이 기종 및 지역 네트워크들과의 통신을 가능하게 하는 라우터, 스위칭 허브와 같은 장비를 구비하지 않고 있으며 통신시설을 통합하여 한 노드에서 사용자가 네트워크를 관리를 하도록 하고 있다. 그누텔라는 특정하게 네트워크 관리자가 지정되어 있지 않으며 분산 실시간 정보 검색 시스템으로 역할을 다하고 있는데 이러한 것을 현재 우리가 주변에서 쉽게 다운로드 받는 파일 공유 프로그램으로 이해하면 될 것이다. 그누텔라에서 사용하는 인프라서치(InfraSearch)를 사용하면 현재 사용하는 표준 웹브라우저에서 동일한 검색 인터페이스에서 검색 질의어를 요구하면 키워드나 HTML로 이루어진 DB(DataBase)에서 질의에 대해 여러 개의 노드로 구성된 독립된 그누텔라 네트워크로 브로드캐스팅하게 되어있다. 노드 데이터에는 사진 이미지, 광고메시지, 파일이름, 계산기,URL, 뉴스기사, 임의의 컨텐츠 들과 같은 다양한 데이터들이 섞여 있으며 노드들에 포함된 데이터들은 관련 있는 정보가 공유된 경우 응답을 하도록 되어 있다.  

P2P 모델들은 인터넷을 통하여 사용하는 Peer-to-Peer 네트워크를 기본으로 하며 빠른 검색력으로 요구하는 내용과 신속한 다운로드를 제공하는데 이러한 변형된 Peer-to-Peer 네트워크를 사용하는 클라이언트 프로그램들을 살펴보면 다음과 같다.



하 이브리드 P2P는 라우팅(Peer가 다른 Peer를 찾는 것) 검색능력이 빠르며 P2P 네트워크 내에 있는 Peer와 데이터에 대한 검색이 보장되는데 Peer가 늘어날수록 중앙서버에 부담을 가져오는 문제점을 가지고 있다. 이에는 국내 소리바다(
www.soribada.com), 냅스터(www.napster.com), 비트토런트4.1.0 이전 버전 (www.bittorrent.com) 들이 속해있다. Pure P2P는 네트워크가 커지더라도 이에 수반되는 비용은 들지 않으며 네트워크 전체가 마비되는 일이 거의 없으며 떨어지는 성능과 검색하는데 각 클라이언트 컴퓨터들에게 많은 부하를 가져온다. 이에는 그누텔라 초기 버전과 비트토런트4.1.0 이후 버전들이 있다. SureP2P는 하이브리드 P2P와 Pure P2P프로그램의 장점을 모은 것이며 최적화된 이론은 아직 정립되지 않았고 이에는 SKYPE, 그누텔라의 G2, Shareaza, eMule 등이 있다. 현재 국내에서 P2P 네트워크를 사용하는 클라이언트 프로그램에는 푸르나, 파일구리, 파일박스, 다이하드, V-share, 당나귀, 클럽박스 등이 현재 서비스 중이며 이에 대한 장단점을 서로 갖고 있기에 유료인지 무료인지, 포인트 적립으로 활동할 수 있는지 면밀히 따져보고 가입하여야 할 것이다.
 

<하이브리드 P2P 구성도>
 





출처: 안철수 연구소

Comments