티스토리 뷰

반응형

Android 공기계에 Kali Linux(Nethunter) 루팅없이 설치하기

 

Android 공기계에 Kali Linux(NetHunter) 루팅 없이 설치하기

 

모의해킹에 특화된 Kali Linux의 mobile version으로 NetHunter가 있습니다. ROM Flashing 및 루팅 없이도 Android에 Kali Linux(NetHunter)를 설치할 수 있는데요, 안 쓰는 안드로이드 휴대전화에 Termux 앱을 설치하고 터미널상에서 간단히 명령어 몇 줄 입력하면 Kali Linux(NetHunter)를 사용해 볼 수 있습니다.

Kali Linux를 써보기 위해서 라즈베리파이 구매를 고민하고 계신다면, 집에 안 쓰는 안드로이드 공기계가 있는지 살펴보시고 한 번 따라서 설치해 보세요. ssh 서버, vnc 서버를 작동시키면 iPad나 다른 장비에서도 ssh, vnc client를 통해서 Kali Linux에 접속할 수 있습니다.

 

Android 공기계 고정IP 설정 (옵션, 필수아님)

 

휴대전화(nethunter용) 고정IP로 설정하기

 

공유기 DHCP 서버 설정 부분에서 Android 공기계(NetHunter 설치)에 고정 IP를 할당해 줍니다.
이 작업은 선택사항입니다.

무선공유기에 NetHunter를 설치할 Android 기기에 고정 IP로 설정을 해주면 무선공유기에 접속할 때마다 고정 IP를 할당받기 때문에 ssh server, vnc server를 작동시킬 때 별도로 IP 확인하고 다시 입력해 줄 필요 없이 ssh cleint, vnc client에 IP 및 port를 한 번 저장해두고 변경 없이 쓸 수 있기 때문에 필요한 사람만 고정 IP로 바꿔주세요.

그냥 이 단계를 pass 하셔도 전혀 상관없습니다.

 

루팅없이 NetHunter 설치하기 - Kali Linux(NetHunter) Rootless Installation

 

NetHunter 설치방법

 

휴대폰에 termux 앱을 설치하고 위에 나오는 순서대로 명령어를 입력하기 만 하면 Kali Linux(NetHunter)가 설치됩니다. 
아래에 있는 URL를 참고하셔서 명령어를 직접 복사&붙여넣기 해서 실행하셔도 됩니다.

 

https://www.kali.org/docs/nethunter/nethunter-rootless/

 

NetHunter Rootless | Kali Linux Documentation

NetHunter Rootless Edition Maximum flexibility with no commitment Install Kali NetHunter on any stock, unrooted Android device without voiding the warranty. Prerequisite: Android Device (Stock unmodified device, no root or custom recovery required) Install

www.kali.org

 

Termux 설치하기

 

Termux

 

공기계를 먼저 공장초기화 한 번 하시고, Google Play 앱을 모두 업데이트해줍니다.
업데이트가 완료되면 Google Play Store에서 Termux 터미널 앱을 설치합니다. 다른 앱 필요 없이 이 앱 하나면 Kali Linux 설치가 가능합니다.

 

공기계 공장초기화 후 공기계 용량

 

홍미 노트 3 프로 공기계에 설치를 했으며 구글 Play 앱을 모두 업데이트하고 보니 약 21GB의 공간밖에 안 남네요. 그래도 Kali Linux 설치 및 이용에는 전혀 문제가 없습니다. 32GB 정도의 용량의 안드로이드 휴대전화라면 전혀 문제없습니다. 

 

Google Play 앱 Update 후 공기계 용량

 

termux 앱을 실행하고 pkg update와 pkg upgrade 명령어를 각각 순서대로 입력 및 실행시켜 주세요.

 

termux-setup-storage(파일 액세스 권한)

 

다음으로 termux-setup-storage 명령어를 입력해서 '파일 액세스 권한'을 '허용'으로 바꿔주세요.

 

termux-setup-storage(파일 액세스 권한-허용)

 

kali linux 설치 image를 다운로드할 필요한 wget을 설치해야 하는데요.
termux에서는 pkg install wget 명령어를 통해서 wget을 설치할 수 있습니다.

 

pkg install wget

 

wget -O install-nethunt-temux https://offs.ec/2MceZWr 명령어를 입력합니다.

오타가 나서 install-nethunt-temux라고 입력했는데요. wget -O 옵션 자체가 뒤에 있는 https://offs.ec/2MceZwr을 을 다운받아 install-nethunt-temux라는 이름으로 저장시키는 명령이라 저장시킬 파일명에 조금 오타가 있어도 큰 문제는 없습니다. (오타를 피하기 위해서 kali linux rootless installation에 나오는 절차를 복사 & 붙여넣기 하세요)

wget -O install-nethunt-temux  https://offs.ec/2MceZWr

 

