본문으로 바로가기

USB에 Kali Linux를 담아보자.

category Pentest 2023. 2. 6. 11:30
728x90
반응형

 

 

 


이 글은 예전 블로그로부터 백업된 글이며 1~4편 으로
분리했던 글을 통합한 내용입니다.

기재된 내용은 현시점과 많이 다를 수 있습니다.

 

작성일: 2018.02.21, 14:38 ~ 2019.06.19 20:05
USB Persistence Linux 1편 - 개요 (작성일: 2018-02-21, 14:38)
USB Persistence Linux 2편 - 준비물 (작성일: 2018-02.21 22:51)
USB Persistence Linux 3편 - USB Partition (작성일:2018-03-17 23:50)
USB Persistence LInux 4편  - End (작성일: 2019-06-19 20:05)
History, 부팅 중에는 USB를 뽑지말자(작성일 : 2019-07-21, 10:33)

 

 

목차

     

    개요

    Linux 상태를  저장 가능한 라이브 USB

    'Persistence Linux'라는 개념은 처음 들었을 때 참 신기했습니다 "USB만 있으면 리눅스를 USB에 담아서 다른 컴퓨터에서 내 운영체제로 부팅한 다음 작업을 할 수 있는 환경" 이라는 점이 그러했죠. 신기해서 하나 만들어서 다니곤 합니다.

     

    Kali Linux를 USB에 저장 시키는 두 가지 방법

    1. Potable Virtual Machine

    처음 시도에는 Potable Virtual Machine 이라는 Virtual Box를 USB 안에 설치해서 다녔지만 에러가 자주 날 뿐더러 타 컴퓨터에 인식시켜서 사용한다는 점이 설정이 매번 뒤틀리더군요. Virtual Machine을 USB에 설치하는 것이기 떄문에 어떤 Linux이든 설치할 수 있다는 것이 장점이었습니다만 실용적이지 못했습니다.

     

    2. Kali Linux Persistence

    두 번쨰 방법은 KALI LINUX의 Persistence 기능을 이용하는 것입니다. 이 방법은 컴퓨터 OS 진입전 Booting 단계에서 USB에 설치된 Kali Linux로 이동 시키는 것을 가능하게 합니다.

     

    Ubuntu도 이 Persistence 기능을 이용할 수 있다고 들었습니다만 성공해 본 적은 없습니다. KALI LINUX 를 기준으로 설명 드립니다.

     

    KALI LINUX는 www.kali.org에서 다운로드 받을 수 있습니다.

    Persistence Linux 설정 방법

    USB 준비

    우선 부팅 가능한 usb를 준비해야 됩니다. Rufus를 이용해 Live USB를 만들면 용량이 3~4GB 정도 잡아 먹게 됩니다. 저는 64GB USB로 쓰고 있는데 이것저것 업데이트 하다보니 이것도 꽤나 작은 용량 처럼 느껴지게 됩니다.

     

     

     

    위의 사진처럼 58GB(원래는 64GB)의 USB를 두 개의 파티션으로 나눈 뒤 하나는 부팅 가능한 Live ISO를 받고 다른 하나는 Persistence 로 쓸 분 만큼의 용량을 나누게 됩니다(뒤에서 설명). 이렇게 64gb를 USB를 써도 실제 용량은 58gb로 6GB 정도가 날아가니 USB 용량 64gb를 써도실제론 58gb에 해당하는 용량을 써야 되네요

     

    Rufus

    Rufus는 부팅 가능한 USB를 만들기 위해 쓰는 프로그램입니다.

     

    Partition Magic

    USB Persistence는 파티션을 나눠줘야 합니다. 저는 Partition Magic을 추천합니다 사이트 URL : https://www.partitionwizard.com/download.html

    Local Download를 눌러 다운 받읍시다

    인스톨 후 Launch Application을 클릭하게 되면 위의 그림과 같은 형식으로 프로그램이 뜨게 됩니다. 현재 컴퓨터에 연결된 저장 장치와 그에 따른 정보를 보여줍니다.


    USB Partitioning

     USB를 파티션하고 공간을 어떻게 잡을지 알아 봅시다

    Rufus를 이용하면 위와 같은 사진으로 부팅 가능한 USB로 만들어진 이미지로 뜨는 것을 Partiton Magic을 이용하여 확인할 수 있습니다

    "마우스 오른쪽 클릭 -> Move/Resize" 를 선택하시면 USB를 Partiton 할 수 있는 창이 나오는데 원하시는 공간 만큼 할당해주시면 됩니다 최대한 캡쳐를 해보고 싶었는데 캡쳐 도구를 이용하니 창이 사라져 버리더군요

    다시 위의 (Unalloacted) 위에서 마우스 오른쪽 클릭 -> Create 를 클릭하시면 아래와 같은 창이 뜹니다

    이떄 중요한 건 Partiton Label의 이름과 FIle System의 형식입니다 위의 사진의 Partiton Label를 보시면 첫문자가 대문자 P인데 소문자 p로 해주셔야 합니다. 그리고 File System의 형식에서 Ext4를 선택해주셔야합니다.

    위와 같은 창에서 작업 진행률을 보이게 됩니다 꽤나 시간이 걸려서 게임 한 판 하면서 기다립시다... 저는 대략 30분 정도 걸렸습니다

     

    작업이 완료 되면 위와 같이 Persistence(Ext4) 앞서 할당했던 공간에 Partitioning이 되어 나타난 결과를 확인할 수 있습니다

    Boot Menu 진입

    라이브 부팅이란 것은 1회용 부팅을 의미합니다. 라이브 부팅으로 어떤 작업을 하고 난 후 저장해도 실제로 저장은 되지 않습니다. 하지만 이 라이브 부팅을 시키는 것도 꽤나 까다로운데 그 이유는 부팅 OS 선택 진입이 제조사 별로 다른 "키"를 가지고 있습니다. 이 부분은 각자 확인해서 어떤 키를 누르면 부트 메뉴로 진입하는지 확인하도록 합시다. 구글에 "제조사 별 Boot Menu" 라는 단어로 검색하시면 됩니다.

     

    어떤 경우에는 USB 부팅을 선택해도 어떤 부팅 시스템은 안 먹는 경우도 있습니다. 만약 부트 메뉴에서 USB로 부팅을 선택해도 부팅이 안 된다면 "CMOS" 나 "바이오스 설정"을 통해 부팅 순위를 USB를 1순위로 바꾸거나. 부팅 모드를 "UEFI"에서 "Legacy"로 바꿔 봅시다.

     

    Kali Linux Persistence 진입

    위의 과정을 무난히 진행하시면 칼리 리눅스는 위의 사진과 같은 부트 메뉴 화면을 보여줍니다. 여기서 노란색으로 색칠해져 있는 Live USB Persistence를 메뉴를 선택해서 부팅합니다.

     

    Persistence 설정하기

    칼리 리눅스를 성공적으로 부팅하셨다면 터미널을 하나 띄워서 "fdisk -l" 명령어로 입력합시다.

    그 이유는 파티션 된 Device를 확인하고

    밑의 사진처럼 그 장치로 persistence 부팅 영역을 잡아줘야 하기 때문입니다.

     

    History

    Record 부팅 중에는 USB를 뽑지말자

    저장장치가 없는 노트북에서 부팅 됨을 확인해보기 위한 시도였지만 부팅 과정이 너무 오래 걸려 성질이 급한 나머지 부팅 과정 중에서 USB를 물리적으로 뽑아봤습니다. 후에 다시 부팅 과정조차 로딩이 안 되길래 다른 PC에서 테스트해 본 결과 USB가 망가져있다는 사실을 알 수 있었네요.

     

    첫 번째로 복구를 시도해보려 했던 방법은 'Diskpart' 를 이용하는 것 이였는데, 이 방법은 동작하지 않았네요. 명령어 순서가 'cmd 열기'->'diskpart'->'list disk'로 인식된 디스크 상황 보기-> 'sel disk {Number}' -> 'clean' 이였지만 list disk로 인식된 디스크를 확인하는 과정에 미디어 유형에 "미디어 없음"으로 표시됨과 함께 초기화를 시킬 영역이 없다는 말이 나옵니다. 그래서 이 방법은 포기했습니다

    두 번쨰로 복구를 시도해보려 헀던 방법은 'ChipGenius' & 'SMI mptool' 입니다. 미국에서 건너온 건지 중국에서 건너온 건지 모르는 이 툴로 USB 정보를 초기화 시킬 수 있었지만 원래 가지고 있던 Device Desciptor가 날라가서 PC 자체에서 USB가 인식이 안 되는 지경이 이르렀습니다. (이 툴을 사용할 때는 굉장히 조심하셔야 됩니다)
     
    부팅 과정 중에 실수로  USB를 뽑았는데 부팅이 안되고 다른 PC에서도 USB 인식이 제대로 안된다 하시면 당황하지 마시고 USB 모델명을 확인하신 뒤 제조사 홈페이지 가셔서 복구 툴이 있는지 확인해보시길 바랍니다. 그렇다면 부팅 과정이 오래 걸리면 어떻게 USB를 물리적으로 제거하냐? 그럴 떄엔 Ctrl+Alt+Delete를 하면 부팅이 진행되고 화면을 종료시킨 뒤 처음 PC를 PowerON 시켰을 떄의 화면으로 돌아갑니다.
     
    일단 Persistence 시킨 Kali LINUX에 데이터가 많이 없어서 안심은 됬습니다. 만약에 상황에 대비해 백업을 하라는 습관이 강조되는 이유를 알 수 있는 에피소드였습니다.
    728x90
    반응형