Step 111. Kali Linux 설치 — 공격자의 작업대를 마련한다

Step 111. Kali Linux 설치 — 공격자의 작업대를 마련한다

Level 2 — 보안 입문과 공격 스킬 기초 | 난이도 ★★☆☆☆ | 예상 소요 시간 2~3시간 (다운로드 시간 제외)

전제: Step 16(가상화 이해)과 Step 17(VM 만들기와 스냅샷)을 마쳤다. VirtualBox가 설치되어 있고 VM을 만들어 부팅해 봤다. 인터넷 연결 필요(이미지 다운로드, 약 3~4GB).

  • 준비물: 윈도우 PC, VirtualBox, 인터넷 연결, 디스크 여유 30GB 이상, 메모리 8GB 이상 권장.
  • 주의: ⚠️ 이 챕터의 실습은 내 랩·합법 플랫폼 전용입니다. 허가 없는 시스템에 적용하면 범죄입니다. Kali는 강력한 공격 도구의 창고입니다 — 설치하는 순간부터 그 도구들을 어디에 겨눌지는 전적으로 여러분의 책임입니다. 이 챕터의 설치 화면은 "화면 예시"이며, 가상화 확인 명령만 집필 환경(2026-09-09)에서 실측했습니다.

지금까지 여러분은 nmap도, 스크립트도, 워게임 접속도 "일반 리눅스"에서 하나씩 다뤘습니다. 침투 테스터들의 실제 작업 환경은 이 도구 수백 개가 처음부터 전부 깔린 리눅스 — Kali Linux입니다. 오늘은 그 작업대를 우리 랩 안에 설치합니다. 새로운 개념보다 "공식 이미지 고르기"와 "네트워크 기본값 이해"가 오늘의 핵심입니다.


1. 학습 목표

이 챕터를 끝내면 다음을 할 수 있습니다:

  • Kali Linux가 무엇이며 왜 보안 업계의 표준 작업 환경인지 설명한다
  • kali.org에서 VirtualBox용 사전 빌드 이미지를 골라 다운로드한다
  • 이미지를 VirtualBox에 등록해 Kali를 부팅하고 기본 계정을 바꾼다
  • Kali의 도구 분류 체계(정찰/취약점 분석/익스플로잇…)를 둘러본다
  • 가상화 기능(VT-x/AMD-V)이 켜져 있는지 내 PC에서 확인한다

2. 배경 지식 — 오늘의 도구와 개념

오늘의 도구 한눈에 보기

구분 내용
언어·환경 VirtualBox(호스트: 윈도우) + Kali Linux(게스트)
오늘의 명령 systeminfo(가상화 확인, 윈도우), Kali 안에서 nmap -V, msfconsole -v, passwd
필요한 개념 보안 특화 배포판, 사전 빌드(pre-built) 이미지 vs 설치형 ISO, 도구 분류 체계, NAT vs Host-only(개념)
오늘의 산출물 부팅되는 Kali VM 1대 + "Kali 클린 상태" 스냅샷

2-1. Kali Linux — 도구가 미리 깔린 리눅스

Kali Linux는 침투 테스트와 보안 진단을 위해 만들어진 데비안 계열 리눅스 배포판입니다. 일반 배포판과의 차이는 단순합니다 — 여러분이 지금까지 배우고 앞으로 배울 도구들이 처음부터 전부 설치되어 있습니다. nmap, Metasploit, Burp Suite, Wireshark, John the Ripper, hashcat까지 수백 개입니다.

"그냥 우분투에 하나씩 깔면 안 되나요?" — 가능은 합니다. 하지만 버전 충돌과 의존성 지옥을 겪게 되고, 실무 환경과 달라집니다. 침투 테스트 자격증 시험, 기업 레드팀, CTF 선수들의 기본 환경이 Kali이므로, Kali를 쓰는 것 자체가 업계 표준에 맞추는 일입니다.

2-2. 설치형 ISO vs 사전 빌드 이미지

kali.org의 다운로드 페이지에는 여러 종류가 있습니다. 오늘 우리가 고를 것은 둘 중 하나입니다:

종류 설명 소요
Installer ISO 바닥부터 설치하는 정규 설치 디스크 느림 (설치 과정 필요)
Pre-built VM 이미지 설치가 끝난 가상 디스크 통째 파일 빠름 — 오늘의 선택

사전 빌드 이미지는 "이미 설치된 Kali가 든 가상 디스크"를 압축해 둔 것입니다. VirtualBox에 등록만 하면 바로 부팅됩니다. 단, VirtualBox용과 VMware용이 따로 있으니 VirtualBox용을 골라야 합니다 — 집필 환경에서 자주 보이는 첫 번째 실수 지점입니다.