오타가 났지만 저장된 파일 이름명을 알고 있기 때문에 chmod +x 뒤에 오타 난 파일 이름 그대로 적어줬습니다.
그리고 바로 실행 명령. 오타가 난 상태로 입력해도 문제는 없기 때문에 제가 사용한 명령어 그대로 사용하셔도 문제없습니다.

무선 키보드를 안드로이드에 연결한 상태에서 진행을 하시면 ./install까지 적으시면 tab 키를 누르시면 파일명이 자동으로 완성됩니다. [꿀팁]

 

chmod +x install-nethunt-temux

 

명령을 실행시키면 설치에 필요한 추가 image를 다운받는데요. 3GB가 넘기 때문에 약 10분 정도 걸리는 것 같습니다.

 

NetHunter install(1)

 

다운로드가 완료될 때까지 약 10분 정도 기다려주세요.

 

NetHunter install(2)

 

예상 완료 시간이 나오기 때문에 예상 완료 시간에 휴대폰을 한 번 확인해 주세요.

 

NetHunter install(3)

 

다운로드가 완료되면 자동으로 다음단계로 넘어갑니다.

 

NetHunter install(4)

 

Extracting rootfs 메시지가 나오면 본격적인 설치가 시작된 상황입니다.

휴대전화 CPU 성능에 따라 설치 시간이 다 다른데요, 제 기준으로 봤을 때 약 1시간 ~ 2시간 정도 걸리는 것 같습니다. 

 

Delete downloaded rootfs file?

 

모든 설치가 완료되면 'Delete downloaded rootfs file? [y/N]라는 메시지가 나오는데요.
저는 나중에 해당 파일을 쓸 일이 없을 것 같아서 y를 눌러서 삭제를 했습니다.
휴대전화에 용량이 충분하신 분은 그냥 N을 눌러서 남겨두셔도 상관없을 것 같아요.

 

NetHunter install(5)

 

드디어 설치가 완료되었습니다.
녹색으로 보이는 곳에 nethunter, nethunter kex, nh와 같은 명령어가 보이지요?

단축키 nh를 눌러서 kali Linux(NetHunter)를 실행시킬 수 있으니 바로 실행시켜보세요.

 

Kali Linux(NetHunter 설치 완료 후 용량)

 

NetHunter를 다 설치하고 보니 약 10.66GB가 남았네요. 충분한 공간이 남아있습니다. 최소 32GB 공기계는 사용하셔야 할 것 같아요.

 

Kali Linux(NetHunter 비밀번호 변경하기)

 

비밀번호 변경하기 passwd

 

NetHunter kali 계정의 비밀번호는 kali입니다.
혹시나 몰라서 비밀번호 먼저 수정을 했습니다.

명령어는 passwd
입력하면 현재 비밀번호를 먼저 물어봅니다. kali를 입력하고 신규 비밀번호를 2회 입력합니다.
비밀번호가 잘 변경되었지만 System error 및 password unchanged라고 나오는데 새 비밀번호로 바뀐 상태에서도 에러가 나오네요. 그 이유는 잘 모르겠습니다.

 

남은 공간 확인하기 df -h

 

df -h 명령어로 남은 공간을 확인해 봤습니다.

 

Kali Linux(NetHunter) Kex 설정

 

kex 실행 및 초기 비밀번호 설정

 

vnc client를 통해서 Kali Linux GUI를 사용할 수 있습니다.
먼저, kex 명령어를 실행시키고 비밀번호를 설정해 줍니다.  여기에 입력하는 비밀번호는 vnc client를 통해서 접속할 때 입력하는 비밀번호입니다. kali 비밀번호와 다른 비밀번호를 사용해도 됩니다.

 

view-only password

 

view-only password는 n으로 설정하시는 것이 편합니다. 

 

Xtigervnc port

 

위와 같이 나오면 kex가 잘 실행된 상태입니다.
이제 휴대폰 이외에 장비에서 tigervnc(kex)에 접속할 수 있도록 환경설정 파일을 좀 수정해야 합니다.

kex stop 명령어로 kex 서비스를 중단시킵니다.
아래 명령어를 실행시킵니다.

sudo vim /etc/tigervnc/vncserver-config-defaults

 

tigervnc config 수정

 

G 를 입력해서 마지막 줄로 이동합니다.
i를 눌러서 insert 모드로 수정하시고, 마지막 줄에 $localhost ="no"; 를 입력하고 esc 키를 누릅니다.
마지막으로 :x 를 입력(저장 및 vim editor를 종료)합니다.

NetHunter Rootles Installation에서는 store.nethunter.com에서 별도 store app을 다운받아 Kex vnc client를 설치해서 접속하고 하지만, 저는 별도의 앱 스토어 및 vnc client 프로그램을 설치하는 게 좀 불편해서 그냥 제가 쓰는 jump desktop에서 접속을 했습니다. 무료 vnc viewer 프로그램에서도 접속을 할 수 있기 때문에 별도 store app을 설치하지 않아도 됩니다. 특히 휴대폰같이 작은 화면에서는 kex gui 환경을 이용하기에 너무 불편합니다. 그냥 설치하지 마시고 별도의 vnc client에서 접속하는 게 좋을 것 같아요.

 

