웹 모의해킹 및 시큐어코딩 진단가이드

보안 구축 및 웹 모의해킹 완벽 가이드
$43.20
SKU
9788996427520
+ Wish
[Free shipping over $100]

Standard Shipping estimated by Mon 05/20 - Fri 05/24 (주문일로부 10-14 영업일)

Express Shipping estimated by Wed 05/15 - Fri 05/17 (주문일로부 7-9 영업일)

* 안내되는 배송 완료 예상일은 유통사/배송사의 상황에 따라 예고 없이 변동될 수 있습니다.
Publication Date 2014/04/07
Pages/Weight/Size 190*241*35mm
ISBN 9788996427520
Categories IT 모바일 > 네트워크/해킹/보안
Description
이 책에서는 모의해킹 및 시큐어코딩 점검을 수행하기 위한 진단기준 및 취약점 유형을 상세하게 설명하고있으며, 이론에 대한 모의실습을 통해 실전을 위한 점검 Know-How 를 상세하게 제공하고 있다.
Contents
ART 01 개요

01 기술적 진단
1.1 기술적 진단유형
1.2 웹 모의진단
1.3 진단방법의 장?단점 비교
1.4 진단기준

02 HTTP 프로토콜
2.1 HTTP Request
2.1.1 GET 메소드
2.1.2 POST 메소드
2.1.3 기타 메소드
2.2 HTTP Response

PART 02 모의해킹

01 SQL Injection
1.1 SQL Injection 유형
1.1.1 논리적 에러를 이용하는 SQL Injection
1.1.2 두 개 이상의 쿼리를 이용하는 Union SQL Injection
1.1.3 쿼리 가능 여부를 이용하는 Blind SQL Injection
1.1.4 저장 프로시저를 이용하는 Stored Procedure SQL Injection
1.1.5 타임기반의 Blind SQL Injection
1.1.6 에러기반의 SQL Injection
1.2 사례분석
1.2.1 게시판 목록에 대한 공격(1)
1.2.2 게시판 목록에 대한 공격(2)
1.3 모의실습
1.3.1 로그인 페이지에 대한 인증우회
1.3.2 MySQL DB공격 쿼리테스트
1.3.3 MySQL DB공격을 통한 데이터베이스 정보추출
1.3.4 MSSQL DB공격 쿼리테스트
1.3.5 MSSQL DB공격을 통한 데이터베이스 정보추출(1)
1.3.6 MSSQL DB공격을 통한 데이터베이스 정보추출(2)
1.3.7 MSSQL 저장프로시저를 통한 공격
1.3.8 Oracle DB공격을 통한 데이터베이스 정보추출
1.3.9 SQL Injection 자동진단

02 XML 취약점
2.1 Xpath 개념
2.2 모의실습
2.2.1 Xpath Injection(1)
2.2.2 Xpath Injection(2)
2.2.3 XML Injection

03 HTTP응답분할
3.1 사례분석
3.1.1 Response Header 조작
3.1.2 Response Data 조작
3.2 모의실습
3.2.1 CRLF 자동진단
3.2.2 CSP(Content Security Policy) 우회

04 XSS
4.1 XSS 종류
4.1.1 Reflected XSS
4.1.2 Stored XSS
4.1.3 DOM XSS
4.1.4 XSS 공격패턴
4.2 모의실습
4.2.1 Reflected XSS(1)
4.2.2 Reflected XSS(2)
4.2.3 DOM XSS(1)
4.2.4 DOM XSS(2)
4.2.5 Stored XSS를 통한 쿠키가로채기