2-3. 도구 분류 체계 — 공격의 순서가 메뉴다

Kali의 애플리케이션 메뉴는 도구를 알파벳순이 아니라 공격의 단계 순으로 분류합니다:

  • Information Gathering — 정찰 (nmap 등)
  • Vulnerability Analysis — 취약점 분석
  • Web Application Analysis — 웹 공격
  • Exploitation Tools — 익스플로잇 (Metasploit 등)
  • Password Attacks — 비밀번호 공격 (John, hashcat)
  • Post Exploitation — 침투 후 처리

이 분류는 곧 이 책 Level 2 후반의 진도표이기도 합니다. 메뉴를 둘러보는 것만으로 "실제 침투 테스트가 어떤 순서로 진행되는가"를 배울 수 있습니다.

2-4. 네트워크 기본값 — NAT가 안전한 이유

VirtualBox의 VM 네트워크 기본값은 NAT입니다(Step 16 복습). VM은 바깥으로 인터넷에 나갈 수 있지만, 같은 집 네트워크의 다른 기기가 VM으로 직접 접속할 수는 없습니다. Kali 설치 직후에는 업데이트를 받아야 하므로 이 기본값이 적합합니다.

나중에 공격 표적 VM(Metasploitable2)을 랩에 추가할 때는 Host-only 네트워크 — 내 PC 안에서만 통하는 완전 격리 가상 랜 — 를 쓰게 됩니다. 오늘은 "NAT = 나갈 수 있음, 들어올 수 없음 / Host-only = 내 PC 안에서만 통함, 인터넷 차단"이라는 한 줄만 기억해 두세요.


3. 따라 하기

3-1. 가상화 기능 확인 — 설치 전 점검

VM을 만들기 전에, 이 PC가 가상화를 돌릴 준비가 됐는지 확인합니다. 윈도우 명령 프롬프트나 Git Bash에서:

입력 (윈도우)

systeminfo | findstr /i "Hyper-V"

출력 (2026-09-09 실측):

Hyper-V Requirements:          A hypervisor has been detected. Features required for Hyper-V will not be displayed.

읽는 법: "하이퍼바이저가 검색됐다"는 이 메시지는 이 PC에서 이미 가상화 기능(VT-x/AMD-V)이 켜져 있고 하이퍼바이저가 동작 중이라는 뜻입니다(WSL2를 쓰는 PC에서는 항상 이 상태입니다). 만약 이 항목이 "가상화가 펌웨어에서 비활성화됨(Virtualization … Disabled In Firmware)"이라고 나오면, Step 16의 3-4절대로 BIOS/UEFI에서 켜야 합니다.

참고로 WSL이 설치된 PC라면 wsl -l -v로 이미 가상화 위에서 돌고 있는 리눅스 목록을 볼 수 있습니다 (2026-09-09 실측):

  NAME                   STATE           VERSION
* Codex-Security-Lab     Running         2

VERSION이 2라는 것은 WSL2, 즉 하드웨어 가상화 위에서 돌고 있다는 뜻 — 가상화가 켜져 있다는 또 하나의 증거입니다.

3-2. 공식 이미지 다운로드

  1. 브라우저에서 주소창에 직접 kali.org 입력 (검색 광고의 가짜 사이트 회피 — Step 16의 습관 복습)
  2. Get KaliVirtual Machines 섹션으로 이동
  3. VirtualBox용 64비트 이미지를 선택해 다운로드 (압축 파일, 약 3~4GB)

화면 예시 — 다운로드 항목은 대략 이런 이름입니다:

kali-linux-2025.x-virtualbox-amd64.7z

중요: 파일명에 반드시 virtualbox가 있어야 합니다. vmware라고 적힌 것을 받으면 VirtualBox에서 열 수 없습니다. 다운로드 페이지에는 체크섬(SHA256)이 함께 적혀 있습니다 — 받은 파일이 깨지지 않았는지 확인하는 습관은 보안의 기본입니다:

입력 (윈도우 파워쉘, 출력은 화면 예시)

Get-FileHash .\kali-linux-2025.x-virtualbox-amd64.7z -Algorithm SHA256
Algorithm       Hash
---------       ----
SHA256          3F1A... (다운로드 페이지에 적힌 값과 비교)

읽는 법: 출력된 해시가 kali.org 페이지의 값과 한 글자라도 다르면 파일이 손상됐거나 변조된 것입니다 — 버리고 다시 받으세요.

3-3. VirtualBox에 등록

