[도서평] API 해킹의 모든 것

mj·2023년 8월 21일
0

# API 해킹의 모든 것
REST와 그래프QL 웹 API기초부터 보안 취약점, 해킹 툴, 퍼징 등 공격 실습까지

제이펍 서평단

페이스북을 통해서 우연히 신청한 서평단을 통해 이 책을 읽게 되었습니다. 현재 제이펍 페이지에서는 매번 다양한 이벤트와 책을 소개해주는데 IT 서적에 관심이 있다면 꼭 팔로우 해두면 좋을 것 같습니다!

누구를 위한 책인가?

여러분은 프론트엔드에서 호출하는 API나 백엔드에서 개발하는 API에 대해서 얼마나 알고 있나요?
CORS, XSS, SQL 인젝션을 혹시 프레임워크에 의존해서 설정하고 계시지는 않을까요? 책을 통해서 앞으로 내가 보안 전문가가 아니더라도 나의 API를 직접 진단하고 보안 대책을 세울 수 있게 합니다. 이 책은 API 보안을 다뤄 결국에는 API 해킹을 다루는 책입니다. 웹/해킹/보안을 다루는 책이므로 침투 테스트나 보안에 관심있는 백엔드 개발자에게 추천하는 책입니다.

책 내용

정보에 대해서

API 테스트의 범위부터 API 테스트 환경 구축, API 공격 실습과 같은 내용이 담겨 있습니다. 단순히 사이트에 접속하기 위해서 URL을 입력하지만, 사용되는 프로토콜과 DNS, port와 같은 네트워크 구성요소를 사용하여 웹 서버에 데이터를 요청합니다. 이후에는 여러 상호작용을 통해 클라이언트와 웹 서버간의 데이터를 교환합니다. 이때도 네트워크 구성요소가(게이트웨이 등) 사용됩니다. 해킹에는 여러 종류가 있습니다. 네트워크를 공격할 수도 있고, 무차별 대입(brute force) 등 공격자는 다양한 방법으로 해킹을 시도합니다. 소프트웨어 패키지, 운영체제 정보, 시스템 로그, 소프트웨어 버그 등 어떤 정보던 사용하여 공격에 활용합니다. 내가 보내는 요청에는 정보가 담겨 있습니다. 따라서, 해킹의 기본인 정보를 공격자가 쉽게 얻을 수 없도록 하는 것이 가장 중요하다고 합니다.

API 실습을 위하여

칼리리눅스, 버프스위트, 폭시 프록시와 같이 이름만 들어도 어려운 툴들을 사용하는 것만 같은 생각이 든다. 하지만, 책에서 진행하는 절차만 따라도 친절하게 학습 환경을 구축할 수 있습니다.

API 실습

어떤 서비스는 간단하게 github에 접속하여 레포지토리만 들어가도 소스코드를 확인할 수 있다. 소스코드에서 secret key를 찾는 간단한 실습부터, 엔드포인트에 대한 취약점, JWT와 같은 토큰을 악용학나 분석하는 방법도 배울 수 있습니다.
가장 재미있는 부분은 퍼징입니다. 사용자에게 입력권을 준다는 것이 얼마나 무서운 일인지, 유효성 검사의 중요한지 알 수 있습니다.

정리하며

이 책을 읽으면 나름 신경쓴다고 신경쓴 나의 코드들이 도둑들에게 얼마나 활짝 열려있는지 알 수 있습니다. 또한, 해킹에 대해서 모르는 나도 재미있게 API 해킹에 대해서 실습하면서 학습할 수 있습니다. 앞으로 API 취약점에 대해서 항상 분석하면서 보안에 신경쓸 수 있게 해주는 고마운 책입니다. 이 책의 마무리에는 이렇게 써있습니다. 여러분이 API를 테스트하지 않는다면 사이버 범죄자가 여러분 대신 API를 테스트할 겁니다. 앞으로 API 보안에 신경쓸 여러 분에게 이 책을 추천합니다.

0개의 댓글