본문 바로가기
IT 놀이터/General

[보안] 웹 해킹 원리와 방어.

by 돼지왕 왕돼지 2014. 1. 25.
반응형


 보안, 웹 해킹 원리와 방어

 

[보안] 웹 해킹 원리와 방어.이미지 출처 : viruslab.tistory.com


방화벽, 백신을 설치해도 웹 해킹은 당한다!!


- HTTP protocol 은 개방형이라 일반 방화벽에서 차단하지 않는다.

- 방화벽에서 outgoing 패킷에 대한 제한이 대부분 설정되어 있지 않다.

- 정상적인 웹 접속을 가장하는 경우 발견이 어렵다.

- 백도어등의 프로그램도 백신의 패턴에 없다면 검출되지 않는다.

- php, asp, jsp 등의 웹쉘을 이용하여 뚫을 수 있다.

- swf, 이미지 파일 감염의 경우도 있다.




웹 해킹의 종류와 기법


1. Injecting Malicious Data

URL 로 전송되는 중요한 데이터를 변조하여 오작동을 유발한다.

- Hidden Field Manipulation : Hidden Field 를 통해 특정 값을 웹 어플리케이션으로 전달.

- Executable File Upload : 업로드하여 원하는 코드를 실행시키는 공격

- HTTPHeader Manipulation : Header 값을 변조하여 공격 진원지 등의 위치를 찾기 힘들게 함.

- Cookie Poisoning : Cookie 정보를 유출시켜 그 정보를 이용 및 감염



2 Exploting Unchecked Input

- SQL Injection : 입력 값을 이용하여 SQL 오작동을 유발시키거나 특정 프로세서, 테이블 등을 삽입하는 공격

- Cross-site Scripting : 악의적인 스크립트를 삽입하는 공격

- Path Traversal : 비정상적인 경로를 이용하여 허가되지 않은 파일에 접근




안전한 웹을 위한 보안프로그램 기법

1. 서버상의 설정

 - apache 설정

  (1) php 및 cgi 실행이 불필요한 디렉터리의 실행권한 제거

  (2) 인증된 브라우저에 대한 접근 허용

  (3) mod_security 적용

  (4) 중간 확장자 사용 못하도록 설정

  (5) ssi 사용하지 말것

 

 - php 설정

  (1) allow_url_include

  (2) allow_url_fopen

  (3) safe_mode

  (4) disable_function

  (5) display_errors

  (6) enable_dl

  (7) error_reporting

  (8) magin_quotes_gpc

  (9) memory_limit

  (10) open_basedir

  (11) register_global

  






2. php 프로그램시 주의사항

 (1) 입력값 체크 : 클라이언트 뿐만 아니라 서버 사이드에서도 체크.

 (2) 파일 업로드 : php, jsp, asp, cgi, exe 등 실행가능한 파일 업로드 안 되도록 설계, 파일명 변경으로 쉽게 유추하지 못하도록 설계

 (3) 파일 다운로드 : 다운로드 파일위치 고정, 해당 디렉터리를 벗어나지 못하도록 경로 지정

 (4) 인크루드 : 단순 변수를 이용하여 인클루드, 특정 경로를 벗어나지 못하도록 인클루드 경로 지정

 (5) 파일오픈 : 프로그램파일 및 시스템설정 파일이 오픈 되지 않도록 설계, 특정 경로를 통해서만 가능하도록 설계

 (6) 외부 명령어 실행 : 가능하면 외부명령어 실행 X, 시스템 명령어는 disable_function에 등록.

 (7) 태그관련 사용 제한 : html 입력시 iframe, script 등의 외부 스크립팅이 되지 않도록 설계.

 (8) 자바스크립트 사용제한 : document, cookie, document.body 와 같은 것은 필터하도록 설계, event 관련 onload, onclick 등의 이벤트 캡쳐는 필터 하도록 설계

 (9) SQL 관련 체크사항

  항상 참이 되는 값을 필터

  SQL 주석 구문 필터

  union 관련 SQL 필터

  데이터 속성 변경 관련 쿼리 제한 및 필터

  데이터 변경 관련 쿼리 제한 및 필터

 





반응형

댓글