다운로드한 압축을 풀면(7-Zip 필요) .vbox 파일과 .vdi 가상 디스크가 나옵니다.

  1. 압축 해제 (오른쪽 클릭 → 7-Zip → 여기에 풀기)
  2. 풀린 폴더의 .vbox 파일을 더블클릭 → VirtualBox에 VM이 자동 등록됩니다
  3. 등록된 VM을 선택하고 설정에서 메모리 확인 — 4096MB(4GB) 권장, 최소 2048MB
  4. 네트워크가 NAT인지 확인 (기본값이면 그대로)

화면 예시 — VirtualBox 관리자 목록:

Oracle VM VirtualBox 관리자
├── (기존 VM들...)
└── kali-linux-2025.x-virtualbox-amd64   ← 새로 등록됨
    전원 꺼짐 / 메모리 4096MB / NAT

3-4. 첫 부팅과 기본 계정 변경

VM을 시작하면 로그인 화면이 뜹니다. 사전 빌드 이미지의 기본 계정은 공개되어 있습니다:

  • 사용자: kali / 비밀번호: kali

로그인 후 가장 먼저 할 일은 비밀번호 변경입니다. 기본 계정은 전 세계가 아는 값이므로 그대로 두면 안 됩니다.

입력 (Kali 터미널)

passwd

화면 예시:

Changing password for kali.
Current password: (kali 입력)
New password: (새 비밀번호)
Retype new password: (다시 입력)
passwd: password updated successfully

읽는 법: 리눅스는 비밀번호 입력 중 화면에 아무것도 표시하지 않습니다. 커서가 안 움직여도 입력되고 있으니 당황하지 마세요(Step 17에서 배운 것과 같습니다).

3-5. 도구 점검 — 익숙한 얼굴 확인

터미널에서 우리가 아는 도구들이 진짜 있는지 확인합니다.

입력 (Kali 안에서)

nmap -V
msfconsole -v
which wireshark john hashcat burpsuite

출력 예시 (집필 환경에는 Kali가 없어 미실행 — 여러분의 화면과 비교하세요):

