HOME > 상세정보

상세정보

안전한 웹을 위한 코딩 한줄의 정석 : 웹 어플리케이션 취약성을 제거하라 (13회 대출)

자료유형
단행본
개인저자
德丸浩 박건태, 역 신대호, 역
서명 / 저자사항
안전한 웹을 위한 코딩 한줄의 정석 : 웹 어플리케이션 취약성을 제거하라 / Hiroshi Tokumaru 지음 ; 박건태, 신대호 옮김
발행사항
서울 :   로드북,   2012  
형태사항
496 p. : 삽화 ; 24 cm
원표제
體系的に學ぶ安全なwebアプリケ-ションの作り方 : 脆弱性が生まれる原理と對策の實踐
ISBN
9788997924011
일반주기
색인수록  
000 00997namcc2200289 c 4500
001 000045727830
005 20121113094709
007 ta
008 121109s2012 ulka 001c kor
020 ▼a 9788997924011 ▼g 93560
040 ▼a 211009 ▼c 211009 ▼d 211009
041 1 ▼a kor ▼h jpn
082 0 4 ▼a 005.8 ▼2 23
085 ▼a 005.8 ▼2 DDCK
090 ▼a 005.8 ▼b 2012z11
100 1 ▼a 德丸浩 ▼0 AUTH(211009)101791
245 1 0 ▼a 안전한 웹을 위한 코딩 한줄의 정석 : ▼b 웹 어플리케이션 취약성을 제거하라 / ▼d Hiroshi Tokumaru 지음 ; ▼e 박건태, ▼e 신대호 옮김
246 1 9 ▼a 體系的に學ぶ安全なwebアプリケ-ションの作り方 : ▼b 脆弱性が生まれる原理と對策の實踐
246 3 ▼a Taikeiteki ni manabu anzen na uebu apurikeshon no tsukurikata : ▼b zeijakusei ga umareru genri to taisaku no jissen
260 ▼a 서울 : ▼b 로드북, ▼c 2012
300 ▼a 496 p. : ▼b 삽화 ; ▼c 24 cm
500 ▼a 색인수록
700 1 ▼a 박건태, ▼e▼0 AUTH(211009)110339
700 1 ▼a 신대호, ▼e▼0 AUTH(211009)52519
900 1 0 ▼a Tokumaru, Hiroshi, ▼e
945 ▼a KLPA

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.8 2012z11 등록번호 111679539 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 2 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.8 2012z11 등록번호 121223138 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.8 2012z11 등록번호 111679539 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.8 2012z11 등록번호 121223138 도서상태 대출가능 반납예정일 예약 서비스 B M

컨텐츠정보

책소개

재미있고 쉽게 안전한 웹을 만들기 위한 가장 필요한 지식을 습득할 수 있도록 돕는 책. 지루한 이론은 과감하게 배제하여 요리조리 수정해가면서 다양한 상황도 만들어가며 재미있게 실습하며 배울 수 있다. SQL 인젝션, 크로스사이트 스크립팅, 세션 관리 인젝션, OS 커맨드 인젝션 등 흔히 코딩에서 발생하기 쉬운 취약성을 철저하게 파헤쳐 실전 대책까지 제시한다.

여러분의 웹을 지키는 일은 이제 옵션이 아니라 필수입니다. "웹의 안전엔 관계가 없다고요?" 여러분의 코딩 한줄이 고객과 회사에 큰 피해를 입힐 수 있다는 생각을 해보세요. 시간을 조금만 투자하면 재미있고 쉽게 안전한 웹을 만들기 위한 가장 필요한 지식을 습득할 수 있습니다. 그것도 지루한 이론은 과감하게 배제하였습니다. 요리조리 수정해가면서 다양한 상황도 만들어가며 재미있게 실습하며 배울 수 있습니다. 한번 도전해보세요.

샘플원고 살펴보기 → roadbook.co.kr/90

[대상 독자]
웹사이트 서비스를 만드는 프로그래머
웹사이트 서비스 관련 업무 종사자

[주요 내용]
웹 어플리케이션 취약성을 제거하라!
무심코 날린 코딩 한줄이 대형 보안 사고를 부른다!

이론서가 아닙니다!!
여러분의 웹을 안전하게 지켜줄 수 있는 단 몇줄의 코딩 원칙과 대책을 제시합니다.

