360 likes | 535 Views
LINUX SECURITY - 서비스 거부 공격 -. 네트워크 실험실 김 윤 수. 목 차. 서비스 거부 공격 ? DoS 공격이 주는 위협 네트워크 하드웨어 DoS 공격 리눅스 네트워크에 대한 공격 리눅스 애플리케이션 공격 다른 DoS 공격 서비스 거부 공격 방어 요약. 서비스 거부 공격 (DoS) 이란 ?. Denial-of-Service
E N D
LINUX SECURITY- 서비스 거부 공격 - 네트워크 실험실 김 윤 수 #
목 차 • 서비스 거부 공격? • DoS공격이 주는 위협 • 네트워크 하드웨어 DoS공격 • 리눅스 네트워크에 대한 공격 • 리눅스 애플리케이션 공격 • 다른 DoS공격 • 서비스 거부 공격 방어 • 요약 #
서비스 거부 공격(DoS)이란? • Denial-of-Service • 공격자가 호스트의 하드웨어나 소프트웨어 등을 무력하게 만들어 호스트에서 적법한 사용자의 서비스 요구를 거부하도록 만드는 일련의 행위를 의미 • DoS공격이 계속되는 두 가지 이유 • 공격방법이 비교적 단순.용이함 • 공격자의 추적이 어려움 • 완전한 대책이 없는 경우가 많음 • 효과가 즉시 나타남 #
DoS공격이 주는 위협 • 오늘날의 전자상거래나 다른 중요한 서비스 제공에 엄청난 손해를 가져올수 있다. • 1996년 12월 • Webcom.com • 2000년 2월 DoS의 Example • yahoo.com • Amazon.com • BUY.com • eBAY.com • cnn.com #
DoS공격의 예 • 네트워크 하드웨어 공격 • 네트워크 하드웨어에 대한 DoS공격 문제 • 리눅스 네트워킹에 대한 공격 • 리눅스 IP구현상의 문제점과 관련된 서비스에 대한 공격 • 리눅스 애플리케이션에 대한 공격 • 써드파티 애플리케이션에 대한 Dos공격 #
네트워크 하드웨어 DoS공격 • Hardware DoS Attack Example • Nonexistent IP Address • 위조된 주소를 찾지 못하기 때문에 세션 마비 • Engage All available Session • 모든 가능한 세션을 차지함으로써 라우터에 접근 불가 • Login routine’s overflow • 로그인 루틴의 오버 플로우를 이용 유닛 정지나 재부팅 • Packet flood • 다량의 패킷을 발생시킴으로써 네트워크 접속 차단 #
참조 문서 • The Latest in denial of Service Attacks : Smurfing; Description and Information to Minimize Effects .- craig A. Huegen • http://users.quadrunner.com/chuegen/smurf.cgi • Network Ingress Filtering : Defeating Denial of Service Attacks Which Employ IP Source Address Spooing, RFC2267 – P.Ferguson • ftp://ftp.isi.edu/in-notes/rfc2267.txt • Project Neptune documentation on TCP SYN flood attacks from Phrack (and Schiffman), Phrack Magazine, Volume Seven, Issue 48. • Configuring TCP Intercept(Prevent Denial-of –Service Attacks) • Http://www.cisco.com/univercd/cc/td/doc/product/software/iso120/12cgcr/secur_c/scprt3/scdenial.htm #
리눅스 네트워크에 대한 공격(1) • Sesquipedalian.c • Attack Type : IP fragmentation cache attack • Date : March 1999 • Affected Versions : 2.1.89-2.2.3 • Result : IP connection을 끊는다. • Exploit : sesquipedalian.c • Author : horizon • Test Code : http://www.educ.umu.se/~bjorn/mhonarc-files/linux-security/msg01261.htm • Fix or Patch : http://www.educ.umu.se/~bjorn/mhonarc-files/linux-security/msg01261.htm • Fix or patch Author: horizon #
리눅스 네트워크에 대한 공격(2) • Sesquipedalian.c /* Copy the data portions of all fragments into the new buffer. */ fp = qp->fragments; count = qp->ihlen; while(fp) { if ((fp->len <= 0) || ((count + fp->len) > skb->len)) goto out_invalid; memcpy((ptr + fp->offset), fp->ptr, fp->len); if (count == qp->ihlen) { skb->dst = dst_clone(fp->skb->dst); skb->dev = fp->skb->dev; } count += fp->len; fp = fp->next; } #
리눅스 네트워크에 대한 공격(3) • Inetd와 NMAP • Attack Type : Stealth scanning • Date : February 1999 • Affected Versions : 2.x • Result : Various results • Exploit : Run NMAP against your server. Http://www.insecure.org/nmap • Author : Fyodor • Test Code : N/A • Fix or Patch : Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(4) • Inetd와 NMAP • Attack Type : Stealth scanning • Date : February 1999 • Affected Versions : 2.x • Result : Various results • Exploit : Run NMAP against your server. Http://www.insecure.org/nmap • Author : Fyodor • Test Code : N/A • Fix or Patch : Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(5) • Inetd와 NMAP • NMAP는 많은 기능을 포함하고 있는 포관적인 네트워크 스캐너이다.99년 2월에 NMAP은 스텔스 스캔이 inetㅇ를 정지시킬 수도 있다는 것이 발료 • NMAP은 halp-open스캐닝이라고 불리는 TCP SYN스캐닝을 사용한다. 초기응답을 받은후 (실제 연결이 이루어지지기전)에 공격자들은 연결 상태를 초기와 할 수 있는 RST플래그를 포함하는 패킷을 보낸다. NMAP은 RST플래그를 포함하고 있는 패킷을 고속을 많은 양을 플러딩한다. 이것이 종종 inetd를 마비시켜 FTP, TELNET, HTTP같은 네트워크 서비스를 사용하지 못하도록 한다. #
리눅스 네트워크에 대한 공격(6) • Lpd 거짓 프린트 요구 • Attack Type : lpd authentication exploit • Date : December 1998 • Affected Versions : lpr-0.33-1 on RedHat • Result : 프린터를 마비시켜 출력 요구를 거부한다. • Exploit : 거짓 출력 요구를 보낸다. • Author : Martin Lacasse and Kevin K. Sochacki • Test Code : N/A • Fix or Patch : http://mlug.missouri.edu/list-archives/9812/msg00059.html • Fix or patch Author: Kevin K. Sochacki #
리눅스 네트워크에 대한 공격(7) • Lpd 거짓 프린트 요구 • Attack Type : lpd authentication exploit • Date : December 1998 • Affected Versions : lpr-0.33-1 on RedHat • Result : 프린터를 마비시켜 출력 요구를 거부한다. • Exploit : 거짓 출력 요구를 보낸다. • Author : Martin Lacasse and Kevin K. Sochacki • Test Code : N/A • Fix or Patch : http://mlug.missouri.edu/list-archives/9812/msg00059.html • Fix or patch Author: Kevin K. Sochacki #
리눅스 네트워크에 대한 공격(8) • Mimeflood.pl • Attack Type : MIME 혜더 플러드 (flood) • Date : December 1998년 9월 • Affected Versions : Apache 1.25 • Result : web server정지 • Exploit : 잘못된 끝이 없는 MIME헤더를 가지고 공격 • Author : L. Facq • Test Code : http://www.geocities.com/SiliconValley/Campus/6521/flood.txt • Fix or Patch : 코드를 테스트 해보고 제대로 작동하면 Upgrade • Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(9) • portmap • Attack Type : slowport services hang • Date : December 1998년 • Affected Versions : Linux 2.0.33/RPC service(portmap) • Result : RPC 서비스를 죽일수 있다. • Exploit : 연결하고 천천히 RPC 포트에 gabage를 보낸다. • Author : peter van Dijk • Test Code : http://geek-girl.com/bugtraq/1998_1/0499.html • Fix or Patch : upgrad. RPC Service 제거. 신뢰할 수 있는 호스트에게만 RPC 서비스제공 • Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(10) • UNIX Socket Garbage Collecton DoS • Attack Type : socket bomb • Date : December 1998 • Affected Versions : 2.0.x • Result : kernel panic • Exploit : 아래참조 • Author : Floody • Test Code : http://darwin.bio.uci.edu/~mcoogan/bugtraq/msg00016.html • Fix or Patch : http://darwin.bio.uci.edu/~mcoogan/bugtraq/msg00016.html • Fix or patch Author: Floody #
리눅스 네트워크에 대한 공격(11) • Time과 daytime DoS공격 • Attack Type : Stealth scan • Date : November 1997 • Affected Versions : 2.0.x • Result : 시스템 hang/crash • Exploit : Nmap을 이용한 Half-open scan • Author : N/A • Test Code : NMAP • Fix or Patch : Upgrade or inetd.conf에서 time과 daytime을 사용하지 못하도록 한다. • Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(12) • Teardrop.c • Attack Type : IP fragmentaton overlap attack • Date : 1997년 발견 • Affected Versions : 1.x- 2.x • Result : crash, reboot, halt • Exploit : teardrop.c • Author : Mikr shiffman • Test Code : http://www.ryanspc.com/exploits/teardrop.c • Fix or Patch : upgrad or 패치된 ip_fragment.c를 구함 • Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(13) • Ident Flood • Attack Type : ident 질의 요구 플러드 • Date : August 1997 • Affected Versions : 1997년 8월이전 • Result : system hang or may become unusable • Exploit : 많은 수의 ident요구 • Author : jack0@cpio.org • Test Code : http://www.geog.ubc.ca/snag/bugtraq/msg00513.html • Fix or Patch : http://www.geog.ubc.ca/snag/bugtraq/msg00513.html • Fix or patch Author: Theo de Raadt #
리눅스 네트워크에 대한 공격(14) • Lynx/chargen 브라우저 공격 • Attack Type : Memory drain • Date : March 1997 • Affected Versions : 1997 3월 이전 • Result : 시스템 메모리가 급속도로 소비됨 • Exploit : 포트 19번을 통하여 브라우저와 연결 • Author : Doctor who • Test Code : None • Fix or Patch : Upgrade • Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(15) • Nestea.c • Attack Type : IP fragmentation • Date : 1997년 4월 16일 • Affected Versions : 2.0.x – 2.1 • Result : 시스템 정지 • Exploit : nestea.c • Author : humble of rhino9 • Test Code : http://www.geocities.com/webstone.fr/nestea.txt • Fix or Patch : Upgrade or 패치된 ip_fragment.c를 구함 • Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(16) • Pong과 ICMP 플러드 • Attack Type : ICMP 플러드 • Date : unknown • Affected Versions : Generic-router attack • Result : 패킷 스톰과 플러드 발생 • Exploit : pong.c • Author : FA-Q • Test Code : http://pc45.informatik.unibw-muenchen.de/computer/security/sources/pong.c • Fix or Patch : 외부에서 오는 broadcat 패킷의 포워딩금지 • Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(17) • The ping of Death • Attack Type : 크기가 큰 ping 패킷 공격 • Date : unknown • Affected Versions : unknown • Result : 시스템 중지 • Exploit : 테스트 코드 참조 • Author : unknown. Test code Author : Bill Fenner • Test Code : http://bob.urs2.net/computer_security/c%20source%20code/evilping.c • Fix or Patch : upgrade • Fix or patch Author: N/A #
리눅스 네트워크에 대한 공격(18) • Octopus.c • Attack Type : 프로세서 테이블 포화공격 • Date : unknown • Affected Versions : 모든 버전 • Result : 프로세서 과부화. 시스템 crash. 순간적인 DoS • Exploit : octopus.c • Author : unknown. • Test Code : http://www.sekurity-net.com/scripts/octopus.c • Fix or Patch : No specific patch or fix. • Fix or patch Author: N/A #
리눅스 애플리케이션 공격(1) • Netscape Communicator Content Type(1) • Attack Type : Forced bus fault • Date : October 1998 • Affected Versions : Netscape Communicator 4.05 + 4.5b(1) • Result : 커뮤니케이터가 멈추고 버스에러 발생 • Exploit : internal/parser Content type제공 • Author : Jim Paris • Test Code : http://geek-girl.com/bugtraq/1998_4/0034.html • Fix or Patch : Upgrade • Fix or patch Author: N/A #
리눅스 애플리케이션 공격(2) • Netscape Communicator Content Type(1) • Attack Type : Buffer overflow • Date : October 1998 • Affected Versions : Netscape Communicator 4.07 -4.5 • Result : remote 사용자에게 shell을 줄수있다. • Exploit : messages box overflow • Author : Dan Brumleve • Test Code : http://www.shout.net/nothing/buffer-overflow-1/view-buffer-overflow-1.cgi • Fix or Patch : Upgrade • Fix or patch Author: N/A #
리눅스 애플리케이션 공격(3) • Passwd Resource Starvation • Attack Type : Resource Starvation • Date : February 1998 • Affected Versions : Red Hat w/passwd-0.50-7 • Result : /etc/passwd 잠금 • Exploit : 파일크기에 한계를 가진 passwd 호출 • Author : Antonomasia • Test Code : http://www2.metron.ox.ac.uk/~security/archive-199802/0040.html • Fix or Patch : Upgrade • Fix or patch Author: N/A #
리눅스 애플리케이션 공격(4) • xdm • Attack Type : xdm garbage flood • Date : 1887 • Affected Versions : 리눅스 2.0.30 + XFree86 3.3 • Result : 내부 디스플레이를 kill • Exploit : chooser에 의해 사용되는 포트로 텔넷 연결 • Author : Paul H. Hargrove • Test Code : 없음 • Fix or Patch : Upgrade • Fix or patch Author: N/A #
리눅스 애플리케이션 공격(5) • Wtmp lock • Attack Type : wtmp lock • Date : 1996 • Affected Versions : 레드햇 3.0.3, 데비안 1.2(util-linux-2.6) • Result : 로그인 불가 • Exploit : wtmp에 배타적인 잠금을 시행 • Author : NuNO • Test Code : 아래참조 • Fix or Patch : http://wwwdataguard.no/bugtraq/1996_4/0325.html • Fix or patch Author: NuNO #
서비스 거부 공격 방어 • 브로드캐스트 주소 금지 • 외부에서 들어오는 ICMP, PING, UDP 패킷 필터링 • Timeout시간을 조절하여 수없이 많은 연결을 시도하는 연결 큐 공격 예방 • 라우터에서 TCP가로채기 기능이 가능하면 사용하도록 한다. • 공급자가 제공하는 패치나 커널 업데이트버전을 항상 유지 #
참고목록 • Denial of service Attacks on any Internet Server Through SYN flooding – Tom Kermode • http://www.zebra.co.uk/tom/writing/flood.htm • Denial-of-Service Attack –Jeff Downey • http://www.zdnet.com/pcmag/pctech/content/17/08/nt1708.001.html • Denial-of-service Incidents • http://www.cert.org/research/JHThesis/Chapter11.html • Preventing Sumurf Attack-Nordunet • http://www.nordu.net/articles/smurf.html • Spikeman’s DoS site • httP://spikeman.genocide2600.com/frames.html #
요약 • 새로운 DoS공격이 주기적으로 발생하기 때문에 항상 최근 권고안이나 패치를 확인하도록 한다. #