• 1분 티타임

실전 버그 바운티 - 웹 해킹 실무 가이드

티타임

다양한 실전 버그 바운티 사례를 소개하는 한편, 취약점을 발견하고 기업에 제보하는 일련의 과정을 알려준다. 기업의 보안 담당자뿐만 아니라, 버그 바운티에 참여하는 화이트해커 모두에게 도움이 될 것이다.

책 소개

취약점을 발견해 제보하고 포상금을 받는 제도인 버그 바운티(bug bounty)에 관한 책이다. 버그 바운티로 기업은 효율적으로 취약점을 찾을 수 있고, 해커는 금전적인 보상을 받을 수 있어 기업과 해커가 상생할 수 있다. 입문자는 실제 기업이 운영하는 서비스를 대상으로 버그를 발견하는 기술적인 경험이 부족할 수 있다. 버그 헌팅 경력자 또한 시간적 제약과 제한된 자료로 인해 다른 제보자들이 신고했던 버그와 관련된 정보를 얻기 쉽지 않다. 이러한 요구를 만족할 수 있도록 다양한 실전 버그 바운티 사례를 소개하는 한편, 취약점을 발견하고 기업에 제보하는 일련의 과정을 알려준다. 기업의 보안 담당자뿐만 아니라, 버그 바운티에 참여하는 화이트해커 모두에게 도움이 될 것이다.


목차

1장. 버그 바운티 기본 사항

__취약점과 버그 바운티

__클라이언트와 서버

__웹 사이트 방문 시 발생하는 작업

____1단계: 도메인 이름 추출

____2단계: IP 주소 확인

____3단계: TCP 연결 설정

____4단계: HTTP 요청 보내기

____5단계: 서버 응답

____6단계: 응답 렌더링

__HTTP 요청

____요청 메서드

____HTTP 상태 비저장

__요약



2장. 오픈 리디렉션

__오픈 리디렉션 작동 방식

__Shopify 테마 설치 오픈 리디렉션

____시사점

__Shopify 로그인 열기 리디렉션

____시사점

__해커원 진입 페이지 리디렉션

____시사점

__요약



3장. HTTP 파라미터 오염

__서버 측 HPP

__클라이언트 측 HPP

__해커원 소셜 공유 버튼

____시사점

__트위터 구독 취소 알림

____시사점

__트위터 웹 인텐트

____시사점

__요약



4장. CSRF

__인증

__GET 요청 기반 CSRF

__POST 요청 기반 CSRF

__CSRF 공격에 대한 방어

__Shopify 트위터 연결 끊기

____시사점

__Instacart 사용자 배송 지역 조작

____시사점

__Badoo 전체 계정 장악

____시사점

__요약



5장. HTML 인젝션과 콘텐츠 스푸핑

__문자 인코딩을 통한 코인 베이스 주석 주입

____시사점

__해커원에서 의도하지 않은 HTML 포함

____시사점

__해커원의 의도하지 않은 HTML 포함 수정 우회

____시사점

__위드인 시큐리티 보안 콘텐츠 스푸핑

____시사점

__요약



6장. 캐리지 리턴 라인피드 인젝션

__HTTP 요청 밀수

__v.shopify.com 응답 분할

____시사점

__트위터 HTTP 응답 분할

____시사점

__요약



7장. 크로스사이트 스크립팅

__XSS의 종류

__Shopify 도매

____시사점

__Shopify 통화 형식

____시사점

__야후! 메일 저장 XSS

____시사점

__구글 이미지 검색

____시사점

__Google 태그 관리자에 저장 XSS

____시사점

__유나이티드 항공 XSS

____시사점

__요약



8장. 템플릿 인젝션

__서버 측 템플릿 인젝션

__클라이언트 측 템플릿 인젝션

__우버 앵귤러JS 템플릿 인젝션

____시사점

__우버 플라스크 진자2 템플릿 인젝션

____시사점

__레일즈 동적 렌더링

____시사점

__유니큰 Smarty 템플릿 인젝션

____시사점

__요약



9장. SQL 인젝션

__SQL 데이터베이스

__SQLi 보안 대책

__야후! 스포츠 블라인드 SQLi

____시사점

__우버 블라인드 SQLi

____시사점

__드루팔 SQLi

____시사점

__요약



10장. 서버 측 요청 위조

__SSRF 영향력 시연

__GET과 POST 요청 호출

__블라인드 SSRF 수행

__SSRF 응답 기반 사용자 공격

__ESEA SSRF와 AWS 메타데이터 쿼리

____시사점

__Google 내부 DNS SSRF

____시사점

__웹후크를 사용한 내부 포트 스캔

____시사점

__요약



11장. XML 외부 엔티티

__확장 가능한 마크업 언어

____문서 유형 정의

____XML 엔티티

__XXE 공격의 작동 방식

__구글 읽기 취약점

____시사점

__마이크로소프트 워드를 이용한 페이스북 XXE

____시사점

__Wikiloc XXE