5901 port 확인

 

환경설정이 완료되었으면 다시 kex를 입력해서 vncserver를 구동합니다.
nmap에서 NetHunter IP 그리고 port 5901을 스캔했습니다. 정상적으로 State에 Open 으로 해당 포트가 열려있네요.

 

Jump Desktop - Vnc 연결 설정

 

iPad Jump Desktop 앱은 RDP 및 VNC를 지원하는데요, 휴대폰 IP 및 PORT 5901, 그리고 유형은 vnc로 설정을 하고 연결을 시도합니다.

RDP의 경우 서버 컴퓨터에 Jump Desktop 프로그램을 설치해야 접속이 가능하지만, vnc의 경우 별도의 프로그램 없이 Kali Linux의 Tigervnc에 접속이 가능합니다. 무료 vnc viewer로도 접속이 가능하니 사용자에 맞는 vnc viewer 사용하시면 됩니다.

최초 1회 비밀번호를 물어보는데, Jump Desktop에 비밀번호 저장을 해두면, 이후에는 비밀번호 입력 없이 바로 접속이 가능합니다.

 

iPad - NetHunter Tiger vnc 연결

 

아이패드 Jump Desktop으로 접속한 NetHunter (Kali Linux) 화면입니다.
PC Kali 배포판보다는 설치된 패키지가 좀 적습니다. 
각 메뉴별로 설치된 툴을 살펴보겠습니다.

 

NetHunter 메뉴(1)

 

nmap, john, wireshark 등 반가운 툴 들이 보이네요. 한 번씩 살펴보세요.

 

NetHunter 메뉴(2)

 

NetHunter 메뉴(3)

 

NetHunter 메뉴(4)

 

NetHunter 메뉴(5)

 

NetHunter 메뉴(6)

 

NetHunter 메뉴(7)

 

NetHunter 메뉴(8)

 

NetHunter 메뉴(9)

 

NetHunter 메뉴(10)

 

NetHunter ssd 서버 환경 설정

 

/etc/ssh/sshd_config 파일 수정

 

휴대폰 화면이 작으니 ssh 서버를 실행시키고 iPad나 다른 컴퓨터에서 ssh로 접속해서 사용하시면 됩니다.

port number를 수정하기 위해서 sudo vim /etc/ssh/sshd_config 를 실행합니다.

 

/etc/ssh/sshd_config 파일 수정(2) - Port Number 수정(22 > 2222)

 

#Port 22 부분에서 #를 제거하고 22를 2222와 같이 수정합니다.
수정이 완료되면 esc 키를 한 번 누르고, :x 입력(저장 및 종료) 

sudo service ssh start를 눌러서 ssh server를 실행합니다.

 

ssh port 확인

 

역시 nmap으로 port 2222를 확인해봤습니다. 예상대로 잘 Open 상태로 나오네요.
모든 ssh 연결 준비가 끝났네요.

 

Blink - NetHunter ssh 설정

 

iPad에서 blink와 같은 터미널 앱을 실행시키고 Win + , 버튼을 눌러 Host 메뉴로 이동합니다.
신규 Host를 등록시키면서 NetHunter가 설치된 IP, Port(2222), User kali를 입력하고 'Save' 버튼을 눌릅니다.
Password에 비밀번호를 입력해두셔도 됩니다. 입력하지 않으면 ssh로 연결을 시도하면 그때 비밀번호를 물어봅니다. 수동으로 비밀번호를 입력하고 접속하면 됩니다.

 

Blink - NetHunter(Kali ssh 연결)

 

Host Alias로 Nethunter라는 이름으로 등록시켜 두었기 때문에 ssh Nethunter라고 입력하면 됩니다.
아니면 ssh kali@Nethunter 휴대폰 IP -p 2222  를 통해서 접속하면 됩니다.

 

Blink - NetHunter(Kali ssh 연결)

 

iPad에서 ssh를 통해 접속한 화면입니다. 더 쾌적하게 쓸 수 있겠지요.
최초에 휴대전화에서 ssh, kex 서버만 실행시켜주고 나머지 본 작업은 모두 ipad나 다른 기계에서 진행할 수 있으니 라즈베리파이 구매해서 Kali 쓰시는 것보다 가성비가 더 좋은 것 같습니다.

 

NetHunter 주의사항

 

kali rootless installation 문서에 보면, 최초 NetHunter 설치 이후 sudo apt update && sudo apt full-upgrade -y를 실행시켜주라고 하던데요. update 및 upgrade 작업에는 약 5~6시간 소요됩니다.

이유는 모르겠지만 upgrade 이후에는 더 이상 nethunter가 실행되지 않습니다.
아래쪽과 같은 에러 메시지가 나오게 됩니다. update 및 upgrade는 하지 마시고 사용하세요.
쓰시는 tool만 따로 update를 해서 쓰시면 될 것 같네요.

 

NetHunter proot info: vpid 1 error

 

반응형
댓글