초보 해커를 위한 칼리 리눅스 입문 - 설치부터 커맨드라인, 파일 시스템, 네트워킹, BASH, 패키지 관리, 로깅, 리눅스 커널 및 드라이버, 보안까지
Occupytheweb 지음, 김세영 외 옮김 / 제이펍 / 2023년 6월
평점 :
장바구니담기


빠르게 사이버 보안에 입문하고 싶다면, 『초보 해커를 위한 칼리 리눅스 입문』

(OccupyTheWeb, 『초보 해커를 위한 칼리 리눅스 입문』, 김세영, 정윤선 옮김, 제이펍, 2023)





『초보 해커를 위한 칼리 리눅스 입문』은 실습을 통해 리눅스 기초 시스템을 이해하고 해킹의 기초를 실습합니다.


이 책의 저자인 OccupyTheWeb은 전직 대학교수이며 정보 기술 분야에서 20년이 넘는 경력을 가지고 있습니다. 그는 미군(육군, 해군, 공군)과 미국 정보기관(CIA, NSA, DNI)를 포함한 미국 전역에서 해커를 육성한 보안 전문가입니다. 그는 해커를 육성하면서 리눅스의 기초가 큰 장벽이 된다는 것을 알았으며, 이를 통해 리눅스의 기초부터 알려주는 이 책을 저술하였습니다.



『초보 해커를 위한 칼리 리눅스 입문』은 총 17장으로 구성됩니다. 

1장부터 10장까지는 리눅스에 대한 개념 이해와 리눅스의 기본 명령어, 파일 탐색, 파일 시스템 관리, 프로세스, 네트워크, 스크립트 제작, 리눅스 파일 시스템 관리 등을 다룹니다.

11장부터 17장까지는 로그 시스템 조작, 웹 서버, 데이터베이스 취약점 학습, 네트워크 해킹, 무선 네트워크, 커널의 동작방식, 스케줄링, 파이썬의 개념과 스캐너, 간단한 암호 크래커를 제작합니다.


왜 리눅스를 배워야 할까?

리눅스/유닉스는 안정성, 신뢰성, 강건함 덕분에 2/3가 넘는 웹서버의 선택을 받게 되었습니다. 또한 대부분의 해킹 도구는 리눅스이고, 오픈소스에다가 투명한 제어 시스템 덕분에 해커들의 사랑을 받고 있습니다. (시작하며)


리눅스/유닉스는 비용과 안정성 측면에서 네트워크 장비의 대다수를 차지하고, 안드로이드와 OS X(Mac OS)또한 리눅스/유닉스에 포함된다. 윈도우OS에 비해서 리눅스는 처음 배우기는 과정이 고통스럽지만, 높은 수준의 제어 기능을 제공하기 때문에 훨씬 더 많은 것을 할 수 있습다.


윤리적인 해킹이란 무엇인가?

윤리적인 해킹은 화이트 햇(화이트 해커)라고도 불리며 시스템의 약점을 찾고 보안을 강화하기 위해 시스템에 침투하여 취약점에 대한 공격을 시도하는 훈련입니다. 윤리적인 해킹의 두 가지 방법으로는 침투 테스트와 감시 활동 작업이 있습니다. (시작하며)


우리를 둘러싼 모든 IT 시스템은 항상 위험에 노출되어 있습니다. 윤리적인 해킹은 위험을 감지할 뿐만 아니라 국가의 주요 정보를 탈취하는 데에도 중요한 역할을 합니다. 가장 중요한 것은 “윤리적”이라는 것입니다. 해킹을 하기 전에 리눅스를 얼마만큼 배웠는지, 해킹 관련 툴은 잘 사용하는지 보다 자신의 행동이 옳은지, 옳지 않은지를 판단하는 것이 무엇보다 중요할 것입니다.


운영체제에서 프로세스는 꼭 배워야 하는 개념 중 하나입니다. 이 책을 통해 프로세스를 확인 및 제어, 관리를 배울 수 있어 좋았습니다.


프로세스는 단순히 리소스를 실행하고 사용하는 프로그램을 말한다. 프로세스의 예로는 터미널, 웹 서버, 실행 중인 명령, 데이터베이스, GUI 인터페이스 등이 있다. 훌륭한 리눅스 관리자, 특히 해커는 시스템을 최적화하기 위해 프로세스를 관리하는 방법을 이해해야 한다.

p.69


책에서 등장한 낮에는 IT 보안 전문가로, 밤에는 범죄자로 활동한 맥스라는 해커의 이야기입니다. 그는 시스템의 취약점(백도어)을 알았으며, 이를 통해 암시장을 만들었습니다. 그는 결국 교도소에 13년 동안 복역하게 되었다. 지금은 교도소에서 보안을 강화하는 일을 하고 있다고 합니다. 맥스의 사례를 보면서 느낀점은 책을 시작하면서 배운 윤리적 해킹의 중요성 입니다. 시스템의 취약점을 알면 악용하기보다 보다 많은 사람이 알수 있게 알려줘야 합니다.


맥스는 알로하 POS 시스템으로 인터넷에 연결된 시스템을 찾으면 포트를 통해 시스템 관리자 권한으로 시스템에 액세스할 수 있다는 것을 알았다. 

p.96