____시사점

__요약



12장. 원격 코드 실행

__셸 명령 실행

__실행 기능

__원격 코드 실행 권한 상승을 위한 전략

__Polyvore ImageMagick

____시사점

__facebooksearch.algolia.com의 Algolia RCE

____시사점

__SSH를 통한 RCE

____시사점

__요약



13장. 메모리 취약점

__버퍼 오버플로

__경계를 벗어난 읽기

__PHP ftp_genlist() 정수 오버플로

____시사점

__파이썬 Hotshot 모듈

____시사점

__libcurl 경계를 벗어난 읽기

____시사점

__요약



14장. 서브도메인 인수

__도메인 네임 이해

__서브도메인 인수 방법

__Ubiquiti 서브도메인 인수

____시사점

__젠데스크를 지정하는 Scan.me

____시사점

__Windsor 서브도메인 인수

____시사점

__Snapchat Fastly 인수

____시사점

__Legal Robot 인수

____시사점

__우버 센드그리드 메일 인수

____시사점

__요약



15장. 레이스 컨디션

__해커원 초대 다중 수락

____시사점

__Keybase 한도 초과 초대

____시사점

__해커원 지급 레이스 컨디션

____시사점

__Shopify 파트너 레이스 컨디션

____시사점

__요약



16장. 안전하지 않은 직접 객체 참조

__간단한 IDOR 찾기

__더 복잡한 IDOR 찾기

__Binary.com 권한 상승

____시사점

__Moneybird 앱 생성

____시사점

__Twitter Mopub API 탈취

____시사점

__ACME 고객 정보 노출

____시사점

__요약



17장. OAuth 취약점

__OAuth 작업 흐름

__슬랙 OAuth 토큰 훔치기

____시사점

__디폴트 비밀번호로 인증 전달

____시사점

__마이크로소프트 로그인 토큰 도용

____시사점

__페이스북 공식 액세스 토큰 전환

____시사점

__요약



18장. 애플리케이션 로직과 구성 취약점

__Shopify 관리자 권한 우회

____시사점

__트위터 계정 보호 우회

____시사점

__해커원 시그널 조작

____시사점

__해커원의 잘못된 S3 버킷 권한

____시사점

__GitLab 이중 인증 우회

____시사점

__야후! PHP 정보 공개

____시사점

__해커원 Hacktivity 투표

____시사점

__PornHub의 Memcache에 접근

____시사점

__요약



19장. 나만의 버그 바운티 찾기

__정찰

____서브도메인 열거

____포트 스캐닝

____스크린샷

____콘텐츠 발견

____이전의 버그

__애플리케이션 테스트

____기술 스택

____기능 매핑

____취약점 찾기

__더 나아가기

____작업 자동화

____모바일 앱 살펴보기

____새로운 기능 식별

____자바 스크립트 파일 추적

____새로운 기능에 대한 비용 지불

____기술 학습

__요약



20장. 취약점 보고서

__정책 읽기

__세부 사항 포함

__취약점 재확인

__여러분의 평판

__회사에 대한 존경 표시

__바운티 보상 어필

__요약

저자 소개

피터 야로스키 (지은이)
이 책에서 다루는 내용을 포함해 앞서 활동한 해커들이 공유해준 방대한 지식을 자습하면서 성장한 해커다. 또한 세일즈 포스(Salesforce), 트위터(Twitter), 에어비앤비(Airbnb), 버라이즌 미디어(Verizon Media), 미 국방부의 도움을 받으며 버그 바운티 사냥꾼으로 성공적인 활동을 했다. 현재 쇼피파이(Shopify)에서 애플리케이션 보안 엔지니어로 전자상거래 보안 강화와 관련된 업무를 담당하고 있다.


이진호 (옮긴이)
성균관대학교 컴퓨터교육과를 졸업한 후 기업은행과 금융결제원을 거쳐 금융보안원에서 일하고 있다. 보안 이외에도 다른 사람에게 지식을 전달하는 일에 관심이 많고 보안 관련 지식을 나누고자 번역을 시작했다. 에이콘출판사에서 펴낸 『금융 사이버 보안 리스크 관리』(2019), 『*OS internals Vol.3』(2018), 『디펜시브 시큐리티 핸드북』(2018), 『사물 인터넷 시대를 위한 보안 가이드』(2017), 『iOS Application Security』(2017), 『파이썬 모의 해킹과 침투 테스팅』(2015)을 번역했다. 링크드인(https://www.linkedin.com/in/pub-ezno/)에서 만나볼 수 있다.


김현민 (옮긴이)
현재 금융보안원에서 취약점 분석과 모의해킹 업무를 수행하고 있다. 주요 관심분야는 버그 헌팅과 인공지능이며, 수년간 국내외 소프트웨어에서 다수의 취약점을 발견해 제보했다. 저서로는 『윈도우 시스템 해킹 가이드: 버그헌팅과 익스플로잇』(SECU BOOK, 2016)이 있다.


연관 도서