한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.


개인 실습
이 책을 직접 실습해보지 않고 평가하는 건 저자들에 대한 예의가 아니라 생각했다.
책 일부를 정독하고, 4장 37절 리눅스 네임스페이스에 대한 내용을 실습해보며 느낀 점들을 서평으로 남겼다.
Binary Hacks Rebooted - 4.37 리눅스 네임스페이스로 프로세스 분리하기
Binary Hacks Rebooted - 4.37 리눅스 네임스페이스로 프로세스 분리하기 - README.md
gist.github.com

1️⃣ 저수준 프로그래밍 기술
임베디드 개발자들은 어셈블리 수준에서의 조작을 해봤을 것이고, C언어를 사용해봤다면 라이브러리를 타고 들어가다 시스템 콜과 연관된 코드를 본 경험이 있을 것이다. 리눅스 자격증을 취득한 사람들이라면 OS, 커널, 파일, 프로세스 등 컴퓨터 구조와 명령어 사이의 관계에 익숙할 것이다. 보안 전공자라면 이진 파일을 다양한 방식으로 해석할 수 있다는 사실과 도구를 활용해서 디버깅/시뮬레이션을 할 수 있다는 것을 알테고, 애플리케이션 개발자들은 컨테이너와 하이퍼바이저를 이용한 오케스트레이션에 친숙할 것이다. 놀랍게도 앞서 말한 내용들 모두 이 책에서 언급되는 내용이다. 즉, 당신이 무엇을 상상하든 이 책은 그 이상을 다루고 있으리라.


2️⃣ 현대 환경에 필요한 Hack
지금껏 역사는 추상화 계층을 쌓아올라가며 멋진 것을 더 쉽게 만들 수 있도록 발전해왔다. Rust와 WASM, 컨테이너화와 Unikernel 등 너무나 멋진 기술들이 문제 해결을 위해 등장했다. 이 책은 그러한 변혁을 고려하여 저수준 프로그래밍 기술을 현대 시스템의 구조적 변화와 필요에 맞춰 폭넓게 다루고 있다. 하드웨어의 연산 효율이나 컴퓨터 구조와 같은 본질은 쉽게 변하지 않지만, 그 본질이 중요해지는 맥락이 바뀌었다는 사실을 책을 읽으며 느낄 수 있었다.
이번에 알게된 Unikernel도 정말 참신한 아이디어라 생각한다. 기존에 alpine 버전이나 Dockerfile을 활용하여 간소화한 빌드를 만드는 차원이 아니라, 애플리케이션에 필요한 기능만 탑재하여 커널 수준에 최적화하는 방식이다. 빌드 크기 감소와 성능 개선은 당연하고, 공격 표면을 감소시켜 보안을 향상시킬 수 있다는 점이 핵심이라 생각한다. 이로서 특정한 이미지에 취약점이 발견되더라도, 향후에는 해당 기능이 의존하는 시스템 콜을 포함하는 기능을 이미지에서 제외하고 빌드하는 식으로 실시간 패치가 가능해질지도 모른다.

3️⃣ 차근차근 따라할 수 있는 구성
솔직히 평소에 저수준으로 프로그래밍 할 일이 없어서, 이 책에 있는 내용 대부분은 잘 모른다. 하지만 이 책은 앞서 다룬 내용을 바탕으로 뒤의 내용을 설명하기 때문에, 처음부터 순차적으로 읽으면서 차근차근 이해를 쌓아나가기 좋게 구성되었다. 실습에 필요한 소스 코드도 레포에 정리되어있고, 시뮬레이션에 필요한 명령어 실행 방식과 결과도 중요하고 필요한 부분만 간결하게 표현해두어 읽기 편했다.
GitHub - chinium/binary-hacks-rebooted: 『Binary Hacks Rebooted』のサポートリポジトリ
『Binary Hacks Rebooted』のサポートリポジトリ. Contribute to chinium/binary-hacks-rebooted development by creating an account on GitHub.
github.com
이 책의 특징
⚠️ GNU/Linux OS에 집중한다
이 책은 대부분 GNU/linux를 기반으로 서술되어 있다. 그래서 Windows는 WSL 또는 Docker나 Podman 같은 가상화 환경을 준비할 필요가 있다. macOS는 POSIX 호환성을 갖춘 UNIX 기반의 OS이기에 비교적 접점이 많은 편이다. 하지만 x86-64와 AArch64 명령어 집합 아키텍처의 차이 등 자신이 사용하는 mac 기기가 저수준에서 어떤 차이를 갖는지 인지하고 있어야 올바른 결과를 얻을 수 있을 것이다.
🙅♂️ 어렵다
평소에 자주 다루지 않는 저수준의 내용들이라 익숙하지 않음도 있겠지만, 깊이가 있어 대체적으로 좀 어렵다. 개인적으로는 읽으면 '아 그런 말이구나' 이해는 갔는데, 막상 직접 활용하고 응용하라하면 못할 것 같다.
마치며...
이 책의 저자는 모두 일본인이다. 그러고보면 일본에는 장인정신을 가진 사람들이 참 많은 것 같다. 우직하게 한 우물을 파내려가는 그들의 모습은 가치를 창출해내는 근로자의 관점에서는 다소 비효율적으로 보일 수도 있다. 오히려 그렇기에 Hacking이 더 예술적이고 아름답게 느껴지는지도 모른다. 내게도 언젠가 하나에 열중하게 되는 날이 찾아오길 바란다.
'Insight > 서평' 카테고리의 다른 글
| [서평] 스프링 부트 개발자 온보딩 가이드 (0) | 2025.12.23 |
|---|---|
| [서평] 헤드퍼스트 소프트웨어 아키텍처 (0) | 2025.10.27 |
| [서평] 스프링 6 레시피 (5판) (0) | 2025.09.28 |
| [서평] 개발자를 위한 IT 영어 온보딩 가이드 (1) | 2025.07.28 |
| [서평] 자바 최적화 (3) | 2025.06.26 |