Top

우분투 리눅스 칼리화 : katoolin3

전산 소프트웨어(코딩)/리눅스

2022. 5. 26.

 

들어가기 전

우분투 리눅스를 칼리화 를 시키는 방법이다.

정확히는 우분투에 칼리리눅스에 깔린 각종툴을

추가 해주는 방법이다.

 

아, 참고로 시간관계상 오직 택스트 로 작성하니

양해를 부탁드린다.

 

다운로드 전 사전 조건들

  • Python >= 3.5
  • Git
  • sh, bash
  • python3-apt

 

Katoolin3 기능

Katoolin3는 아래와 같은 Katoolin에 비해 몇 가지 개선 사항이다.

 

1. Katoolin3는 Python 3으로 이식되었다. Katoolin은 Python 2.x로 작성되었다.

   최신 패키지를 제공한다. 오래된 katoolin은 오래된 패키지 목록을 사용한다.

2 리포지토리에서 패키지를 더 이상 사용할 수 없으면 이전 katoolin이 중단된다.

   Katoolin3는 누락된 패키지를 감지하고 단순히 무시한다.

3. 기존 Katoolin과 달리 Katoolin3에서 설치한 모든 패키지를 제거할 수 있다.

   패키지를 개별적으로 또는 한 번에 모두 제거할 수 있다.

   기존 Katoolin과 달리 Katoolin3에서 설치한 모든 패키지를 제거할 수 있다.

   패키지를 개별적으로 또는 한 번에 모두 제거할 수 있다.

4. 일부 사용자는 이전 Katoolin을 설치한 후 Ubuntu OS를

   업데이트하거나 업그레이드할 수 없다고 불평했다.

   이 문제는 최신 Katoolin3 버전에서 해결 및 수정되었다.

5. Kali 저장소는 katoolin3의 런타임 중에만 활성화되기 때문에

   업그레이드는 시스템을 손상시키지 않는다고 한다.

6. 이전 katoolin은 중요한 시스템 구성 파일을 수정하고 삭제한다.

   이러한 잠재적으로 위험한 작업은 Katoolin3에서 변경되었다.

7. 기존 Katoolin에서 패키지 목록에 새 패키지를 추가하는 것은 어렵다고한다.

    더 이상! Katoolin3를 사용하면 패키지 목록을 유지 관리하는 것이

    훨씬 더 쉬워졌다고 한다.

 

이 패키지는 최신 Ubuntu 20.04 LTS에 사전 설치되어 제공되므로 아무 것도 설치할 필요가 없다.

 

먼저, [universe]활성화했는지 확인 부터 해보도록하자

$ sudo add-apt-repository universe

 

다음 명령을 사용하여 Katollin3 GitHub 리포지토리를 복제한다.

git clone https://github.com/s-h-3-l-l/katoolin3

 

katoolin3 디렉토리로 이동한다

$ cd katoolin3/

 

install.sh를 실행 가능하게 해둔다

$ chmod +x ./install.sh

 

그전에 해야하는 작업이 있다. 서버관련 오류가 나서

제대로 실행이 안되는경우가 있으니 다음과 같이 설정 해준다

 

먼저 아래의 명령어를 입력해서 vi 편집기를 열어놓는다.

sudo vi install.sh

 

그럼 아래의 코드가 보일껀데

#!/bin/bash

source "conf.sh";

PROGRAM_PREFIX="";

# If the installation directory is not in PATH issue a warning:
if ! echo $PATH | grep -q "$DIR";
then
    echo "Warning: '$DIR' is not in your PATH.";
    echo "         To use this program add '$DIR'";
    echo "         to your PATH or manually copy";
    echo "         katoolin3.py somewhere.";
    echo;
    PROGRAM_PREFIX="$DIR/";
fi

# Check if shebang from katoolin3.py can execute:
/usr/bin/env python3 -V >/dev/null || die "Please install 'python3'";

# Install all dependencies:
apt-key adv -qq --keyserver pool.sks-keyservers.net --recv-keys ED444FF07D8D0BF6 
|| apt-key adv -qq --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys ED444FF07D8D0BF6 
|| die "This may be a server issue. Please try again later";

apt-get -qq -y -m install python3-apt || die;

install -T -g root -o root -m 555 ./katoolin3.py "$DIR/$PROGRAM" || die;

echo "Successfully installed."
echo "Run it with 'sudo $PROGRAM_PREFIX$PROGRAM'.";
exit 0;

 

이 코드 부분을

apt-key adv -qq --keyserver pool.sks-keyservers.net --recv-keys ED444FF07D8D0BF6 
|| apt-key adv -qq --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys ED444FF07D8D0BF6 
|| die "This may be a server issue. Please try again later";

 

아래의 코드로 변경 하고 저장해준다

key_servers=("ha.pool.sks-keyservers.net" \ 
            "hkp://p80.pool.sks-keyservers.net:80" \
            "keyserver.ubuntu.com" \
            "hkp://keyserver.ubuntu.com:80" \ 
            "pgp.mit.edu")

