'2012/10'에 해당되는 글 3건
- 2012.10.12 :: [신간소개] 안전한 웹을 위한 코딩 한줄의 정석
- 2012.10.12 :: (예제소스) 안전한 웹을 위한 코딩 한줄의 정석 10
- 2012.10.12 :: [오탈자 정보] 안전한 웹을 위한 코딩 한줄의 정석
l 저자: Hiroshi Tokumaru
l 역자: 박건태, 신대호
l 페이지: 496
l 판형: 4x6배변형(188x235)
l 도수: 1도
l 정가: 28,000원
l 발행일: 2012년 11월 2일
l ISBN: 978-89-97924-01-1 93560
[강컴] [교보] [리브로] [반디] [11번가] [알라딘] [예스24] [인터파크]
[실습 가상머신 및 소스 다운로드] ☞ 클릭하세요!!
_도서 내용
여러분의 웹을 지키는 일은 이제 옵션이 아니라 필수입니다. “웹의 안전엔 관계가 없다고요?” 여러분의 코딩 한줄이 고객과 회사에 큰 피해를 입힐 수 있다는 생각을 해보세요. 시간을 조금만 투자하면 재미있고 쉽게 안전한 웹을 만들기 위한 가장 필요한 지식을 습득할 수 있습니다. 그것도 지루한 이론은 과감하게 배제하였습니다. 요리조리 수정해가면서 다양한 상황도 만들어가며 재미있게 실습하며 배울 수 있습니다. 한번 도전해보세요.
_대상 독자
웹사이트 서비스를 만드는 프로그래머
웹사이트 서비스 관련 업무 종사자
_목차
CHAPTER 1 웹 어플리케이션 취약성이란?
1.1 취약성이란, ‘악용할 수 있는 버그’
1.2 취약성이 있으면 안 되는 이유
1.3 취약성 발생의 원인
1.4 보안 버그와 보안 기능
1.5 책의 구성
CHAPTER 2 실습 환경 구축
2.1 실습 환경의 개요
2.2 VMware Player 설치
2.3 가상 머신 설치 및 동작 확인
2.4 Fiddler 인스톨
CHAPTER 3 웹 보안의 기초: HTTP, 세션 관리, SOP
3.1 HTTP와 세션 관리
COLUMN 쿠키 몬스터 문제
3.2 수동적 공격과 Same Origin Policy
COLUMN 제삼자의 JavaScript를 허가하는 경우
COLUMN X-FRAME-OPTIONS
CHAPTER 4 안전성을 위협하는 웹 어플리케이션 버그
4.1 웹 어플리케이션 기능과 취약성의 관계
4.2 입력 처리와 보안
COLUMN 문자 인코딩의 자동 변환과 보안
COLUMN 입력값과 프레임워크
4.3 표시 처리에 관한 취약성 문제
4.3.1 크로스 사이트 스크립팅(기본편)
4.3.2 크로스 사이트 스크립팅(발전편)
4.3.3 에러 메시지에서 정보 유출
4.4 SQL 호출에 따른 취약성
4.4.1 SQL 인젝션
COLUMN DB 안의 테이블명, 컬럼명의 조사 방법
COLUMN MDB2를 채용한 이유
4.5 중요한 처리를 할 때에 생기는 취약성
4.5.1 Cross-Site Request Forgeries. CSRF
COLUMN 내부 네트워크에 대한 CSRF 공격
COLUMN 토큰과 원타임 토큰
COLUMN 업로드한 파일로 서버측 스크립트의 실행
COLUMN 파일명에 의한 XSS 주의
COLUMN 확장자를 체크할 때의 주의사항
4.6 세션 관리의 취약성
4.6.1 세션 하이재킹의 원인과 영향
4.6.2 추측 가능한 세션 ID
4.6.3 URL 포함 세션 ID
4.6.4 세션 ID의 고정화
4.7 리다이렉트 처리 관련 취약성
4.7.1 오픈 리다이렉터 취약성
COLUMN 쿠션 페이지
4.7.2 HTTP 헤더 인젝션
COLUMN HTTP Response 분할 공격
COLUMN HTTP 헤더와 개행
COLUMN PHP header 함수는 개행을 어디까지 체크하는가
4.7.3 리다이렉트 처리에 관한 취약성 정리
4.8 쿠키 출력에 관한 취약성
4.8.1 쿠키의 부적절한 이용
COLUMN 패딩 오라클 공격과 MS10-070
4.8.2 쿠키의 Secure 속성에 관한 취약성
4.9 메일 송신 문제
4.9.1 메일 송신 문제의 개요
4.9.2 메일 헤더 인젝션 취약성
4.10 파일 접근에 발생하는 문제
4.10.1 디렉토리 트레버셜 취약성
COLUMN 스크립트의 소스로부터 줄줄이 정보가 누설된다
COLUMN basename 함수와 널 바이트
4.10.2 의도하지 않은 파일 공개
4.11 OS 커맨드를 호출할 때 발행하는 취약성
4.11.1 OS 커맨드 인젝션
4.12 파일 업로드에서 발생하는 문제
4.12.1 파일 업로드 문제의 개요
COLUMN 메모리 사용량이나 CPU 사용 시간 등 다른 리소스에도 주의
4.12.3 파일 다운로드에 의한 크로스 사이트 스크립팅
COLUMN BMP 형식에 대한 주의와 MS07-057
COLUMN 이미지를 별도의 도메인에서 제공하는 경우
4.13 인클루드에서 발생하는 문제
4.13.1 파일 인클루드 공격
COLUMN RFI 공격의 다양성
4.14 eval에서 발생하는 문제
4.14.1 eval 인젝션
4.15 공유 자원에 관한 문제
4.15.1 경합 상태 취약성
CHAPTER 5 대표적인 보안 기능
5.1 인증
5.1.1 로그인 기능
5.1.2 무작위 공격에 대한 대책
5.1.3 패스워드 저장 방법
COLUMN 데이터베이스 암호화와 패스워드 보호
COLUMN 암호학적 해시 함수가 만족되는 요건
COLUMN 패스워드 누출 경로
5.1.4 자동 로그인
5.1.5 로그인 폼
COLUMN 패스워드는 꼭 마스크 표시 해야 하는가
5.1.6 에러 메시지의 요건
5.1.7 로그아웃 기능
5.1.8 인증 기능 정리
5.2 계정 관리
5.2.1 유저 등록
5.2.2 패스워드 변경
5.2.3 메일주소의 변경
5.2.4 패스워드 리마인더
5.2.5 계정의 정지
5.2.6 계정의 삭제
5.2.7 계정 관리 정리
5.3 인가
5.3.1 인가란?
5.3.2 인가가 불충분한 전형적인 예
COLUMN 비밀정보를 포함한 URL에 의한 인가 처리
5.3.3 인가 제어의 요건 정의
COLUMN 롤이란?
5.3.4 인가 제어의 올바른 구현
5.3.5 정리
5.4 로그 출력
5.4.1 로그 출력의 목적
5.4.2 로그의 종류
5.4.3 로그 출력의 요건
5.4.4 로그 출력의 구현
5.4.5 정리
CHAPTER 6 웹사이트의 안전성을 높이기 위해
6.1 서버에 대한 공격 경로와 대책
6.1.1 기반 소프트웨어의 취약성을 이용한 공격
6.1.2 부적절한 로그인
6.1.3 대책
COLUMN 취약성에 대한 책임
6.2 속임수 대책
6.2.1 네트워크적인 속임수
COLUMN VISA 도메인 문제
6.2.2 피싱
6.2.3 웹사이트 속임수 대책
COLUMN 무료 서버 증명서
6.3 감청, 변조 대책
6.3.1 감청, 변조의 경로
6.3.2 중간자 공격
COLUMN 루트 증명서를 도입하지 않고 시키지도 않는 일
COLUMN SSL의 확인 아이콘
6.3.3 대책
6.4 맬웨어 대책
6.4.1 웹사이트의 맬웨어 대책이란
6.4.2 맬웨어 감염 경로
6.4.3 웹 서버 맬웨어 대책의 개요
6.4.4 웹 서버에 맬웨어가 감염되지 않게 하는 대책
COLUMN 웹사이트의 바이러스 대책과 검블러의 관계
6.5 정리
CHAPTER 7 안전한 웹 어플리케이션을 위한 개발 관리
7.1 개발 관리에서 보안 정책의 전체 이미지
7.2 개발 체제
7.3 개발 프로세스
7.3.1 기획 단계의 유의점
7.3.2 발주시 유의점
7.3.3 요건 정의시의 주의점
7.3.4 기본 설계의 진행 방법
7.3.5 상세 설계, 프로그그래밍시의 유의점
7.3.6 보안 테스트의 중용성과 방법
7.3.8 수주자 측 테스트
7.3.9 발주자 측 테스트(검수)
7.3.10 운용 단계의 유의점
7.4 정리
_주요 내용
웹 어플리케이션 취약성을 제거하라!
무심코 날린 코딩 한줄이 대형 보안 사고를 부른다!
이론서가 아닙니다!!
여러분의 웹을 안전하게 지켜줄 수 있는 단 몇줄의 코딩 원칙과 대책을 제시합니다.
실습 환경을 고스란히 제공합니다!! 가상머신 다운로드 URL 제공!!
실습이 어렵다고요? 우분투 리눅스 기반의 가상머신 이미지를 제공하여 여러분이 따로 실제 웹 환경을 구축할 필요가 없습니다. 위험하게 실제 사이트를 테스트해볼 필요도 없습니다. 그리고 소스를 수정하며 안전하게 마음껏 테스트해보세요.
여러분의 웹을 지키는 일은 이제 옵션이 아니라 필수입니다. 난, 웹의 안전엔 관계가 없다구요? 여러분의 코딩 한줄이 고객과 회사에 너무나 큰 피해를 입힐 수 있다는 생각을 해보세요. 시간을 조금만 투자하면 재미있고 쉽게 안전한 웹을 만들기 위한 가장 필요한 지식을 습득할 수 있습니다.
반드시 알아야 할 대표적인 취약성을 완벽하게 파헤칩니다!!
SQL 인젝션, 크로스사이트 스크립팅, 세션 관리 인젝션, OS 커맨드 인젝션 등 흔히 코딩에서 발생하기 쉬운 취약성을 철저하게 파헤쳐 실전 대책까지 제시합니다.
_편집자 코멘트
이 책을 진행하면서 가장 신기했던 게 실습 환경을 가상머신 이미지로 제공해준다는 것이었습니다. 편집자인 저도 우분투 환경의 가상 머신에서 이 책에서 제시하는 취약성 샘플들을 실습해보고 대책까지 만들어보면서 조금은 신기하다는 생각까지 했습니다. 덤으로 전체 웹 시스템에 대한 지식까지 얻은 기분이 들었습니다. 전체 웹사이트가 이렇게 돌아가겠구나, 아~ 이런 부분이 취약하고 이렇게 대처를 해야겠구나, 하는 생각들이 너무나 자연스럽게 들었습니다.
비전문가인 저도 쉽게 따라 해보며 전체적인 개념을 잡기에 충분했던 것 같습니다. 여러 분도 도전해보시기 바랍니다. 딱딱한 이론서가 아니라 진짜 실무에 필요한 소중한 지식을 얻을 수 있을 것으로 확신합니다.
_저자 소개
지은이
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 업체에서 다수의 프로젝트를 진행하였고 스크립트 언어를 중점적으로 다루고 있다. 현재 게임 업체의 웹 서비스 개발을 하고 있다.
_상세 이미지
'신간소개' 카테고리의 다른 글
[신간소개] 자바의 신 VOL.1, 기초 문법편 (4) | 2013.02.27 |
---|---|
[신간소개] 처음 시작하는 CSS&워드프레스 (0) | 2012.12.10 |
[신간소개] 프로그래머로 산다는 것(절판!!) (0) | 2012.09.17 |
[신간소개] 스토리로 이해하는 UX 디자인 프로세스 (0) | 2012.06.25 |
[신간소개] 이제 실전이다 HTML5&CSS3 사이트 제작의 모든 것 (2) | 2012.04.11 |
이 책에서 제공하는 실습 환경인 가상 머신 이미지입니다. 아래 URL을 클릭하셔서 다운로드 받으세요. 다운로드 하시면 됩니다.
다운로드 ☞ 클릭!!!
***** 다운 후 압축 해제 후****
*********가상 머신의 실행*********
'자료실' 카테고리의 다른 글
(예제 소스) 리버싱 윈도우 (10) | 2013.08.12 |
---|---|
(예제 소스) 처음 시작하는 CSS3&워드프레스 (0) | 2012.12.10 |
(예제소스) 이제 실전이다, HTML5&CSS3 사이트 제작의 모든 것 (6) | 2012.04.11 |
Xcode4.1 & 4.2 & 4.3 사용자를 위한 가이드 (9) | 2012.01.24 |
(예제소스) 빅 데이터 시대를 위한 NoSQL 핵심 가이드 (0) | 2011.12.19 |
'오탈자 정보' 카테고리의 다른 글
[오탈자 정보] 자바의 신 VOL.1, 기초 문법편 (0) | 2013.02.27 |
---|---|
[오탈자 정보] 처음 시작하는 CSS&워드프레스 (2) | 2012.12.10 |
[오탈자 정보] 프로그래머로 산다는 것 (2) | 2012.09.17 |
[오탈자 정보] 스토리로 이해하는 UX 디자인 프로세스 (2) | 2012.06.25 |
[오탈자 정보] 이제 실전이다 HTML5&CSS3 사이트 제작의 모든 것 (40) | 2012.04.11 |