[security]가장 일반적인 침투유형의 분석과 보안 방법 > LINUX

본문 바로가기

사이트 내 전체검색

뒤로가기 LINUX

[security]가장 일반적인 침투유형의 분석과 보안 방법

페이지 정보

작성자 최고관리자 작성일 21-02-10 16:49 조회 5,812 댓글 0

본문

지금까지 침입을 당했던 시스템이나 일반적인 넷트웍 사고의 유형을 조사해보면 대부분의 공격이 매우 기술적이지 못한 것이었음을 쉽게 알 수 있다. 대부분의 사고가 설정을 잘못 해놓았거나, 패치를 하지 않아서 생기는 경우가 많았다.

이번에는 가장 쉽게 일어날 수 있는 침입의 방법에 대하여 알아보도록 하겠다.

1. 기본 사용자 계정에 패스워드가 없는 경우
 일반적으로 많은 유닉스 시스템이 공통적인 계정을 함께 발송한다. 근래의 많은 시스템들은 이런 문제를 가지고 있진 않지만 많은 오래된 시스템이 이러한 문제를 가지고 있다. 가끔씩 시스템 관리자가 이런 계정을 다시 사용할 수 있게 하는 실수를 저지르기도 한다.

2. 사용자 이름과 패스워드가 같은경우
 시스템상의 잘 알려진 사용자이름과 사용자이름과 같은 패스워드를 가지고 로그인을 할수 있는 경우가 있다. 이런 경우엔 finger를 사용해 사용자의 정보를 얻어 사용하는 경우가 있다.

3. rsh
 R*로 시작하는 서비스는 보통 성능이 떨어지는 인증 메커니즘을 사용하는 경우가 있다.
그리고 rsh을 사용하는 많은 사람들이 게을러 시스템 사이에 패스위드를 사용하지 않는다.
 (.rhosts 파일) 그래서 한대의 시스템이 핵킹을 당한 후에 연결된 다른 시스템도 연쇄적으로 핵킹을 당하게 된다. 어떤 회사는 /etc/hosts.equiv파일을 ‘+’를 이용하여 같이 사용하는 경우도 있는데 이런경우 원격의 시스템에서 호스트 시스템을 완벽하게 조정할 수 있게 한다. 추가로, rsh데몬의 경우 어떤 명령어도 검사하지 않는다. 시스템 보안을 위해서라면 rsh서비스를 꺼놓고 시스템상의 rm 명령어를 정지 시키는것이 좋다.만약에 사용자가 원격으로 시스템을 사용하고 싶다면 ssh을 대신 사용하라고 권한다.

4. rlogin
역시 r* 로 시작하는 서비스이므로 rsh과 거의 같은 제약을 가지고 있다고 보면 된다.
만약 rlogin을 사용하고 싶다면 사용자가 .rhosts파일을 사용하지 못하게 해야 하며, /etc/hosts.equiv파일에도 ‘+’가 없음을 확인해야만 한다.

5. rexecd
이 서비스는 사용자 이름과 패스워드 방식의 인증 방법을 사용하는데 로그인이 실패되었을 경우에는 검사를 하지 않는다. 이는 시스템 관리자 모르게 공격자가 엄청난 양의 패스워드를 시도할 수 있게 한다.

6. rexd
 rexd는 어떤 원격 호스트라도 목표 시스템에 명령어를 실행할 수 있게 하는 RPC 서비스이다. 이서비스는 어떤 유닉스 시스템에는 기본적으로 설정이 되어 있기도 하다. 기억해야 할 것은 모든 rexd 보안 장치는 서버가 아니라 클라이언트 쪽에 있다는 것이다. 그래서 공격자는 자신이 원하는 어떠한 사용자라도 공격이 가능하다. 아주 문제가 많은 서비스이다.


7. Anoymous FTP의 설정이 잘못된 경우
Anoymous FTP 서비스는 필요한 경우가 아니라면 사용하지 않는게 좋다. FTP사이트는 쉽게 설정을 잘못하게 될수 있으며 매뉴얼 페이지의 잘못된 셋업 설명으로 그렇게 되는 경우도 있다. 만약, Anonymous FTP서비스를 꼭 사용해야 한다면 Auscert 안내서를 읽고 제대로 설정을 하는 것이 필요하다. 공격자들은 잘못 설정이 되어있는 사이트를 불법 소프트웨어를 교환하는 장소로 사용하기도 한다.

8. finger
 finger 서비스는 호스트 시스템에서 정확한 계정이름을 알아내는데 사용된다. 어떤 버전은 'walk’이라는 명령어를 사용해서 공격자가 시스템내의 모든 사용자의 목록을 확인할수 있기도 하며, 어떤 버전은 시스템의 utmp파일을 공격자에게 보여줘 어떤 사용자가 시스템을 사용하고 있는지 확인 할 수 있게 한다. 어떤 버전은 원격에서 프로그램을 실행할수 있게 하기도 한다. 항상 finger 서비스는 사용하지 않는게 좋다.