실습 환경을 고스란히 제공합니다!! 가상머신 다운로드 URL 제공!!
실습이 어렵다고요? 우분투 리눅스 기반의 가상머신 이미지를 제공하여 여러분이 따로 실제 웹 환경을 구축할 필요가 없습니다. 위험하게 실제 사이트를 테스트해볼 필요도 없습니다. 그리고 소스를 수정하며 안전하게 마음껏 테스트해보세요.
여러분의 웹을 지키는 일은 이제 옵션이 아니라 필수입니다. 난, 웹의 안전엔 관계가 없다구요? 여러분의 코딩 한줄이 고객과 회사에 너무나 큰 피해를 입힐 수 있다는 생각을 해보세요. 시간을 조금만 투자하면 재미있고 쉽게 안전한 웹을 만들기 위한 가장 필요한 지식을 습득할 수 있습니다.

반드시 알아야 할 대표적인 취약성을 완벽하게 파헤칩니다!!
SQL 인젝션, 크로스사이트 스크립팅, 세션 관리 인젝션, OS 커맨드 인젝션 등 흔히 코딩에서 발생하기 쉬운 취약성을 철저하게 파헤쳐 실전 대책까지 제시합니다.

[편집자 코멘트]
이 책을 진행하면서 가장 신기했던 게 실습 환경을 가상머신 이미지로 제공해준다는 것이었습니다. 편집자인 저도 우분투 환경의 가상 머신에서 이 책에서 제시하는 취약성 샘플들을 실습해보고 대책까지 만들어보면서 조금은 신기하다는 생각까지 했습니다. 덤으로 전체 웹 시스템에 대한 지식까지 얻은 기분이 들었습니다. 전체 웹사이트가 이렇게 돌아가겠구나, 아~ 이런 부분이 취약하고 이렇게 대처를 해야겠구나, 하는 생각들이 너무나 자연스럽게 들었습니다.
비전문가인 저도 쉽게 따라 해보며 전체적인 개념을 잡기에 충분했던 것 같습니다. 여러 분도 도전해보시기 바랍니다. 딱딱한 이론서가 아니라 진짜 실무에 필요한 소중한 지식을 얻을 수 있을 것으로 확신합니다.


정보제공 : Aladin

저자소개

Hiroshi Tokumaru(지은이)

1985년 쿄세라 주식회사에 입사한 후 소프트웨어 개발, 기획 분야의 업무를 하였다. 1999년에 휴대전화 관련 인증 과금 기반 방식 설계를 담당하게 된 것을 계기로 웹 어플리케이션 보안에 흥미를 갖게 되었다. 2008년에 독립하여 취약성 검진 및 컨설팅 업무를 하며 블로그에 글을 올리거나 관련 세미나를 개최 하는 등의 보안 관련 활동을 하고 있다. 현재 HASH 컨설팅 주식회사 대표, 쿄세라 커뮤니케이션 시스템 주식회사 기술자문, 독립 행정법인 정보 처리 추진 기구(IPA) 연구원이다. Twitter ID @ockeghem

박건태(옮긴이)

시스템 프로그래머이다. 현재 클라우드 컴퓨팅(Cloud Computing)과 콘텐츠 딜리버리 네트워크(CDN) 전문기업 ㈜솔루션 박스에서 Iass 기반 Cloud를 개발 중이다. 일본에서 임베디드 리눅스 기반의 다양한 어플리케이션을 개발했고 SI 업체에서 다수의 시스템을 개발했다. MVC를 확장한 경량 프레임워크를 개발해 오픈 소스로 제공한 뒤 귀국했다. 저서로는 《Jlet으로 배우는 위피 프로그래밍》(한빛미디어, 2005), 역서로는 《Java 언어로 배우는 리팩토링 입문》(한빛미디어, 2007), 《프로그래밍 콘테스트 챌린징》(로드북, 2011), 《웹 디자이너를 위한 jQuery》(로드북, 2011)가 있다.

신대호(옮긴이)

웹 개발자이다. 일본에서 웹 솔루션 관련 SI 업무를 다수 진행하였고 웹 스크립트 언어를 중점적으로 다루고 있다. 현재는 게임회사에 근무 중이며 게임 서비스에 필요한 웹 개발을 진행하고 있다. 웹 개발 영역에서 프론트 프레임워크의 중요성이 커져 React, Vue 등의 서비스 도입을 진행하였다.

정보제공 : Aladin

목차

목차
지은이 머리말 = 3 
옮긴이 머리말 = 4 
CHAPTER 1 웹 어플리케이션 취약성이란?   
 1.1 취약성이란, '악용할 수 있는 버그' = 14  
 1.2 취약성이 있으면 안 되는 이유 = 16  
 1.3 취약성 발생의 원인 = 20  
 1.4 보안 버그와 보안 기능 = 21  
 1.5 책의 구성 = 22 