칼리 리눅스에서는 MySQL과 MariaDB가 사전에 설치되어 있었고, 또한 PostgreSQL 설치되어 있습니다. 데이터베이스 원격 접속과 메타스플로이트로 해킹을 쉽게하는 법을 배웁니다. 


결과적으로 현재는 MySQL 데이터베이스 소프트웨어의 두 갈래가 존재한다. 이는 ‘마리아(Maria)’라고도 불리며, 이 소프트웨어와 그 이후 버전을 오픈소스로 유지될 수 있도록 한다. 리눅스 관리자 또는 해커는 마리아에 집중하도록 하자.

p.142


어니언 라우터 시스템, 즉 토르의 탄생 비화를 알 수 있었습니다. 우리가 웹서핑을 할때마다 모두 추적되기 때문에, 해커는 감시를 피할 수 있는 방법을 강구해야 합니다.


1990년대 미국 해군 연구청(US Office Naval Research, ONR)은 스파이 목적으로 익명인 상태로 인터넷을 돌아다니기 위한 방법을 계획했다.  ···  이러한 연구는 2002년 어니언 라우터 프로젝트(The Onion Router, Tor)로 알려졌다. 그리고 이제는 상대적으로 안전하고 익명인 웹검색을 원하는 누구나 사용가능하다.

p.154


이메일이 암호화되지 않으면 이메일 제공자(네이버, 지메일, 아웃룩)에게 정보를 주는 것입니다. 다양한 방법으로 우리의 정보가 새어 나갈 수 있다는 것을 알게 되었습니다.


이메일에 대한 접근을 막는 방법은 암호화된 메일을 사용하는 것이다. 프로톤메일은(ProtonMail)은 종단간, 브라우저간 이메일을 암호화한다. 즉, 여러분의 이메일은 프로톤메일서버에서 암호화된다는 것이다. 심지어 프로톤메일의 관리자도 여러분의 이메일을 읽을 수 없다.


『초보 해커를 위한 칼리 리눅스 입문』의 전개상 특징을 보자면 리눅스 초보자에 중점을 둬서 전반부에는 리눅스의 기본 개념부터 활용에 초점을 맞춥니다. 후반부에서는 앞에서 배운 내용을 토대로 해킹에 본격적으로 배웁니다. 윈도우의 환경, GUI에 익숙한 사람들은 CLI환경인 리눅스에 적응하기가 힘이 듭니다. 때문에 이 책에서는 리눅스에 익숙해지기 위해, 책의 절반이 넘는 부분을 투자합니다. 따라서 해커가 되고 싶은 분 뿐만 아니라 리눅스를 배워야 하는 분들도 도움이 될거라 생각합니다.


『초보 해커를 위한 칼리 리눅스 입문』이 리눅스를 다룬 다른 책들과 가장 큰 차별성을 고른다면 실습이 많습니다. 또한 아파치 웹 서버, MySQL, 프록시, VPN과 같은 다양한 개념 설명을 설명합니다. 이를 통해 보안 및 네트워크 공부에 도움이 되었습니다.


『초보 해커를 위한 칼리 리눅스 입문』에서 가장 인상적인 부분을 꼽자면 파이썬 스크립트를 작성하기 위해 객체 지향, 모듈, 네트워크 통신 등을 배웠다는 점입니다. 남들이 사용하는 스크립트에서 벗어나 직접 파이썬으로 스크립트를 작성해보면서 스스로 실력이 향상되는 기분이 들었습니다.  


『초보 해커를 위한 칼리 리눅스 입문』을 읽으면서 느낀 점은 라즈베리파이가 있으면 좋겠다는 점입니다. 라즈베리파이로는 네트워크 해킹과 원격 카메라 제어를 편하게 할 수 있습니다. 또한 라즈베리파이가 리눅스 운영체제를 사용하기 때문에 다루는 것만으로도 리눅스에 대해 학습할 수 있습니다.


파이썬에 대해 더 자세히 배우고 싶다면 『알 스웨이가트의 파이썬 프로젝트』(알 스웨이가트 지음, 황반석 옮김, 제이펍, 2022)를 추천합니다.
이 책에서 배운 내용을 토대로 해킹에 대해 배우고 싶다면 『모의 해킹으로 알아보는 리눅스 서버 해킹과 보안』(장상근, 박진상 지음, 길벗, 2023)를 추천합니다.


리눅스에 대해 아무것도 모르는 분, 리눅스를 배워야 하는데 가볍고, 얇은 서적을 찾는 분, 리눅스 시스템 보안과 해킹에 관심이 있는 분들께 추천합니다.


『초보 해커를 위한 칼리 리눅스 입문』은 리눅스를 초보자에 관점에서 실습 위주로 학습하는 책입니다. 이 책을 통해 리눅스를 빠르게 배우고 전문가 수준으로 나아가시길 바랍니다. 


다만 초보 해커를 위한 책이니 해킹에 대해 아주 자세히 다루지는 않습니다. 책에서는 해킹 방법에 대해 나오지만 부족한 것은 사실입니다. 이 책으로 가볍게 배운 후, 앞서 추천한 책을 학습하시길 권장합니다.


본 리뷰는 제이펍 출판사로부터 책을 제공받아 작성했습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo