PART 1 어떻게 보안에 접근해야 할까?
Chapter 01 보안을 바라보는 방법
1. 보안에 대한 접근 방법
2. 보안이 어렵게 느껴지는 이유
3. 보안의 공격과 방어 측면의 차이
PART 2 보안을 이해하기 위한 중심 개념
Chapter 01 암호화와 복호화
1. 암호화의 여러 종류
2. 치환 및 이동
3. 대칭키 암호화
4. 비대칭키 암호화
5. 단방향 암호화 - 해시
6. 제3자 인증 형태 - 설계적 인증
7. 마무리하며
Chapter 02 인젝션
1. 인젝션이란?
2. SQL Injection 살펴보기
3. SQL 인젝션 기본 방어 전략
4. 방어 전략 1 - Prepared Statements 살펴보기
5. 방어 전략 2 - 스토어드 프로시저(Stored Procedure 살펴보기
6. SQL 인젝션 방어 전략 정리
7. Prepared Statement 사용 예외 사항
8. 그 외의 Injection들
9. 마무리하며
Chapter 03 스크립트 문제
1. 자바스크립트에 영향을 주는 요소들
2. 자바스크립트 공격의 종류
3. 반사(Reflected vs 저장(Stored XSS 공격 살펴보기
4. 브라우저 입장에서 생각해 보기
5. XSS 방어 코드 예제 보기
6. 응용 - 비동기 호출과의 만남
7. XSS 방어 설계
8. 마무리하며
Chapter 04 클라이언트 코드
1. 클라이언트 코드의 의미
2. 웹에서의 클라이언트 코드
3. 웹의 1세대 - 창고
4. 웹의 2세대 - 동적 페이지
5. 웹의 3세대 - 비동기 호출 페이지(AJAX
6. 클라이언트 vs 서버 코드
7. 피들러로 클라이언트 코드 조작하기
8. 모든 것에 대한 믹스 및 정리
9. 클라이언트 코드의 OWASP TOP 10에서의 의미
10. 모바일(PC에서의 클라이언트 코드
11. 클라이언트 코드의 OWASP Mobile TOP 10에서의 의미
12. 마무리하며
Chapter 05 업
보안 분야도 여러 사람이 다양한 생각 및 관점을 가지고 접근하고 이해하겠지만, 이 책에서는 데이터를 따라가는 직업이라는 시작점에서 진행하고자 합니다. 챕터마다 보안을 이해하는 데 있어 필요한 주제들을 선정해 이야기하며, 구글 검색과 파이썬 코드로 작성한 예제 파일의 실행을 통하여 관련된 데이터를 보여주고 증명합니다.
리눅스에서 쉘을 잘 이해하면 원하는 모든 작업을 그 연장선상에서 쉽게 할 수 있다고 얘기하듯, 업무에서 파이썬을 잘 이용하면 여러 OS 환경에서 자연스럽게 비슷한 효과를 누릴 수 있다고 생각합니다. 파이썬을 경험하지 않은 분들이 이 책의 예제들을 살펴본 후, "파이썬이 참 편하고 재미있구나!"라고 생각하게 되기를 바랍니다