251 likes | 439 Views
실전 해킹 및 보안. Author : 정 대 근 Date : 2003. 10. 07. Contact : 1ndr4@hanmail.net. 1. 해킹의 개요 및 윤리 - 1. 영화에서 엿 볼 수 있는 해킹 / 해커 . ex) Matrix-Reloaded, Battle Royal, Hackers 1,2, … 해킹 / 해커에 대한 막연한 환상. 1. 해킹의 개요 및 윤리 – 2 . 해킹과 크래킹의 사전적 정의 . 해킹 : 시스템과 네트워크에 대해 탐구하고 공부하는 사람 .
E N D
실전 해킹 및 보안 Author : 정 대 근 Date : 2003. 10. 07. Contact : 1ndr4@hanmail.net
1. 해킹의 개요 및 윤리 - 1 • 영화에서 엿 볼 수 있는 해킹/해커. ex) Matrix-Reloaded, Battle Royal, Hackers 1,2, … • 해킹/해커에 대한 막연한 환상.
1. 해킹의 개요 및 윤리 – 2 • 해킹과 크래킹의 사전적 정의. 해킹: 시스템과 네트워크에 대해 탐구하고 공부하는 사람. 크래킹: 지식을 사용해 고의적인 피해를 입히는 사람.
1. 해킹의 개요 및 윤리 - 3 • 해킹과 보안의 양면성. 1. 양 날을 가지는 칼에 비유. ex) 요리사의 칼과 강도의 칼. 2. 활용범위에 따라 좋고 나쁨이 판가름.
1. 해킹의 개요 및 윤리 – 4 • 불법 침입에 의한 결과 원인: 도덕성 결여 • 도의적인 책임 • 불특정 다수에게 피해를 줄 우려
2. 실전 해킹 – 1 (Cookie Spoofing) 2–1. 쿠키란? 서버가 클라이언트의 접속 시 필요로 하는 사용자의 정보를 클라이언트에 저장해 두는 것. <다음 login 후 Cookie 가 생성된 화면>
2. 실전 해킹 – 1 (Cookie Spoofing) • Web Browser 에 서 특정 코드를 실행함으로 Cookie 를 볼 수 있음. Input Code: javascript:alert(document.cookie);
2. 실전 해킹 – 1 (Cookie Spoofing) • 쿠키의 생성 과정.
2. 실전 해킹 – 1 (Cookie Spoofing) 2-2. Cookie Spoofing 의 기본 원리 1. 조작된 Cookie 를 서버로 보내어 인증을 우회한 후 원하는 정보를 얻음. 2. Client 에 서 보내는 정보를 그대로 신뢰하기 때문에 취약점 존재.
2. 실전 해킹 – 1 (Cookie Spoofing) 2-3. Cookie Spoofing 의 실제 적용 <Cookie Spoofing 시연>
2. 실전 해킹 – 1 (Cookie Spoofing) 2-4. Cookie Spoofing 의 대책 • 세션을 사용한 인증. 세션(Session) 이란? 쿠키와 달리 서버에 정보가 저장이 되어 인증하는 방식으로 쿠키만으로 인증할 때 보다는 인증방법이 강화 됨.
3. 실전 해킹 – 2 (Show-file bug) 3-1. show-file bug 란? • 프로그래머의 실수. • 파일을 다루는 루틴이 있는 프로그램. • 서버 내부의 파일이 외부로 유출. • CGI, PHP, ASP 모두에 해당.
3. 실전 해킹 – 2 (Show-file bug) 3-2. show-file bug 의 기본 원리 1. 프로그램 내부에서 파일을 다룰 때 파일이름에 대한 처리를 변수화 해서 사용할 경우. 2. 해당 변수를 사용자가 조작할 수 있는 경우.
3. 실전 해킹 – 2 (Show-file bug) 3-3. Vulnerability Code. <? … $fp = fopen($file, “r”); while(!feof($fp)) { $result = fgets($fp, 1024); echo(“$result”.”<BR>”); } … ?> Ex) http://www.domain.com/board/board.php?id=$file Ex) http://www.domain.com/pds/download.php?filename=$file
3. 실전 해킹 – 2 (Show-file bug) 3-4. show-file bug 실제 적용 <show-file bug 시연>
3. 실전 해킹 – 2 (Show-file bug) 3-5. Bug History. - technote, spboard, wayboard,zeroboard 등의 무료 공개 게시판. - T모 회사에서 개발된 보안 웹 메일 솔루션.(비공개)
3. 실전 해킹 – 2 (Show-file bug) 3-6. show-file bug 의 대책. • 파일을 다루는 변수를 체크. ereg(), strstr(), strncmp(), ..etc • 파일이름을 database 에 저장하고 원래 파일은 임의의 파일이름으로 변경.
4. 실전 해킹 – 3 (PHP injection) 4-1. PHP injection 이란? • PHP 에 속한 URL변수화 기능을 이용 • 공격서버, 공격에 이용할 서버, 클라이언트가 필요.
4. 실전 해킹 – 3 (PHP injection) 4-2. PHP injection 이해를 위한 기본 1. PHP 는 웹 서비스 시에 php 스크립트를 실행 가능하게 해주는 서버용 패키지. 2. php.ini 가 php 설정파일. 3. php.ini 에 설정되어 있는 옵션 중 allow_url_fopen.
4. 실전 해킹 – 3 (PHP injection) 4-3. allow_url_fopen 옵션 • php.ini 설정파일에 기술되어 있음. • “Whether to allow the treatment of URLs (like http:// or ftp://) as files.” • 웹 상의 어떤 파일의 URL 을 변수화 할 수 있는 기능. • On/Off 와 같은 설정으로 기능전환을 할 수 있음.
4. 실전 해킹 – 3 (PHP injection) 4-4. include(), require() 1. include(), require() 는 php 의 함수. 2. 원하는 곳에 다른 파일의 페이지 로드. > include(“test.php”);
4. 실전 해킹 – 3 (PHP injection) 4-5. php injection 의 기본 원리. • 공격할 서버는 php 지원, 공격에 이용할 서버는 php 지원 불가. • php 지원 불가 서버에서 php 페이지를 만들어 웹에서 출력해도 source 형태로 출력. • 공격 대상 서버에서 include() 유사 함수 사용 시, 파일을 변수화 할 때 취약점 존재.
4. 실전 해킹 – 3 (PHP injection) 4-6. php injection 실제 적용 <php injection 시연>
4. 실전 해킹 – 3 (PHP injection) 4-7. php injection 의 대책. php.ini 파일 수정. • allow_url_fopen 기능을 Off 로 설정 후 apache daemon restart 가급적 include() 유사 함수 사용 시, 파일의 변수화는 금지.
- END - Homepage: http://indra.linuxstudy.pe.kr/ E-mail: 1ndr4@hanmail.net