CHAPTER 2 실습 환경 구축   
 2.1 실습 환경의 개요 = 24 
 2.2 VMware Player 설치 = 26  
 2.3 가상 머신 설치 및 동작 확인 = 29  
 2.4 Fiddler 인스톨 = 38 
CHAPTER 3 웹 보안의 기초: HTTP, 세션 관리, SOP   
 3.1 HTTP와 세션 관리 = 46 
  COLUMN : 쿠키 몬스터 문제   
 3.2 수동적 공격과 Same Origin Policy = 78  
  COLUMN : 제삼자의 JavaScript를 허가하는 경우   
  COLUMN : X-FRAME-OPTIONS  
CHAPTER 4 안전성을 위협하는 웹 어플리케이션 버그  
 4.1 웹 어플리케이션 기능과 취약성의 관계 = 94 
 4.2 입력 처리와 보안 = 98  
  COLUMN : 문자 인코딩의 자동 변환과 보안   
  COLUMN : 입력값과 프레임워크   
 4.3 표시 처리에 관한 취약성 문제 = 116  
  4.3.1 크로스 사이트 스크립팅(기본편) = 116  
  4.3.2 크로스 사이트 스크립팅(발전편) = 137  
  4.3.3 에러 메시지에서 정보 유출 = 151  
 4.4 SQL 호출에 따른 취약성 = 152  
  4.4.1 SQL 인젝션 = 152  
  COLUMN : DB 안의 테이블명, 컬럼명의 조사 방법   
  COLUMN : MDB2를 채용한 이유   
 4.5 중요한 처리를 할 때에 생기는 취약성 = 177  
  4.5.1 Cross-Site Request Forgeries. CSRF = 177  
  COLUMN : 내부 네트워크에 대한 CSRF 공격   
  COLUMN : 토큰과 원타임 토큰   
  COLUMN : 업로드한 파일로 서버측 스크립트의 실행   
  COLUMN : 파일명에 의한 XSS 주의   
  COLUMN : 확장자를 체크할 때의 주의사항   
 4.6 세션 관리의 취약성 = 196  
  4.6.1 세션 하이재킹의 원인과 영향 = 196  
  4.6.2 추측 가능한 세션 ID = 199  
  4.6.3 URL 포함 세션 ID = 204  
  4.6.4 세션 ID의 고정화 = 212  
 4.7 리다이렉트 처리 관련 취약성 = 226  
  4.7.1 오픈 리다이렉터 취약성 = 227  
  COLUMN : 쿠션 페이지   
  4.7.2 HTTP 헤더 인젝션 = 235  
  COLUMN : HTTP Response 분할 공격   
  COLUMN : HTTP 헤더와 개행   
  COLUMN : PHP header 함수는 개행을 어디까지 체크하는가   
  4.7.3 리다이렉트 처리에 관한 취약성 정리 = 250  
 4.8 쿠키 출력에 관한 취약성 = 251  
  4.8.1 쿠키의 부적절한 이용 = 252  
  COLUMN : 패딩 오라클 공격과 MS10-070 
  4.8.2 쿠키의 Secure 속성에 관한 취약성 = 255  
 4.9 메일 송신 문제 = 267  
  4.9.1 메일 송신 문제의 개요 = 267  
  4.9.2 메일 헤더 인젝션 취약성 = 269  
 4.10 파일 접근에 발생하는 문제 = 281  
  4.10.1 디렉토리 트레버셜 취약성 = 282  
  COLUMN : 스크립트의 소스로부터 줄줄이 정보가 누설된다   
  COLUMN : basename 함수와 널 바이트  
  4.10.2 의도하지 않은 파일 공개 = 290  
 4.11 OS 커맨드를 호출할 때 발행하는 취약성 = 294  
  4.11.1 OS 커맨드 인젝션 = 294  
 4.12 파일 업로드에서 발생하는 문제 = 312  
  4.12.1 파일 업로드 문제의 개요 = 312  
  COLUMN : 메모리 사용량이나 CPU 사용 시간 등 다른 리소스에도 주의  
  4.12.3 파일 다운로드에 의한 크로스 사이트 스크립팅 = 325  
  COLUMN : BMP 형식에 대한 주의와 MS07-057  
  COLUMN : 이미지를 별도의 도메인에서 제공하는 경우   
 4.13 인클루드에서 발생하는 문제 = 343  
  4.13.1 파일 인클루드 공격 = 343  
  COLUMN : RFI 공격의 다양성 
 4.14 eval에서 발생하는 문제 = 353  
  4.14.1 eval 인젝션 = 353  
 4.15 공유 자원에 관한 문제 = 362  
  4.15.1 경합 상태 취약성 = 362  
