이 글은 예전 블로그로부터 백업된 글이며 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 할 수 있는 창이 나오는데 원하시는 공간 만큼 할당해주시면 됩니다 최대한 캡쳐를 해보고 싶었는데 캡쳐 도구를 이용하니 창이 사라져 버리더군요
이떄 중요한 건 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 설정하기
그 이유는 파티션 된 Device를 확인하고
밑의 사진처럼 그 장치로 persistence 부팅 영역을 잡아줘야 하기 때문입니다.
History
Record 부팅 중에는 USB를 뽑지말자
저장장치가 없는 노트북에서 부팅 됨을 확인해보기 위한 시도였지만 부팅 과정이 너무 오래 걸려 성질이 급한 나머지 부팅 과정 중에서 USB를 물리적으로 뽑아봤습니다. 후에 다시 부팅 과정조차 로딩이 안 되길래 다른 PC에서 테스트해 본 결과 USB가 망가져있다는 사실을 알 수 있었네요.
첫 번째로 복구를 시도해보려 했던 방법은 'Diskpart' 를 이용하는 것 이였는데, 이 방법은 동작하지 않았네요. 명령어 순서가 'cmd 열기'->'diskpart'->'list disk'로 인식된 디스크 상황 보기-> 'sel disk {Number}' -> 'clean' 이였지만 list disk로 인식된 디스크를 확인하는 과정에 미디어 유형에 "미디어 없음"으로 표시됨과 함께 초기화를 시킬 영역이 없다는 말이 나옵니다. 그래서 이 방법은 포기했습니다
'Pentest' 카테고리의 다른 글
JohnTheRipper, unsupported (log once): createkernel: newcomputepipelinestate failed (0) | 2022.11.14 |
---|---|
[Method] Status가 301인 건에 대해.. (0) | 2021.01.13 |
[SOLVED] : OS X Meterpreter Shell ? (0) | 2020.09.29 |
Ferret For Side Jacking (0) | 2020.09.28 |