9. 일반적인 Recon 메커니즘
finger, systat, netstat, rusersd등은 사용자 이름과 넷트웍 통계치, 프로세스등의 정보를 구하는데 사용되어 질수 있다. 이 모든 서비스들은 공격자가 목표로 하는 시스템의 정보를 얻느데 도움을 준다. Systat과 netstat을 사용한다면 공격자는 목표 시스템에서 실행되는 프로세서와 넷트웍 설정정보를 알수 있다. Rusersd 와 rstatd 와 같은 rpc서비스는 공격자가 누가 시스템을 사용하고 있는지와 시스템을 모니터링 해서 공격계획을 만들게 도와 준다.

10. NIS (old YP 서비스)
이 서비스는 정말로 많은 문제점을 가지고 있다. 공격자가 패스워드 파일을 얻을 수도 있으며 어떤 경우에는 명령어를 실행할 수 있게 하기도 한다. 만약, NIS서비스가 정말로 필요하다면 NIS+를 구해서 적절한 패치를 해야만 한다. 정말로 필요한 상황이 아니라면 NIS 서비스는 사용하지 않는 것이 좋다.

11. RPC Portmapper
어떤 버전은 공격자가 “프록시” 공격이 가능하게 한데 공격자가 시스템에 임의의 RPC call이 만들어 지게 하여 시스템의 보안 규정을 뚫고 침입할 수 있게 한다. 이 서비스는 현제 사용이 가능한 모든 RPC를 복사할 수 있게 하여 공격자가 취약점을 찾는데 도음을 줄수있다. 만약 rpc서비스를 사용하지 않는다면 모두 꺼놓는게 좋을 것이다. 아니면 Wisetse Venema의 ortmapper 교체란 문서를 읽어 보는 것이 좋을 것이다.

12. NFS
 NFS 는 역시 많은 문제점을 가지고 있다. 공격자가 NFS를 사용해서 파일을 읽거나 쓸수도 있으며 다른 많은 방법을 통해서 파일을 제어할 수 있게한다. 먼저 사용하는 OS에 맞는 가장 최신 버전의 NFS 버전을 구해서 사용하는게 많은 잘 알려진 문제를 막는 방법이다.
그리고 사용자가 필요한 디렉토리만 사용할수 있도록 해주며 절대로 ‘/’ 루트디렉토리를 사용하게 해서는 안된다. 그리고 fsirnad라는 유틸리티 프로그램을 구하여 패치를 한후 파일이 랜덤으로 제어되도록 해야만 한다. 그리고 할수 있다면 읽기전용으로만 사용을 허가하고 읽기와 쓰기를 허가할때는 사용자가 root권한을 주어서도 안된다. 최근에는 인터넷상에서 NFS를 사용하는 것을 금하며 내부에서만 사용하도록 권하고 있다.

13. WWW Server
만약 WWW서버의 사용이 필요하지 않다면 꺼 놓아야 한다. 많은 공격자가 기본 cgi-bin파일을 공격해서 서버를 원격조정하려 한다. 만약 WWW서버를 사용한다면 cgi-bin디렉토리의 모든파일을 지워야 한다. 많은 WWW서버와 함께 제공되는 cgi-bin은 보안 취얒점을 가지고 있다. HTTP서비스는 SendMail 서버와 마찬가지로 공격자가 공격할수 있는 많은 방법이 있다. 이것은 잘못된 서버 설정에도 이유가 있으며 서버의 버그, cgi스크립트의 버그등에도 문제가 있을 수 있다. 지금까지 엄청나게 많은 공격방법이 나와있다. 만약 전문가가 원격조작을 할 목적으로 서버를 스캔한다면 그것은 분명히 http서비스 포트가 될것 임이 분명하다.

14. SMTP
 SMTP서버의 최신 버전을 사용하고 있는지 확인 해야 한다. Sendmail, Smail, 그리고 다른 메일 프로그램들도 모두 문제점을 가지고 있다. DoD공격으로부터 원격제어 프로그램까지 다양한 공격방법이 있다. 만약 메일서버가 메일을 제대로 처리하지 못한다면 당장 메일 서버를 꺼야 할것이다. 만약 정말로 메일서버를 운영해야만 한다면 항상 최신버젼을 구해 사용하거나 qmail 아니며 postfix로 바꾸는 것을 권한다.

15. SNMP
많은 SNMP데몬과 서비스의 셋업은 쉽게 추측이 가능하다. 이것은 공격자가 넷트웍 디바이스를 다시 설정하게 되며, 정보가 구할 수 있다. 필요하지 않다면 정지 시켜놓는 것이 좋으며, 사용을 해야 될 때엔 최신의 버전을 구하거나 SNMPv2를 구해서 사용하자.

16. TFTP
 Trivial File Transfer Protocol . 이름에서 말하는 데로 이 서비스는 공격자가 시스템 파일을 건드릴 수 있게 한다. 이 서비스는 아무런 인증도 없이 누구나 시스템에 들어와 어떠한 파일도 일을 수 있게 한다. 또한 많은 라우터 제작 회사들의 기기에도 TFTP가 기본으로 설치되어 있어 공격자가 중요한 설정 파일을 빼내갈 수 있는 위험이 있다.