CHAPTER 5 대표적인 보안 기능 
 5.1 인증 = 370  
  5.1.1 로그인 기능 = 370  
  5.1.2 무작위 공격에 대한 대책 = 379  
  5.1.3 패스워드 저장 방법 = 383  
  COLUMN : 데이터베이스 암호화와 패스워드 보호  
  COLUMN : 암호학적 해시 함수가 만족되는 요건   
  COLUMN : 패스워드 누출 경로 
  5.1.4 자동 로그인 = 395  
  5.1.5 로그인 폼 = 404  
  COLUMN : 패스워드는 꼭 마스크 표시 해야 하는가  
  5.1.6 에러 메시지의 요건 = 406  
  5.1.7 로그아웃 기능 = 407  
  5.1.8 인증 기능 정리 = 409  
 5.2 계정 관리 = 413  
  5.2.1 유저 등록 = 413  
  5.2.2 패스워드 변경 = 419  
  5.2.3 메일주소의 변경 = 420  
  5.2.4 패스워드 리마인더 = 422  
  5.2.5 계정의 정지 = 426  
  5.2.6 계정의 삭제 = 427  
  5.2.7 계정 관리 정리 = 427  
 5.3 인가 = 428  
  5.3.1 인가란? = 428  
  5.3.2 인가가 불충분한 전형적인 예 = 429  
  COLUMN : 비밀정보를 포함한 URL에 의한 인가 처리   
  5.3.3 인가 제어의 요건 정의 = 433  
  COLUMN : 롤이란? 
  5.3.4 인가 제어의 올바른 구현 = 434  
  5.3.5 정리 = 435  
 5.4 로그 출력 = 436  
  5.4.1 로그 출력의 목적 = 436  
  5.4.2 로그의 종류 = 437  
  5.4.3 로그 출력의 요건 = 438  
  5.4.4 로그 출력의 구현 = 441  
  5.4.5 정리 = 442  
CHAPTER 6 웹사이트의 안전성을 높이기 위해
 6.1 서버에 대한 공격 경로와 대책 = 445  
  6.1.1 기반 소프트웨어의 취약성을 이용한 공격 = 445  
  6.1.2 부적절한 로그인 = 445  
  6.1.3 대책 = 446  
  COLUMN : 취약성에 대한 책임 = 455  
 6.2 속임수 대책 = 455  
  6.2.1 네트워크적인 속임수 = 455  
  COLUMN : VISA 도메인 문제 
  6.2.2 피싱 = 457
  6.2.3 웹사이트 속임수 대책 = 457  
  COLUMN : 무료 서버 증명서 
 6.3 감청, 변조 대책 = 462  
  6.3.1 감청, 변조의 경로 = 462  
  6.3.2 중간자 공격 = 463  
  COLUMN : 루트 증명서를 도입하지 않고 시키지도 않는 일   
  COLUMN : SSL의 확인 아이콘  
  6.3.3 대책 = 467  
 6.4 맬웨어 대책 = 470  
  6.4.1 웹사이트의 맬웨어 대책이란 = 470  
  6.4.2 맬웨어 감염 경로 = 471  
  6.4.3 웹 서버 맬웨어 대책의 개요 = 472  
  6.4.4 웹 서버에 맬웨어가 감염되지 않게 하는 대책 = 472  
  COLUMN : 웹사이트의 바이러스 대책과 검블러의 관계 
 6.5 정리 = 476  
CHAPTER 7 안전한 웹 어플리케이션을 위한 개발 관리 
 7.1 개발 관리에서 보안 정책의 전체 이미지 = 478 
 7.2 개발 체제 = 480  
 7.3 개발 프로세스 = 483  
  7.3.1 기획 단계의 유의점 = 483  
  7.3.2 발주시 유의점 = 483  
  COLUMN : 취약성에 대한 책임
  7.3.3 요건 정의시의 주의점 = 484
  7.3.4 기본 설계의 진행 방법 = 486  
  7.3.5 상세 설계, 프로그그래밍시의 유의점 = 486  
  7.3.6 보안 테스트의 중용성과 방법 = 486  
  7.3.8 수주자 측 테스트 = 487  
  7.3.9 발주자 측 테스트(검수) = 488  
  7.3.10 운용 단계의 유의점 = 488  
 7.4 정리 = 490  

관련분야 신착자료