for key_server in ${key_servers[@]}; do
    echo "[+] Start checking ${key_server}..."
    gpg --keyserver "${key_server}" --recv-keys ED444FF07D8D0BF6 && break || echo "[+] Trying new server..."
done

 

그전에 gpg키 가 인증이 안된다는 오류가 출력

됨으로 아래 명령을 입력해서 gpg키 를 인증해보도록하자

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys {ED~로 시작하는 코드}

 

그런 다음 다음 명령을 사용하여 Katoolin3을 설치.

$ sudo ./install.sh

 

성공적으로 설치되면 다음 메시지가 표시됩다.

Executing: /tmp/apt-key-gpghome.r4OwC90o2Q/gpg.1.sh -qq --keyserver pool.sks-keyservers.net --recv-keys ED444FF07D8D0BF6
Successfully installed.
Run it with 'sudo katoolin3'.

 

 Important Warning:

Katoolin3가 기존 저장소 나 패키지 들을 엉망으로 만들어버리는 것처럼 보인다.

많은 유저들이 Katoolin3가 Katoolin을 제거하려고 할 때 GNOME DE,

심지어 Katoolin과 관련이 없는 다른 패키지들을 제거한다고 불평할 수 있으니

그래서 본인은 여러분이 짐시동안 가상OS에서 사용해보고

그것이 작동하는지 보는것을 추천한다

Ubuntu 20.04 LTS에서 Katoolin3을 사용하여 Kali Linux 도구 설치

 

Katoolin3를 실행하려면 다음 명령을 입력하자.

$ sudo katoolin3

Katoolin3는 Ubuntu 시스템에 필요한 Kali Linux 리포지토리를 추가하고 소스 목록을 업데이트합다.

 

저장소가 추가되고 소스 목록이 업데이트되면 Katoolin3 메인 메뉴가 표시됩다.

[...]
Main Menu
0) View Categories              
1) Install All                  
2) Uninstall All                
3) Search repository            
4) List installed packages      
5) List not installed packages  
6) Install Kali Menu            
7) Uninstall old katoolin       
8) Help                         
9) Exit                         

kat>

 

 Important note:

업데이트를 하면 안된다는 점 참고하자

katoolin3가 실행되는 동안 다른 방법으로

패키지를 업그레이드하거나 패키지 캐시를 수정하자.

시스템을 업데이트하거나 패키지 캐시를 수정하기 전에

항상 Katoolin3를 닫아야한다.

이전 Katoolin과 달리 새로운 Katoolin3은

Kali 저장소가 katoolin3의 런타임 중에만 활성화되기

때문에 업그레이드하는 동안 시스템을 중단하지 않는다.

 

카테고리 보기

사용 가능한 범주 목록을 보려면 0(영)을 입력하고 Enter 키를 누른다.

[...]
kat> 0

Select a Category
0) Exploitation Tools     8) Sniffing & Spoofing
1) Forensics Tools        9) Stress Testing
2) Hardware Hacking       10) Vulnerability Analysis
3) Information Gathering  11) Web Applications
4) Maintaining Access     12) Wireless Attacks
5) Password Attacks       13) HELP
6) Reporting Tools        14) BACK
7) Reverse Engineering    

kat>

보시다시피 12개의 카테고리가 있다.

각 범주에는 하나 이상의 패키지가 포함될 수 있다.

이전 메뉴로 돌아가려면 14를 입력하고 ENTER를 누르자.

 

범주에서 사용 가능한 패키지 목록을 보려면 해당 번호를 입력하고 Enter 키를 누르자.

kat> 1

Select a Package
0) Bulk Extractor  12) Pdf Parser
1) Capstone Tool   13) pdfid
2) chntpw          14) Distorm3
3) dc3dd           15) Capstone
4) ddrescue        16) Distorm3
5) dumpzilla       17) regripper
6) extundelete     18) volatility
7) foremost        19) xplico
8) galleta         20) ALL
9) guymager        21) HELP
10) Libdistorm3 3  22) BACK
11) p0f            

kat>

 

패키지 설치

모든 패키지를 한 번에 설치할 수 있다.

그러나 권장되지도 필요하지도 않는다.

패키지를 설치하려면 원하는 카테고리

이동하여 해당 번호를 입력하자.

[...]
Select a Package
0) Bulk Extractor  12) Pdf Parser
1) Capstone Tool   13) pdfid
2) chntpw          14) Distorm3
3) dc3dd           15) Capstone
4) ddrescue        16) Distorm3
5) dumpzilla       17) regripper
6) extundelete     18) volatility
7) foremost        19) xplico
8) galleta         20) ALL
9) guymager        21) HELP
10) Libdistorm3 3  22) BACK
11) p0f            

kat> 7

선택한 패키지는 Kali Linux 리포지토리에서 다운로드되어

Ubuntu 시스템에 설치된다고한다.

Reading package lists...
Installing 1 package...
Get:1 http://ftp.harukasan.org/kali kali-rolling/main amd64 foremost amd64 1.5.7-9+b1 [42.1 kB] 
Fetched 42.1 kB in 6s (0 B/s) 
Selecting previously unselected package foremost.
(Reading database ... 108229 files and directories currently installed.)
Preparing to unpack .../foremost_1.5.7-9+b1_amd64.deb ...
Unpacking foremost (1.5.7-9+b1) ...
Setting up foremost (1.5.7-9+b1) ...
Processing triggers for man-db (2.9.1-1) ...

한 번에 여러 패키지를 설치하려면 3-5와 같은 범위를 지정하거나

1,2,3과 같은 목록을 지정하거나 1,2,5-7,9와 같이 결합한다.

 

패키지 제거

Ubuntu 시스템에서 모든 Kali Linux 도구를 제거하려면 주 메뉴에서 2를 입력하자.

 

Kali Linux 저장소 검색

특정 도구를 검색하려면 메인 메뉴에서 숫자 3을 입력한 후

패키지 이름을 입력하여 패키지에 대한 정보를 얻거나

키워드를 입력하여 패키지를 검색한다.

여기에서 "복구" 관련 도구를 검색하고 있다.

[...]
kat> 3

Enter a package name to get information about a package
or enter a keyword to search for packages...

Search: recovery
bacula/kali-rolling 9.6.3-1 all
  network backup service - metapackage

bacula-bscan/kali-rolling 9.6.3-1 amd64
  network backup service - bscan tool

bacula-client/kali-rolling 9.6.3-1 all
  network backup service - client metapackage

bacula-common/kali-rolling 9.6.3-1 amd64
  network backup service - common support files

bacula-common-mysql/kali-rolling 9.6.3-1 amd64
  network backup service - MySQL common files
[...]

 

설치된 패키지 나열

설치된 모든 kali Linux 도구를 보려면 Katollin3 기본 메뉴에서 4번을 입력하자.

Main Menu
0) View Categories              
1) Install All                  
2) Uninstall All                
3) Search repository            
4) List installed packages      
5) List not installed packages  
6) Install Kali Menu            
7) Uninstall old katoolin       
8) Help                         
9) Exit                         

kat> 4   
foremost

보시다시피 "forest" 도구를 설치했다.

 

설치되지 않은 패키지 나열

설치되지 않은 모든 패키지를 보려면 주 메뉴에서 5번을 입력하자.

[...]
kat> 5
Ace Voip
aircrack-ng
airgraph-ng
amap
Android Sdk
Apache Users
apktool
arachni
arduino
armitage
[...]

 

칼리 메뉴 설치

이 옵션은 Ubuntu 시스템에 Kali 메뉴를 설치한다.

이렇게 하면 설치된 모든 Kali Linux 도구에 대한 전용 메뉴가

추가되므로 이 메뉴에서 모든 도구를 빠르게 찾고 실행할 수 있다.

 

Kali 메뉴를 설치하려면 메인 메뉴에서 6번을 입력하고 ENTER를 누자.

 

오래된 카툴린 제거

이미 설치된 경우 이전 Katoolin 버전을 제거한다.

kat> 8   

The program flow of this program is realized by presenting
a list of options that you can choose from.

When selecting packages you can select
more than one by passing a comma-separated list like
'0,1,2,3' or specifying a range like '12-24' or combining
those two '0,1,3-5,12'.

If you want to remove packages simply prepend '~' before a
string like above.

If you want information about a specific package
presented to you enter the number of the package
followed by a '?'.

If the list of options gets out of sight type '!!'
to print it again.

Packages which you have already installed are shown
in this color.

Katoolin3 종료

Katoolin3를 종료하려면 숫자 9를 입력하고 Enter 키를 누르자.

 

카툴린3 업데이트

Katoolin3를 복제한 디렉토리로 이동:

$ cd katoolin3/

업데이트 스크립트를 실행 가능하게 하자.

$ chmod +x ./update.sh

업데이트 스크립트를 실행하여 Katoolin3를 사용 가능한 최신 버전으로 업데이트하자.

$ sudo ./update.sh

개발자가 메인 메뉴에서 Katoolin3를 업데이트하는 옵션을 포함했다면 더 좋았을 것으로보인다.

 

Katoolin3 제거

더 이상 Katoolin3를 사용하지 않는다면 아래 그림과 같이 제거하면된다.

 

Katoolin3를 복제한 디렉토리로 이동:

$ cd katoolin3/

제거 스크립트를 실행 가능하게 하자.

$ chmod +x ./uninstall.sh

마지막으로 다음 명령을 사용하여 시스템에서 Katoolin3을 제거.

$ sudo ./uninstall.sh

 

Conclusion

이 가이드에서는 Katoolin3이 무엇인지, 그 기능과

Ubuntu, Debian 및 기타 DEB 기반 시스템에서 katoolin3을

사용하여 Kali Linux 도구를 설치하는 방법에 대해 알아보았지만.

 

본인이 추가로 알아 보니까 이 스크립트를 제작한 제작자는

더이상 업데이트를 하지 않는것 으로 추측된다.

 

가급적 그양 원래 칼리 리눅스를 사용하던가 해야겠다.

 

P. s. 참고 사이트

https://ostechnix.com/install-kali-linux-tools-using-katoolin3-in-ubuntu-20-04-lts/