17. X윈도우
 공격자는 X윈도우의 클라이언트를 사용해서 키보드 입력을 읽을 수도 있고 스크린 샷을 복사 할수도 있으며 , 로그인 한 사용자처럼 명령어를 시용할 수 도 있다.
만약, X윈도우를 사용한다면 X와 관련된 기기들의 보안설정을 확인 해야 한다. 그리고 xhost파일과 xauth파일도 확인하도록 하자.

18. Generic RPC services
 (rusers, sprayd, walld, rexd, …)
많은 RPC서비스는 문제를 가지고 있다. 만약, 사용하지 않는다면 정지시키도록 하자. ‘statd’라는 서비스는 침입자가 주로 시스템의 제어를 얻기 위해 사용된다. ‘statd’는 꼭 패치를 하거나 사용하지 말도록 하자. 다른 ‘ttdbserverd’는 원격 오버플로우 공격이 가능하다.

19. DNS
항상 최신판의 DNS버전을 구해서 사용해야 한다. 네임서버를 사용한다면 버퍼 오버런이나 cache poisoning과 같은 공격을 받을 수 있다. 당신 시스템의 이름이 외부DNS에서 어떻게 보여지는지 조심해야 한다. 일반적으로 “gauntlet-fw.name.com”이라는 이름은 공격자가 보기에 gauntlet firewall 이런 식으로 추측할 수 있기 때문이다. 그리고 BIND를 chroot() 환경에서 사용하는것도 생각해보아야 한다.

20. IMAP/POP
매우 일반적인 공격방법이며 피해를 심각한 서비스이다. 버퍼오버런에 쉽게 노출되어 원격에서 루트 명령어를 실행할 수 있게 하기도 한다. 가장 최신 버전으로 항상 업데이트 해야하며 필요없는 경우엔 정지시켜야 한다. POP서비스를 사용하는 사용자가 내부에 있다고 항상 서비스를 사용해야 하는 것은 아니며 외부의 POP 서버를 사용하게 할수 도 있다. 어떤 POP서버는 로그인이 실패했을 경우엔 알려주지 않을 때가 있는데 공격자가 관리자 모르게 계속해서 패스워드를 시도해 볼 수가 있다. 그리고, 만약에 업데이트를 하지 않았다면 POP/IMAP은 기본적으로 암호화 되지 않은 암호를 사용한다. 그래서 누군가 스니퍼를 사용한다면 패스워드를 알아낼 수도 있다. 암호화된 암호를 의해서 APOP을 사용하는것도 좋다.


21. 삼바 (Samba)
삼바 서비스는 많은 리눅스 시스템에서 기본으로 설정이 되어 있는 서비스이다. 관리자가 파일을 모두 공유하면 문제가 생길 수가 있다. 삼바의 오래된 버전은 공격자가 루트의 권한으로 파일을 실행할 수 있는 버퍼오버런 취약점을 가지고 있다. 삼바 서비스를 사용하지않거나 가장 최신의 버전을 구해서 사용해야 하며 파일을 권한이 없는 사용자가 사용할 수 없도록 설정을 잘해야 한다.

22. 패스워드 알아내기 (Password Sniffing)
 Password Sniffing은 가장 무서운 공격중에 하나이다. 이 방법 자체는 그렇게 뛰어난 것은 아니지만 나중에 공격자가 매우 사용량이 많은 시스템에 스니퍼를 설치해 놓았을 경우엔 많은 수의 시스템을 제어하게 될 수도 있기 때문이다. 그리고 일단 공격자가 패스워드를 알아냈을 경우엔 다른 일반유저들 사이에서 찾아내기가 매우 힘들다. 이공격의 방어법은 공격자가 시스템을 제어하는 것을 막아버리거나 SSH 같은 암호화된 세션을 사용하는 프로그램을 사용하는 것이다.

23. Temporary change
가끔씩 사람들은 임시로 서버를 셋팅하고 사용하기도 하는데 문제점은 임시로 잠시 바꾸어 둔 것을 잃어버린 경우이다. 임시로 서버의 셋팅을 바꾸거나 하는 것은 좋지 않다.


마지막으로 내부로 들어오는 모든 네트워크를 라우터에서 필터링 하는 것을 권하며 모든 프로그램의 최신버젼의 사용과 적당한 패치를 해줄 것을 권한다. 이것들이 공격을 막아주는 완전한 방법은 아니지만 그래도 할수 있는 최소한의 방법일 것이다. 최근 거에 나오는 거의 모든 OS와 라우터는 필터링 할수 있는 기능을 가지고 있으며 이 기능들을 사용하기를 권한다. 그리고 위의 적은 사항은 최소한의 보안 사항이라는 것을 기억하도록 하자.
 * domking님에 의해서 게시물 이동되었습니다 (2003-06-28 03:23)

댓글목록 0

등록된 댓글이 없습니다.

Copyright © beautipia.co.kr. All rights reserved.

contact : webmaster@beautipia.co.kr

PC 버전으로 보기