05 파일 업로드
5.1 사례분석
5.1.1 기본 파일 업로드
5.1.2 확장자 검사우회를 통한 파일 업로드
5.1.3 IIS 취약점을 이용한 파일 업로드
5.1.4 공개게시판 취약점을 이용한 파일 업로드
5.1.5 널바이트를 이용한 파일 업로드
5.1.6 HTTP 메소드를 악용한 파일 업로드
5.1.7 SQL Injection을 이용한 파일 업로드
5.1.8 Exploit를 통한 root 권한획득
5.2 모의실습
5.2.1 MIME타입 변조 및 우회
5.2.2 파일 업로드를 통한 리버스쉘 실행
5.2.3 JPG 코드 내에 PHP 코드 삽입을 통한 업로드 공격
5.3 웹쉘
5.3.1 웹쉘의 특징
5.3.2 웹쉘 분석방법
5.3.3 웹쉘 분석예제

06 파일 다운로드
6.1 사례분석
6.1.1 URL파라미터 변조
6.1.2 운영체제별 접근방식
6.1.3 널바이트 인젝션
6.1.4 멀티 파라미터 변조
6.1.5 히스토리 파일을 통한 계정과 암호추출
6.1.6 웹로그를 통한 관리자권한 획득
6.1.7 HTTP헤더 값 변조를 통한 시스템파일 접근
6.2 모의실습
6.2.1 시스템파일 다운로드
6.2.2 소스파일 다운로드
6.2.3 Shadow 파일 다운로드 및 분석

07 파라미터변조
7.1 사례분석
7.1.1 타인비밀글 보기
7.1.2 공지사항 글변조(1)
7.1.3 공지사항 글변조(2)
7.1.3 자바스크립트로 구성된 수정/삭제페이지 정보노출
7.1.4 파일 삽입(LFI/RFI)
7.1.5 명령어 삽입
7.1.6 URL Redirection
7.2 모의실습
7.2.1 파일 삽입(LFI/RFI)
7.2.2 명령어 삽입
7.2.3 웹서버의 버퍼오버플로우 점검

08 취약한 세션관리
8.1 세션상태유지 기법
8.2 사례분석
8.2.1 히든필드 변조
8.2.2 쿠키 변조
8.2.3 쿠키가로채기
8.2.4 가입정보 변조
8.2.5 관리자 페이지 접근우회
8.2.6 게시판 글 작성자 이름변조
8.2.7 쿠키종류에 따른 취약성 테스트
8.3 모의실습
8.3.1 SQL Injection을 이용한 인증우회
8.3.2 HTTP BruteForce 공격

09 자바스크립트 검사로직우회
9.1 사용자측 및 서버측 스크립트 비교
9.2 사례분석
9.2.1 공지사항 글 변조
9.2.2 글 복사방지 우회
9.2.3 쿠키 검사우회
9.2.4 파일 업로드 확장자검사 우회
9.3 모의실습
9.3.1 문자열 길이체크 우회

10 디렉토리 노출
10.1 취약유형
10.1.1 IIS
10.1.2 탐켓
10.1.3 아파치
10.1.4 디렉토리 노출을 통한 기타 취약점 탐색
10.2 모의실습
10.2.1 툴을 통한 디렉토리 노출 점검
10.2.2 구글검색을 통한 디렉토리 노출 점검
10.3 조치방안

11 HTTP Method 악용 홈페이지 변조
11.1 WebDAVA 서비스
11.2 HTTP PUT 메소드 악용
11.3 모의실습
11.3.1 홈페이지 변조

12 에러노출
12.1 에러노출의 종류
12.2 에러노출과 SQL Injection과의 관계
12.3 모의실습
12.3.1 에러출력
12.3.2 에러노출 자동화 점검
12.4 조치방안

13 검색엔진악용
13.1 사고사례
13,2 구글검색 목록
13.2.1 구글검색 키워드
13.3 모의실습
13.3.1 구글해킹 키워드 검색
13.3.2 구글해킹 키워드 자동검색
13.3.3 구글해킹 키워드 검색 툴 제작
13.4 대책

14 정보노출
14.1 디폴트 페이지 노출
14.2 백업파일 노출
14.3 웹 서버정보 노출
14.4 개인정보 노출
14.5 데이터평문전송
14.6 관리자 페이지 노출
14.7 테스트 페이지 노출
14.8 소스 노출

PART 03 소스코드(시큐어코딩) 취약점 분석

01 소스코드 취약점 분석
1.1 소스코드 분석도구 및 테스트케이스
1.1.1 오픈소스 분석도구
1.1.2 상용소스코드 분석도구
1.1.3 소스점검을 위한 테스트용 소스(Testcase)
1.2 소스코드 취약점 분석절차
1.3 개발언어별 점검키워드
1.3.1 ASP
1.3.2 PHP
1.3.3 JAVA/JSP
1.3.4 .NET

02 소스코드 취약점 국내점검기준
2.1 SQL Injection
2.1.1 취약사례(ASP)
2.1.2 취약사례(PHP)
2.1.3 취약사례(JAVA/JSP)
2.1.4 취약사례(C#)
2.2 자원삽입
2.2.1 취약사례(JAVA/JSP)
2.3 크로스사이트스크립팅
2.3.1 취약사례(ASP)
2.3.2 취약사례(JAVA/JSP)
2.3.3 취약사례(JavaScript)
2.3.4 취약사례(PHP)
2.3.5 취약사례(C#)
2.4 운영체제 명령실행
2.4.1 취약사례(ASP)
2.4.2 취약사례(PHP)
2.4.3 취약사례(JAVA/JSP)
2.5 파일 업로드(위험한 형식 파일 업로드)
2.5.1 취약사례(ASP)
2.5.2 취약사례(PHP)
2.5.3 취약사례(JAVA/JSP)
2.5.4 취약사례(C#)
2.6 URL Redirection(신뢰하지 않는 URL 주소로 자동접속연결)
2.6.1 취약사례(ASP)
2.6.2 취약사례(PHP)
2.6.3 취약사례(JAVA/JSP)
2.7 Xquery 삽입
2.7.1 취약사례(JAVA/JSP)
2.8 Xpath 삽입
2.8.1 취약사례(JAVA/JSP)
2.8.2 취약사례(C#)
2.9 LDAP 삽입
2.9.1 취약사례(JAVA/JSP)
2.10 크로스사이트요청위조(CSRF)
2.10.1 취약사례(PHP)
2.11 파일 다운로드(디렉토리 경로조작)
2.11.1 취약사례(ASP)
2.11.2 취약사례(PHP)
2.11.3 취약사례(JAVA/JSP)
2.12 HTTP응답분할(CRLF Injection)
2.12.1 취약사례(ASP)
2.12.2 취약사례(PHP)
2.12.3 취약사례(JAVA/JSP)
2.13 정수오버플로우
2.13.1 취약사례(JAVA/JSP)
2.14 보호매커니즘을 우회할 수 있는 입력 값 변조
2.14.1 취약사례(ASP)
2.14.2 취약사례(PHP)
2.14.3 취약사례(JAVA/JSP)
2.15 적절한 인증없이 중요기능 허용
2.15.1 취약사례(PHP)
2.15.2 취약사례(JAVA/JSP)
2.16 부적절한 인가
2.16.1 취약사례(ASP)
2.16.2 취약사례(PHP)
2.17 중요한 자원에 대한 잘못된 권한설정
2.17.1 취약사례(PHP)
2.17.2 취약사례(C)
2.17.3 취약사례(JAVA/JSP)
2.18 취약한 암호화 알고리즘 사용
2.18.1 취약사례(ASP)
2.18.2 취약사례(PHP)
2.18.3 취약사례(JAVA/JSP)
2.19 사용자 중요정보 평문저장 및 전송
2.19.1 취약사례(PHP)
2.19.2 취약사례(JAVA/JSP)
2.20 하드코드된 패스워드
2.20.1 취약사례(ASP)
2.20.2 취약사례(PHP)
2.20.3 취약사례(JAVA/JSP)
2.21 충분하지 않은 키 길이사용
2.21.1 취약사례(JAVA/JSP)
2.22 적절하지 않은 난수 값 사용
2.22.1 취약사례(PHP)
2.22.2 취약사례(JAVA/JSP)
2.23 패스워드 평문저장
2.23.1 취약사례(JAVA/JSP)
2.23.2 취약사례(ASP.NET)
2.24 하드코드된 암호화키
2.24.1 취약사례(JAVA/JSP)
2.24.2 취약사례(C#)
2.25 취약한 패스워드 허용
2.25.1 취약사례(JAVA/JSP)
2.26 영속적인 쿠키를 통한 정보노출
2.26.1 취약사례(JAVA/JSP)
2.27 HTTPS에서 Secure 속성없이 전송되는 쿠키값 노출
2.27.1 취약사례(JAVA/JSP)
2.27.2 취약사례(ASP.NET)
2.28 코멘트를 통한 정보노출(주석문 안에 포함된 패스워드 등 시스템 주요정보)
2.28.1 취약사례(JSP/HTML)
2.28.2 취약사례(JAVA/JSP)
2.29 솔트 값 없는 일방향 함수 사용(솔트없이 일방향 함수 사용)
2.29.1 취약사례(JAVA/JSP)
2.30 무결성 검사없는 코드다운로드
2.30.1 취약사례(PHP)
2.30.2 취약사례(JAVA/JSP)
2.31 검사시점과 사용시점의 경쟁조건(Race condition)
2.31.1 취약사례(JAVA/JSP)
2.32 재귀함수(제어문을 사용하지 않는 재귀함수)
2.32.1 취약사례(JAVA/JSP)
2.33 에러메시지를 통한 정보노출(에러처리)
2.33.1 취약사례(ASP)
2.33.2 취약사례(PHP)
2.33.3 취약사례(JAVA/JSP)
2.34. 대응없는 에러조건탐지(오류상황대응부재)
2.34.1 취약사례(JAVA/JSP)
2.35 적절하지 않은 예외처리
2.35.1 취약사례(JAVA/JSP)
2.36 널포인터역참조
2.36.1 취약사례(JAVA/JSP)
2.37 부적절한 자원해제
2.37.1 취약사례(JAVA/JSP)
2.38 잘못된 세션에 의한 데이터노출
2.38.1 취약사례(JAVA/JSP)
2.39 제거되지 않고 남은 디버그코드
2.39.1 취약사례(JAVA/JSP)
2.40 시스템데이터 정보노출
2.40.1 취약사례(JAVA/JSP)
2.40.2 취약사례(C#)
2.41 Public 메소드로부터 반환된 Private 배열
2.41.1 취약사례(JAVA/JSP)
2.42 Private 배열에 Public 데이터 할당
2.42.1 취약사례(JSP/JAVA)
2.43 DNS Lookup에 의존한 보안결정
2.43.1 취약사례(JAVA/JSP)
2.43.2 취약사례(C#)

PART 04 리포트작성법

01 모의해킹 점검결과 리포트작성
1.1 목차
1.2 작성샘플

02 소스코드취약점 점검결과 리포트작성
2.1 목차
2.2 작성샘플

PART 05 웹 취약점 분석도구(파로스) 개발

01 파로스 소개
1.1 파로스란 무엇인가?
1.2 파로스 다운로드
1.3 JDK 설치 및 설정
1.4 ANT 컴파일 및 실행파일 만들기

02 탐지룰 개발
2.1 개요
2.2 파일 다운로드 탐지룰
2.3 명령어 삽입 탐지룰
2.4 CRLF 삽입 탐지룰
2.5 RFI 삽입 탐지룰
2.6 PUT 메소드를 악용한 홈페이지 변조 탐지룰

03 룰 테스트
3.1 테스트 환경준비
3.2 모의 테스트
Author
최경철,김태한