백박스 리눅스를 활용한 모의 침투 — 3장

Choijungeun
Quantum Ant
Published in
8 min readJul 24, 2019

3장 리눅스 배포판의 이해

책사진

INDEX

  1. 리눅스란
  2. 커널로서 리눅스
  3. 운영체제 로서 리눅스(리눅스 배포판)
  4. 서버로서 데비안 운영 체제
  5. 클라이언트로서 우분투 운영 체제
  6. 모의 침투로서 칼리 운영 체제와 백박스 운영 체제

3장에서는 앞으로 진행될 모의 침투의 운영 체제를 더 잘 이해하기 위해 리눅스에 대해 전반적으로 알아볼 것이다.

1. 리눅스란

리눅스는 커널을 의미하며 어셈블리어와 C 언어를 이용한다.

커널(kernel)이란,

운영 체제의 핵심으로, 하드웨어 전반(프로세스 동기화, 메모리 관리, 인터럽트 등 처리)을 관리하는 프로그램이다.

운영체제는 커널 기반으로 이루어진 시스템 프로그램을 말한다.

2. 커널로서 리눅스

리눅스 커널은 1991년 핀란드의 리누스 토발즈가 개발한 운영체제 커널이다.

[그림 3–1]

애초에 서버 환경을 염두에 두고 설계한 것이기 때문에 안정성보안성이 좋다. 다중 사용자 환경과 다중 작업 환경을 지원하기에 동시다발적으로 다수의 사람들이 컴퓨터에 접속해서 각자 원하는 컴퓨팅 작업을 수행할 수 있다.

[그림 3–2]

2019년 7월 기준 5.2.2가 최신 버전이다. 오픈 소스이기 때문에 아래 사이트에서 무료로 다운로드 가능하다.

https://www.kernel.org

3. 운영체제 로서 리눅스 (리눅스 배포판)

운영체제 로서 리눅스는 리눅스 커널에 기반을 두고 서버 환경에 부합하도록 제작한 운영 체제를 말한다.

대표적으로는 레드햇 운영체제와 페도라 운영체제가 있다.

[그림 3–3,4]

다음은 커널의 계층 구조 사진이다.

[그림 3–5]

그림을 보면 운영 체제의 가장 아래 층에 하드웨어 관리를 담당하는 커널이 있다. 그리고 커널 위에 셸(Shell)이 있다.

셸(Shell)이란,

키보드 등을 통해 입력 받은 명령어를 처리해주는 프로그램이다.

[그림 3–6]

윈도우 운영 체제에서 작업 관리자를 통해 볼 수 있는 explorer.exe도 셸에 해당한다.

리눅스 기반에서 사용하는 기본 셸은 배시(Bash)방식이다.

사실 셸에 대해서는 아주 많은 내용을 알아야 한다. 셸만으로도 프로그래밍이 가능하기 때문이다. 그러나 이제 갓 입문한 사람에게 셸의 종류나 환경 변수 등을 설명하는 것은 너무 이르다.

지금 단계에서 입문자가 알아야 할 내용은 CUI환경 자체가 곧 배시 셸(Bash Shell) 환경이라는 점이다.

터미널 환경 자체를 배시 셸 환경으로 간주해도 무리가 없다.

CUI (Character User Interface) 환경이란,

문자 사용자 인터페이스를 뜻한다.

셸 위에는 응용 프로그램이 위치한다.

앞으로 소개할 각종 모의 침투 도구 등이 모두 응용 프로그램에 해당한다.

4. 서버로서 데비안 운영 체제

데비안은 독일 출신의 미국 개발자 이안 머독(Ian Murdock)가 개발한 운영체제 이다.

[그림 3–7]

2019년 7월 현재 데비안 최신 버전은 10.0이다.

아래 사이트에 방문하면 3.0버전부터 최신 버전까지 확인할 수 있다.

cdimage.debian.org/cdimage/archive/

다른 리눅스 배포판과 배교했을 때 데비안 운영 체제에는 리눅스 커널의 안정성보안성을 담보하면서 패키지 설치의 간결성이란 강점을 갖고 있다.

apt-get 명령어 등을 이용하면 해당 소프트웨어의 설치나 업데이트 등을 수행할 때 다른 패키지와 의존성 관계 확인이나 보안 업데이트 등을 자동으로 수행한다.

의존성 관계란,

리눅스 기반의 운영 체제에서 어떤 프로그램을 설치할 때 해당 프로그램을 설치할 수 있는 조건을 마련해야 설치가 가능하다.

이것이 마련된 상태가 아니라면 해당 프로그램을 설치할 수 없다.

데비안 운영 체제에서는 프로그램을 설치할 때 패키지 의존성 문제를 알아서 처리한다.