Nmap version 7.95 ( https://nmap.org )
Framework: 6.4.x
/usr/bin/wireshark
/usr/bin/john
/usr/bin/hashcat
/usr/bin/burpsuite

읽는 법: 전부 경로와 버전이 출력되면 도구 창고가 제대로 들어온 것입니다. Step 81에서 WSL에 직접 깔아 쓰던 nmap이 여기서는 처음부터 기본 탑재입니다. 애플리케이션 메뉴(왼쪽 위 Kali 로고)를 열어 2-3의 분류 체계 — Information Gathering, Vulnerability Analysis, Exploitation Tools — 가 실제로 보이는지 둘러보세요.

3-6. 스냅샷 — "Kali 클린 상태"

설정을 더 만지기 전에 스냅샷을 찍습니다 (Step 17 복습).

  1. Kali를 정상 종료 (sudo poweroff 또는 메뉴에서 종료)
  2. VirtualBox 관리자에서 Kali 선택 → 스냅샷 탭 → 찍기(Take)
  3. 이름: Kali 클린 상태 / 설명: 설치 직후, 비밀번호 변경 완료

: 앞으로 이 Kali에서 온갖 실험을 하게 됩니다. 도구 설정이 꼬이거나 시스템이 망가지면 이 스냅샷으로 몇 초 만에 돌아옵니다. "실험 전 스냅샷"은 이 책 전체를 관통하는 습관입니다.


4. 미션과 연습문제

미션 — Kali 도입 보고서

Kali 설치를 마친 뒤, 짧은 보고서를 작성하세요:

  1. 다운로드한 이미지의 정확한 파일명과, 체크섬을 대조했는지 여부
  2. VM 사양 기록: 메모리, CPU 수, 네트워크 모드 (VirtualBox 설정 화면에서 확인)
  3. 비밀번호 변경 완료 여부 (passwd 결과 메시지 한 줄 인용)
  4. nmap -V의 출력 첫 줄 인용
  5. 스냅샷 이름과 찍은 시각
  6. 마지막으로 한 줄: "이 Kali에서 공격해도 되는 대상 / 절대 안 되는 대상"

스스로 검증하는 법: 6번이 쓰여 있으면 됩니다. 이 문서는 Step 16의 랩 설계서와 짝을 이루는 규칙 문서입니다.

연습문제

문제 1. Kali를 "우분투에 도구를 하나씩 설치"하는 방식이 아니라 배포판 통째로 쓰는 이유를 두 가지 말해 보세요.

문제 2. 사전 빌드(pre-built) 이미지와 설치형 ISO의 차이를 설명하고, 입문자에게 어느 쪽이 적합한지 이유를 말해 보세요.

문제 3. 사전 빌드 이미지의 기본 계정(kali/kali)을 그대로 두면 안 되는 이유를, 이 VM이 NAT 네트워크에 있다는 사실과 연결해 설명해 보세요.

문제 4. Kali의 도구 메뉴가 알파벳순이 아니라 단계순(정찰→분석→익스플로잇→후처리)으로 분류된 것의 의미를 설명해 보세요.


5. 모범 답안과 완료 기준

미션 모범 답안

보고서 예시 (형식 참고용 — 파일명·버전은 다운로드 시점에 따라 다릅니다):

[Kali 도입 보고서]
1. 이미지: kali-linux-2025.x-virtualbox-amd64.7z
   체크섬: kali.org의 SHA256과 Get-FileHash 결과 일치 확인함
2. VM 사양: 메모리 4096MB / CPU 2개 / 네트워크 NAT (기본값)
3. 비밀번호: 변경 완료 — "passwd: password updated successfully"
4. 도구: "Nmap version 7.95 ( https://nmap.org )"
5. 스냅샷: "Kali 클린 상태" (설치일 2026-09-XX)
6. 규칙: 이 Kali에서 공격하는 대상은 오직 내 랩의 표적 VM과
   합법 워게임 플랫폼뿐. 랩 밖의 어떤 시스템도 스캔·공격하지 않는다.

검증하는 법: ① 체크섬 대조 여부가 기록됐는가. ② 네트워크 모드가 명시됐는가. ③ 6번의 금지 대상이 구체적인가. 세 가지면 완성입니다.

연습문제 해답

문제 1 해답. 첫째, 의존성과 버전 충돌을 배포판 제작사가 미리 해결해 두어 "깔고 바로 쓰는" 상태가 보장됩니다. 둘째, 자격증 시험·기업 레드팀·CTF의 사실상 표준 환경이라, Kali를 쓰면 각종 문서와 튜토리얼의 화면·경로가 그대로 일치합니다.

문제 2 해답. 설치형 ISO는 설치 프로그램을 직접 진행해 파티션·언어·패키지를 고르는 방식이고, 사전 빌드 이미지는 설치가 끝난 가상 디스크를 통째로 받아 등록만 하는 방식입니다. 입문자에게는 사전 빌드가 적합합니다 — 설치 단계에서 생길 수 있는 변수를 건너뛰고 "오늘의 목표인 Kali 사용"에 바로 도달하기 때문입니다.

문제 3 해답. 기본 계정은 공개된 값이라 누구든 알고 있습니다. NAT 아래라면 외부에서의 직접 접속은 막혀 있지만, 랩 안에 표적 VM이 추가되는 순간 같은 가상 네트워크 안의 다른 VM(혹은 랩을 관찰하는 사람)이 기본 비밀번호로 들어올 수 있고, 무엇보다 "기본값을 바꾸지 않는다"는 습관 자체가 보안 사고의 제1 원인입니다. 새 장비의 첫 행동은 항상 기본 자격 증명 변경입니다.

문제 4 해답. 메뉴 분류가 곧 침투 테스트의 표준 절차(정찰 → 취약점 분석 → 익스플로잇 → 권한 상승/후처리)이기 때문입니다. 도구를 고르는 행위가 "지금 내가 공정의 어느 단계에 있는가"를 자각하는 훈련이 되도록 설계된 것이며, 초보자는 메뉴를 따라가는 것만으로 실무의 흐름을 익힐 수 있습니다.

완료 기준 체크리스트

  • [ ] systeminfo(또는 wsl -l -v)로 가상화 기능이 켜져 있음을 확인했다
  • [ ] kali.org에서 VirtualBox용 사전 빌드 이미지를 다운로드했다
  • [ ] 체크섬(SHA256)을 대조했다
  • [ ] Kali VM이 부팅되고 로그인된다
  • [ ] 기본 비밀번호를 passwd로 변경했다
  • [ ] nmap -V 등 주요 도구의 실행을 확인했다
  • [ ] "Kali 클린 상태" 스냅샷을 찍었다
  • [ ] 미션: Kali 도입 보고서를 작성했다

6. 흔한 실수와 해결

벽 1. VMware용 이미지를 받아버렸어요

증상: 다운로드한 파일을 VirtualBox가 열지 못합니다.
원인: 사전 빌드 이미지는 가상화 소프트웨어별로 따로 빌드됩니다. 파일명에 vmware가 있으면 그것은 VMware 전용입니다.
해결: 다운로드 페이지에서 VirtualBox 탭/항목을 다시 확인하고 받으세요. 파일명에 virtualbox가 있는지가 검증 포인트입니다.

벽 2. VM이 64비트로 안 만들어지거나 시작 오류가 나요

증상: "VT-x is not available", "AMD-V is disabled" 류의 오류 (Step 16의 벽 3과 동일).
원인: CPU 가상화 기능이 BIOS/UEFI에서 꺼져 있습니다.
해결: 3-1의 systeminfo로 먼저 확인하세요. 꺼져 있으면 재부팅 후 Del/F2로 BIOS에 들어가 Intel VT-x / AMD-V를 Enabled로. 제조사마다 위치가 다르니 "내 노트북 제조사 + 가상화 활성화"로 검색하면 됩니다.

벽 3. 압축이 안 풀려요 (.7z 파일)

증상: 윈도우 기본 압축 풀기가 .7z를 인식하지 못합니다.
원인: Kali 이미지는 7-Zip 형식으로 압축되어 있습니다.
해결: 무료 프로그램 7-Zip(공식 사이트 7-zip.org)을 설치한 뒤 오른쪽 클릭 → 7-Zip → 여기에 풀기. 용량이 크니 몇 분 걸리는 게 정상입니다.

벽 4. Kali가 무겁게 버벅여요

증상: 부팅은 됐는데 화면 반응이 느립니다.
원인: 메모리·CPU 배정이 작거나, 호스트 여유가 부족합니다.
해결: Step 16의 "호스트 절반 이하" 규칙 안에서 메모리를 4096MB로 올리고, CPU를 2개로 배정하세요. 그래도 버거우면 부팅 후 그래픽 효과를 줄이거나, Xfce 외의 가벼운 사용법(터미널 위주)을 택합니다. 참고로 Kali의 기본 데스크톱은 이미 가벼운 편인 Xfce입니다.

벽 5. root로 로그인하고 싶어요

증상: 예전 자료에는 root/toor로 로그인하라고 나옵니다.
원인: 옛날 Kali(2020년 이전)는 기본이 root였지만, 현재 Kali는 일반 사용자 kali + sudo 방식으로 바뀌었습니다.
해결: 옛 자료를 따라 하지 마세요. kali로 로그인하고 관리자 작업은 sudo를 붙이세요. 일상을 root로 사는 습관은 실수 한 번이 시스템 전체를 치는 환경을 만듭니다 — 우분투에서 배운 원칙(Step 24)과 같습니다.


7. 정리

오늘의 개념

개념 한 줄 설명
Kali Linux 침투 테스트 도구 수백 개가 기본 탑재된 보안 특화 배포판
사전 빌드 이미지 설치가 끝난 가상 디스크 통째 파일 — 등록만으로 부팅
체크섬(SHA256) 다운로드 파일이 변조·손상되지 않았음을 검증하는 지문
도구 분류 체계 정찰→분석→익스플로잇→후처리, 공격 단계 순 메뉴
NAT / Host-only 나갈 수 있고 들어올 수 없음 / 내 PC 안에서만 통하는 격리 랜

오늘의 명령어

명령 하는 일
systeminfo (윈도우) Hyper-V 항목으로 가상화 기능 활성 여부 확인
Get-FileHash -Algorithm SHA256 (파워쉘) 다운로드 파일 체크섬 대조
passwd (Kali) 기본 비밀번호 변경 — 설치 후 첫 행동
nmap -V, msfconsole -v 주요 도구 존재와 버전 확인
sudo poweroff 정상 종료 (스냅샷 전)

명령어보다 중요한 감각

오늘 여러분은 공격자의 작업대를 손에 넣었습니다. Kali의 메뉴를 처음 열었을 때 느껴지는 "도구의 홍수"가 이 책 후반부의 지도입니다 — 당황하지 마세요. 하나씩 배우면 되고, 우리는 이미 그중 몇 개(nmap, ssh, nc)를 쓸 줄 압니다.

동시에 기억할 것 — 이 작업대는 어디에나 겨눌 수 있지만, 겨눌 수 있는 곳은 정해져 있습니다. 내 랩과 합법 플랫폼. 그 경계선은 도구가 아니라 여러분이 긋는 것이며, 미션의 6번 항목으로 이미 그어 두었습니다. 작업대가 생겼으니 이제 남은 것은 안전한 표적, 그리고 둘을 잇는 격리된 사격장입니다.


전부 체크되면 Step 111 완료입니다. 사이드바의 체크박스를 눌러 진도를 저장하세요.