해커즈뉴스 / 해커대학
 
 
  ▒   해커즈뉴스 제공 보안/해킹 FAQ  ▒  

No, 17
구분: 해킹
백도어와 트로이가 뭔가요?  
트로이 목마는 정상적인 기능을 하는 프로그램으로 가장하여  프로그램 내에 숨어서 의도 하지 않은 기능을 수행하는 프로그램의 코드 조각이다.  이는 바이러스나 웜에서 주로 사용하는 메커니즘이다. 최근의 컴퓨터 세계에서 말하는 트로이 목마는 유용하고 흥미 있는 기능을 수행 하거나 그런 기능을 하는 것처럼 보이는 독립된 프로그램에 숨어 있다.  이러한 표면적으로 드러나는 기능과 함께  트로이 목마 프로그램은 어떤 다른 비인가된 기능을 수행한다.  전형적인  트로이 목마는 유용한 것으로  가장하여 사용자가 그 프로그램을 실행 하도록 속인다. 사용자가 의심하지 않고 그 프로그램을  실행 하게 되면 실제 기대했던 기능이 수행된다.  하지만 실제 목적은 사용자의 합법적인 권한을 사용하여 시스템의  방어 체제를 침해하고 공격자는 접근이 허락되지 않는 정보를 획득 하는 것이다. 트로이 목마는 새로운 시스템 기능에 대한 정보를 보여주거나 새로운 게임 이라고 하는 프로그램들에 숨어 있는 경우가 많다. 전통적인 트로이 목마 공격은 Dennis M. Ritchie에 의해 소개되었다.
공격자는 정상적인 로그인 기능을 하는 것 같은 패스워드 수집기(Password grabber) 프로그램을 작성한다. 의심 없는 사용자가 로그인 프롬프트(login :)를 보면 로그인 하려고 하고, 프로그램은 정상적인 로그인 순서로 사용자가 평범한 방법으로 로그인하고 있다고 생각하게 한다. 하지만 Trojan Horse를 가진 그 프로그램은 로그인 ID와 패스워드를  받으면 이 정보를 공격자 소유의 파일에  복사  하거나 메일로 공격자에게  전송한다.   그리고 login incorrect”라는 오류 메시지를 보낸다.  사용자는 자신이 잘못 쳤다고 생각 하고 로그인  ID와  패스워드를 다시 치게 되는데 그 동안 Trojan Horse를  가진  프로그램은 빠져 나오고 실제 로그인  프로그램에게 제어권을 넘겨준다. 다음에 사용자는 성공적으로 로그인 하게 되고 자신의 로그인 ID와패스워드 정보가 유출되었다는 사실을 전혀 의심치 않는다.

어떤 이는 이러한 종류의 트로이  목마를 “Trojan mule”이라고 부르는데 그 이유는 전형적인  트로이  목마처럼 유용한 시스템 정보를 보여주는 프로그램이나 게임 프로그램에 숨어 있는 것과는 다르게, 유용한 기능을 가장하지 않고 단순한 눈속임이기 때문이다. 어떤 트로이 목마는 자기 존재의  흔적을 남기지 않아 발견될 염려가 없고,  의심받지 않는 소프트웨어에 숨어 있다. 또 발견되기 전에 스스로를 파괴하도록 프로그래밍 될 수도 있다.

백도어는 원래 시스템 설계자나 관리자에 의해 고의로 남겨진 시스템의 보안 헛점으로  응용 프로그램이나 운영체제에 삽입된 프로그램 코드이다. 즉 백도어는 시스템 접근에 대한 사용자 인증 등 정상적인  절차를 거치지 않고 응용 프로그램 또는 시스템에 접근할 수 있도록 한다. 이러한 보안 헛점을 남겨두는 이유가  항상악의적인 것은 아니다. 경우에 따라서는 현장 서비스 기술자나 시스템 공급자의 유지보수 프로그래머가 사용할 목적으로 특수 계정을 허용하는 코드를 운영 체제나 응용프로그램에 넣을수도 있다. 이러한 백도어는 디버깅 시 개발자에게 인증 및 셋업시간 등을 단축하기 위한 뒷문으로 사용된다. 하지만 이러한 백도어는 비양심적인 프로그래머가 비인가된 접근을 시도하거나 개발이 완료된후 삭제되지 않은 백도어가 다른 사용자에 의해 발견될 경우 대단히 위험할 수 있다.

1983년 Ken Thompson이  ACM에서의 강연에서 초기의 유닉스 버전에는 백도어가  존재하고 뛰어난 해커라면 이를 공격할 수도 있다고 말했다. 이러한 스킴으로 ‘login’ 프로그램이 재 컴파일되어 특정패스워드가 입력 되었을 경우 접근을 허락하도록 하는 코드가 숨겨져 있을 수도 있다. 그 결과 시스템에 계정이 있든지 없든지간에 시스템으로의 접근이 허용될 수 있다.

컴퓨터 시스템에 침입하려는 공격자들은 시스템에 비 정상적인 방법으로 시스템에 접근하고자 백도어 기술을 개발하였다. 침입을 위한 백도어 프로그램들의 주요 특징은 다음과 같다.

모든 패스워드를 바꾸는 등 관리자가 안전하게 관리하려고 함에도 불구하고 시스템에 침입할 수 있다.

발견되지 않고 시스템에 침입 할 수 있다. 대부분의 백도어 프로그램은 로그를  남기지 않고 온라인으로 들어 왔음에도 불구하고 이를 발견할 수 없다.

시스템에 최단 시간에 침입할 수 있다.

                   
FAQ 구분FAQ 번호FAQ 제목
해킹  15   스푸핑이 뭔가요 ?
기타  16   악성봇과 이에대한 증상은?
해킹  17   백도어와 트로이가 뭔가요?
기타  18   왜 컴퓨터 켜는것을 부팅이라고 하나요?
기타  19   윈도2000이나 2003에서 암호를 잊어버렸을때는?
기타  20   리눅스가 뭔가요?
기타  21   wowexec 라는 프로세스는 스파이웨어인가요 ?
기타  22   악성 스크립트를 이용한 초기화면 변경을 방어하려면?

 
처음 이전 다음       목록