joen***
2025-10-16

“공격을 알아야 방어가 보인다” 3만 명의 수강생이 열광한 바로 그 강의가 한 권의 책으로! 웹 개발자&정보보안 입문자의 필독서.
"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."
크리핵티브의 한 권으로 끝내는 웹 해킹 바이블
- SQL 인젝션부터 시큐어 코딩까지 이론과 실습으로 익히는 완벽 웹 해킹 가이드

무려 947 페이지나 되는 두께로 정말 바이블 같은 책이다.
Ch1 웹해킹에 대한 이해
Ch2 반드시 알아야 할 웹 해킹 기본지식
HTTP 기본구조 뿐만아니라 버프 스위트 사용방법까지 친절하게 설명한다.
특히 중요한 정보를 전송할때 일반적으로 Get 대신 Post 메서드를 사용한다고 설명한 부분은 굉장히 친절하다. 왜 문제가 발생할 수 있는지, Get을 쓰고 있다가 Post로 바꿨을 때 놓칠 수 있는 부분(로그 파일 점검)까지 설명한다.
Ch3 정보 수집
OSINT, WHOIS, 구글 해킹 등 꼭 필요한 정보들 위주로 구성되어있다.
구글 해킹 부분은 검색을 잘 하기 위한 방법으로도 활용할 수 있다.
Ch4 부터 본격적으로 취약점을 다룬다.
SQL 인젝션의 동작원리 부터 공격목표, 관련사례
해당 취약점의 발생 원인과 원리
취약점의 분석방법, 공격종류와 방법론까지
모두 상세한 캡쳐와 이미지 설명으로 정말 바이블이란 타이틀에 어울리는 설명을 해준다.
SQL 인젝션에 대한 내용만 240페이지를 차지할 정도로 비중있게 다루었다.
Ch4 SQL 인젝션 취약점
Ch5 커맨드 인젝션 취약점
Ch6 XSS 취약점
Ch7 CSRF 취약점
Ch8 파일 다운로드 취약점
Ch9 파일 업로드 취약점
Ch10 파라미터 변조 취약점
Ch11 URL 접근제한 미흡 취약점
각각의 취약점에 대해 공격단계와 방어단계를 구분지어 실습할 수 있게 설명하고 있다.
파일 업로드 취약점을 자세히 살펴보자
파일을 업로드할 경우 요청 메시지는 POST방식과 전혀 다르게 전송된다.
Content-Disposition과 Content-Type 부분에서 어떤 파일을 어떤 형식으로 업로드 하는지 확인할 수 있다.
웹셸 업로드를 위해서 첫번째 단계에서 업로드 기능을 찾아야 한다. 게시판과 같은 게시글 작성 페이지를 우선 살펴본다. “페이지 소스보기” 메뉴로 자바스크립트 코드가 작성된 부분을 확인하고 cheditor.js 를 통해 CHEditor를 사용한다는 것을 알 수 있다.
두번째 단계는 업로드 경로찾기다. 업로드 시 URL을 반환하는 경우와 그렇지 않은 경우를 구분해서 방식을 알려준다. 업로드 할때 URL이 반환되지 않는다면, 다운로드 기능에서 전달받는 데이터를 보는 방법이 있다.
세번째 단계는 실제 파일명 찾기다. 서버측에서 생성한 임의의 파일명으로 업로드 되는 경우 실제 파일명을 프록시 도구를 통해서 추론할 수 있다.
그리고 파일 검증 우회를 한다. 파일 확장자별 블랙리스트와 화이트리스트 방법이 있고 각각을 우회하는 기법을 설명한다. 확장자 뒤에 마침표나 공백을 넣으면 우회되는 경우가 있다.
그 밖에 유추가 어려운 웹셸 파일명을 사용하는 방법부터 테스트 전후 유의사항도 설명해준다.
Ch17에 파일 업로드 취약점을 방어하는 방법에 대한 설명이 있다.
확장자 검증, 서버측 파일명 생성, 올바른 업로드 경로 설정, 경로 조작방지
4가지 방법을 코드와 함꼐 설명하고 시큐어코딩 실습을 할 수 있도록 도와준다.
이 책을 통해 공격자의 뷰에서 시스템을 바라볼 수 있어서 좋았다.
확장자 제어와 실행방지만으로도 충분한 방어가 될 것이라고 생각했는데, 역시 보안은 다단계 방어가 최선이다. 방어자 관점에서 취약점 분석 가이드 들은 많이 봤지만, 역시 최고의 방어는 공격방식 분석 부터이다.
화이트해커를 꿈꾸거나, 보안관제, 취약점 담당자들에게도 깊이 있는 인사이트를 주는 바이블이 맞다!
오늘도 보안을 고민하고 계신 모든 분들이 참고할만한 책이다.