우분투와 백박스는 데비안으로부터 많은 부분을 창의적으로 계승한 개방형 운영 체제이다.

5. 클라이언트로서 우분투 운영 체제

우분투는 남아공 출신 마크 셔틀워스(Mark Richard Shuttleworth)의 기부 정신에서 유래했다.

[그림 3–8]

우분투란,

일반인들도 리눅스 배포판을 사용하기 쉽도록, 클라이언트 환경에 적합하게 개량한 데비안 기반의 운영체제이다.

우분투(Ubuntu)는 남아공어로 “네가 있으니 내가 있다(인류애)” 라는 의미이다.

2004년 10월에 출시한 이후, 1년에 두 번씩 업그레이드 하고 있다.

2019년 7월 기준 최신 버전은 18.10이다.

아래 사이트에서 무료로 다운로드 가능하다.

www.ubuntu.com/download/desktop

우분투는 데비안의 패키지 설치 방식을 채택하고 확장성과 편리성을 강화했기에 데스크톱 PC, 노트북 등에서 윈도우 운영 체제처럼 사용할 수 있다.

우분투에는 KDE(K Desktop Environment) 환경에 기반을 둔 쿠분투(Kubuntu)와 Xfce 환경에 기반을 둔 주분투(Xubuntu) 등 다양한 변형판이 있다.

우분투 VS 데비안

먼저 데비안에서 Wireshark라는 프로그램을 실행했을 때 다음과 같은 내용이 나타난다고 한다.

[그림 3–9]

배시 셸 환경에서는 wireshark라는 명령어가 없다는 의미다(-bash: wireshark: command not found).

반면 주분투의 경우에는 다음과 같다.

[그림 3–10]

해당 프로그램이 없기 때문에 실행할 수 없다는 실행 불가 이유를 제시하면서 친절하게 설치 명령어까지 알려준다.(sudo apt install wireshark-qt)

6. 모의 침투로서 칼리 운영 체제와 백박스 운영 체제

칼리(Kali)란,

데비안 운영 체제를 모태로 서버 기능보다는 모의 침투 방식에 부합하도록 제작한 운영 체제다.

현재 전 세계적으로 가장 많이 사용하는 모의 침투 운영 체제이기도 하다.

2013년 3월 처음 세상에 나왔으며 2016년 8월 31일 칼리 리눅스 2의 두번째 버전이 출시되었다.

우분투와 다르게 칼리는 데비안과 설치 과정까지도 거의 동일할 뿐만 아니라 바탕화면조차 비슷하다.

다만, 데비안은 서버로서 서비스 운영에 적합한 형태이고, 칼리는 모의 침투에 적합한 형태라고 말할 수 있다.

칼리 운영 체제에는 100개 이상의 모의 침투 도구가 있다.

주요 도구 목록은 아래 사이트에서 확인 할 수 있다.

https://tools.kali.org/tools-listing

칼리 이외에도 다양한 배포판이 있다.

구글 사이트에 linux penetration testing distributions 등과 같은 검색어를 입력하면 다양한 형태의 모의 침투 운영 체제 배포판을 확인할 수 있다.

[그림 3–11]

칼리 vs 백박스

칼리는 데비안에 기반을 둔 모의 침투 운영 체제로 오펜시브 시큐리티(Offensive Security)라는 기업에서 관리 및 배포한다.

반면, 백박스는 주분투에 기반을 둔 모의 침투 운영 체제로 라파엘(Raffaele Forte)이라는 개발자가 직접 배포한다. 때문에 칼리와 달리 백박스는 다운로드 시 기부금을 요청한다.

또한, 백박스는 주분투 기반이라 칼리보다 사용자가 쓰기에 더 깔끔하고 잔고장이 없는 장점이 있다.

백박스는 2011년 1월 1.0 버전을 처음 발표한 이래 지금까지 버전업을 지속하고 있으며 2019년 7월 현재 6.0버전이다.

마치며

1,2장과는 달리 3장은 이론으로 구성되어 있었습니다.

또한, 책에 있는 내용을 정리하며 이해하기 어려울 것 같은 부분들은 쉽게 풀이하거나 그림을 추가하였습니다.

1,2장 실습을 진행하셨던 분들에게 쉬어가는 시간이 되었길 바랍니다. ㅎㅎ

다음 시간에는 “ 공격 대상자와 사전 정보의 설정”에 대해 포스팅 할 것 입니다.

[WARNING]

공부한 내용을 정리하는 글이라서 틀린 내용이 있을 수도 있습니다. 잘못된 내용이 있다면 망설이지 마시고 알려주세요!

읽어주셔서 감사합니다 :)

--

--