HOME > Detail View

Detail View

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

웹 모의해킹 및 시큐어코딩 진단가이드 (Loan 8 times)

Material type
단행본
Personal Author
최경철 김태한, 저
Title Statement
웹 모의해킹 및 시큐어코딩 진단가이드 = Web application penetration testing & secure coding practice guidelines / 최경철, 김태한 지음
Publication, Distribution, etc
고양 :   Secu Book,   2014  
Physical Medium
663 p. : 삽화 ; 25 cm
ISBN
9788996427520
General Note
감수: 김진수  
색인수록  
보안 구축 및 웹 모의해킹 완벽가이드  
000 00903camcc2200277 c 4500
001 000045799961
005 20140520135331
007 ta
008 140519s2014 ggka 001c kor
020 ▼a 9788996427520 ▼g 93560
035 ▼a (KERIS)BIB000013448323
040 ▼a 211044 ▼c 211044 ▼d 211009
082 0 4 ▼a 005.8 ▼2 23
085 ▼a 005.8 ▼2 DDCK
090 ▼a 005.8 ▼b 2014z2
100 1 ▼a 최경철 ▼0 AUTH(211009)135566
245 1 0 ▼a 웹 모의해킹 및 시큐어코딩 진단가이드 = ▼x Web application penetration testing & secure coding practice guidelines / ▼d 최경철, ▼e 김태한 지음
246 3 1 ▼a Web application penetration testing and secure coding practice guidelines
260 ▼a 고양 : ▼b Secu Book, ▼c 2014
300 ▼a 663 p. : ▼b 삽화 ; ▼c 25 cm
500 ▼a 감수: 김진수
500 ▼a 색인수록
500 ▼a 보안 구축 및 웹 모의해킹 완벽가이드
700 1 ▼a 김태한, ▼e
945 ▼a KLPA

Holdings Information

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Main Library/Monographs(3F)/ Call Number 005.8 2014z2 Accession No. 111718183 Availability Available Due Date Make a Reservation Service B M

Contents information

Book Introduction

모의해킹 및 시큐어코딩 점검을 수행하기 위한 진단기준 및 취약점 유형을 상세하게 설명하고 있으며, 이론에 대한 모의실습을 통해 실전을 위한 점검 Know-How 를 상세하게 제공하고 있다. 모의해킹의 기술적 진단 개념, 취약점 유형별 모의해킹 점검방법, 취약점 유형별 모의해킹 실습 등을 다루고 있다.

이 책에서는 모의해킹 및 시큐어코딩 점검을 수행하기 위한 진단기준 및 취약점 유형을 상세하게 설명하고있으며, 이론에 대한 모의실습을 통해 실전을 위한 점검 Know-How 를 상세하게 제공하고 있다.

< 책의 대상독자 >
모의해킹을 입문하는 보안 초보자
모의해킹 기술을 향상시키려는 보안경험자
시큐어코딩 진단업무에 입문하는 보안 초보자
웹 스캐너와 같은 취약점 점검 툴을 개발하려는 개발자

< 이 책의 내용 및 특징 >
모의해킹의 기술적 진단 개념
취약점 유형별 모의해킹 점검방법
취약점 유형별 모의해킹 실습
소스코드 취약점(시큐어코딩) 점검기준 및 언어별 사례
모의해킹 및 소스코드 점검결과 리포트 작성법
취약점 점검 툴 개발 방법


Information Provided By: : Aladin

Author Introduction

최경철(지은이)

숭실대학교를 졸업하고 동 대학원에서 석사학위를 취득하였으며, 아시아나항공, 펜타시큐리티, STG시큐리티를 거쳐 현재 트리니티소프트에서 보안솔루션 개발과 기획을 하고 있다. 주요 관심분야로는 취약점 분석 툴의 패턴과 탐지근거에 대한 조사 및 개발이며, 관련된 연구를 LNCS 등의 학술지에 논문으로 발표하였다 「시스템해킹의 원리와 이해」, 「네트워크패킷포렌식」 ,「웹해킹과 시큐어코딩 탐지/수정 실습가이드」 등의 저서가 있다.

김태한(지은이)

침투 테스트 업무를 수행하고 있으며, APT(Advanced Persistent Threat) 방법론에 대해 연구를 해왔습니다. 저서로는 『웹 모의해킹 및 시큐어코딩 진단가이드』가 있으며, 침투 테스트를 전반적으로 소개하는 웹 사이트인 www.whitehacker.org(화이트 해커)와 www.secretletter.org(시크릿 레터)를 운영하고 있습니다.

김진수(감수)

현재 트리니티소프트에서 CEO로 재직중이며, 다양한 대외활동을 통해 국내 보안산업에 기여하고 있다.

Information Provided By: : Aladin

Table of Contents

PART 
 01 개요 /17 

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

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

 PART 
 02 모의해킹 /55 

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

 02 XML 취약점 147 
 2.1 Xpath 개념 148 
 2.2 모의실습 152 
 2.2.1 Xpath Injection(1) 153 
 2.2.2 Xpath Injection(2) 156 
 2.2.3 XML Injection 159 

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

 04 XSS 175 
 4.1 XSS 종류 175 
 4.1.1 Reflected XSS 176 
 4.1.2 Stored XSS 178 
 4.1.3 DOM XSS 180 
 4.1.4 XSS 공격패턴 186 
 4.2 모의실습 191 
 4.2.1 Reflected XSS(1) 191 
 4.2.2 Reflected XSS(2) 192 
 4.2.3 DOM XSS(1) 193 
 4.2.4 DOM XSS(2) 195 
 4.2.5 Stored XSS를 통한 쿠키가로채기 199 

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

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

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

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

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

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

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

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

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

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

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

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

 02 소스코드 취약점 국내점검기준 461 
 2.1 SQL Injection 461 
 2.1.1 취약사례(ASP) 464 
 2.1.2 취약사례(PHP) 466 
 2.1.3 취약사례(JAVA/JSP) 467 
 2.1.4 취약사례(C#) 483 
 2.2 자원삽입 484 
 2.2.1 취약사례(JAVA/JSP) 485 
 2.3 크로스사이트스크립팅 488 
 2.3.1 취약사례(ASP) 488 
 2.3.2 취약사례(JAVA/JSP) 489 
 2.3.3 취약사례(JavaScript) 492 
 2.3.4 취약사례(PHP) 493 
 2.3.5 취약사례(C#) 493 
 2.4 운영체제 명령실행 494 
 2.4.1 취약사례(ASP) 494 
 2.4.2 취약사례(PHP) 495 
 2.4.3 취약사례(JAVA/JSP) 495 
 2.5 파일 업로드(위험한 형식 파일 업로드) 496 
 2.5.1 취약사례(ASP) 496 
 2.5.2 취약사례(PHP) 498 
 2.5.3 취약사례(JAVA/JSP) 498 
 2.5.4 취약사례(C#) 499 
 2.6 URL Redirection(신뢰하지 않는 URL 주소로 자동접속연결) 500 
 2.6.1 취약사례(ASP) 501 
 2.6.2 취약사례(PHP) 501 
 2.6.3 취약사례(JAVA/JSP) 501 
 2.7 Xquery 삽입 502 
 2.7.1 취약사례(JAVA/JSP) 502 
 2.8 Xpath 삽입 503 
 2.8.1 취약사례(JAVA/JSP) 503 
 2.8.2 취약사례(C#) 504 
 2.9 LDAP 삽입 505 
 2.9.1 취약사례(JAVA/JSP) 506 
 2.10 크로스사이트요청위조(CSRF) 507 
 2.10.1 취약사례(PHP) 508 
 2.11 파일 다운로드(디렉토리 경로조작) 510 
 2.11.1 취약사례(ASP) 511 
 2.11.2 취약사례(PHP) 512 
 2.11.3 취약사례(JAVA/JSP) 513 
 2.12 HTTP응답분할(CRLF Injection) 514 
 2.12.1 취약사례(ASP) 514 
 2.12.2 취약사례(PHP) 515 
 2.12.3 취약사례(JAVA/JSP) 515 
 2.13 정수오버플로우 516 
 2.13.1 취약사례(JAVA/JSP) 516 
 2.14 보호매커니즘을 우회할 수 있는 입력 값 변조 518 
 2.14.1 취약사례(ASP) 519 
 2.14.2 취약사례(PHP) 519 
 2.14.3 취약사례(JAVA/JSP) 520 
 2.15 적절한 인증없이 중요기능 허용 522 
 2.15.1 취약사례(PHP) 522 
 2.15.2 취약사례(JAVA/JSP) 523 
 2.16 부적절한 인가 525 
 2.16.1 취약사례(ASP) 525 
 2.16.2 취약사례(PHP) 526 
 2.17 중요한 자원에 대한 잘못된 권한설정 527 
 2.17.1 취약사례(PHP) 527 
 2.17.2 취약사례(C) 528 
 2.17.3 취약사례(JAVA/JSP) 529 
 2.18 취약한 암호화 알고리즘 사용 529 
 2.18.1 취약사례(ASP) 530 
 2.18.2 취약사례(PHP) 530 
 2.18.3 취약사례(JAVA/JSP) 531 
 2.19 사용자 중요정보 평문저장 및 전송 532 
 2.19.1 취약사례(PHP) 532 
 2.19.2 취약사례(JAVA/JSP) 533 
 2.20 하드코드된 패스워드 534 
 2.20.1 취약사례(ASP) 535 
 2.20.2 취약사례(PHP) 535 
 2.20.3 취약사례(JAVA/JSP) 537 
 2.21 충분하지 않은 키 길이사용 538 
 2.21.1 취약사례(JAVA/JSP) 538 
 2.22 적절하지 않은 난수 값 사용 540 
 2.22.1 취약사례(PHP) 540 
 2.22.2 취약사례(JAVA/JSP) 541 
 2.23 패스워드 평문저장 542 
 2.23.1 취약사례(JAVA/JSP) 542 
 2.23.2 취약사례(ASP.NET) 543 
 2.24 하드코드된 암호화키 543 
 2.24.1 취약사례(JAVA/JSP) 543 
 2.24.2 취약사례(C#) 544 
 2.25 취약한 패스워드 허용 545 
 2.25.1 취약사례(JAVA/JSP) 545 
 2.26 영속적인 쿠키를 통한 정보노출 546 
 2.26.1 취약사례(JAVA/JSP) 546 
 2.27 HTTPS에서 Secure 속성없이 전송되는 쿠키값 노출 548 
 2.27.1 취약사례(JAVA/JSP) 549 
 2.27.2 취약사례(ASP.NET) 550 
 2.28 코멘트를 통한 정보노출(주석문 안에 포함된 패스워드 등 시스템 주요정보) 551 
 2.28.1 취약사례(JSP/HTML) 551 
 2.28.2 취약사례(JAVA/JSP) 551 
 2.29 솔트 값 없는 일방향 함수 사용(솔트없이 일방향 함수 사용) 552 
 2.29.1 취약사례(JAVA/JSP) 554 
 2.30 무결성 검사없는 코드다운로드 555 
 2.30.1 취약사례(PHP) 555 
 2.30.2 취약사례(JAVA/JSP) 556 
 2.31 검사시점과 사용시점의 경쟁조건(Race condition) 556 
 2.31.1 취약사례(JAVA/JSP) 558 
 2.32 재귀함수(제어문을 사용하지 않는 재귀함수) 560 
 2.32.1 취약사례(JAVA/JSP) 560 
 2.33 에러메시지를 통한 정보노출(에러처리) 561 
 2.33.1 취약사례(ASP) 561 
 2.33.2 취약사례(PHP) 562 
 2.33.3 취약사례(JAVA/JSP) 562 
 2.34. 대응없는 에러조건탐지(오류상황대응부재) 565 
 2.34.1 취약사례(JAVA/JSP) 565 
 2.35 적절하지 않은 예외처리 566 
 2.35.1 취약사례(JAVA/JSP) 566 
 2.36 널포인터역참조 568 
 2.36.1 취약사례(JAVA/JSP) 568 
 2.37 부적절한 자원해제 570 
 2.37.1 취약사례(JAVA/JSP) 570 
 2.38 잘못된 세션에 의한 데이터노출 572 
 2.38.1 취약사례(JAVA/JSP) 573 
 2.39 제거되지 않고 남은 디버그코드 575 
 2.39.1 취약사례(JAVA/JSP) 575 
 2.40 시스템데이터 정보노출 576 
 2.40.1 취약사례(JAVA/JSP) 579 
 2.40.2 취약사례(C#) 580 
 2.41 Public 메소드로부터 반환된 Private 배열 581 
 2.41.1 취약사례(JAVA/JSP) 583 
 2.42 Private 배열에 Public 데이터 할당 584 
 2.42.1 취약사례(JSP/JAVA) 585 
 2.43 DNS Lookup에 의존한 보안결정 585 
 2.43.1 취약사례(JAVA/JSP) 586 
 2.43.2 취약사례(C#) 587 

 PART 
 04 리포트작성법 /589 

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

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

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

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

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

 03 룰 테스트 653 
 3.1 테스트 환경준비 653 
 3.2 모의 테스트 656

New Arrivals Books in Related Fields

Ramamurthy, Bina (2021)
윤관식 (2020)