보안이야기/보안문서 / / 2022. 12. 30. 16:29

Ubuntu 20.04 환경에서 Nessus 10.3.0의 오프라인 설치와 크랙

반응형

소개

Nessue의 Ubuntu 버전은 Kali 버전과 약간의 차이점이 있어 크랙과정에서도 차이점이 존재한다. 아래는 Ubuntu 환경에서 Nessue를 설치하고 크랙하는 과정에 설명해 볼 것이다.

해당 과정은 2022년 10월 20일을 시점으로 모든 패키지는 최신버전을 사용하고 있다.

설치와 크랙에 성공한 화면.

 

 

 

 

준비 작업:

  1. Ubuntu 20.04
  2. 최소 5GB 저장 공간

Nessus 10.3.0 Ubuntu amd64 릴리스 버전, 다른버전도 가능하지만 최신버전을 추천한다. 

다운로드 주소: https://www.tenable.com/downloads/nessus

주의: 설치 및 크랙 과정에는 컴퓨터/가상 머신을 재부팅할 필요가 없으며, 크랙 중에는 전원을 끄거나 재부팅을 하지 말기를 바란다.

 

질문과 답변:

1.
질문: Nessus 공식 홈페이지에 10.x와 8.x 두 버전 모두 최신버전으로 표기되어 있다. 어떤 버전을 선택해야 할까?
답변: 10.x 버전을 선택.

인터넷에 공개 되어 있는 많은 튜토리얼은 8.x 버전에 대한 크랙이라 10.x 버전에는 적용되지 않는다. 하지만 아래 소개할 크랙 방법은 8.x 및 10.x 버전을 모두 효과적으로 크랙할 수 있다.

두 버전의 차이점: 10.x 버전에는 더 많은 플랫폼을 지원한다. 역사적, 법적 이유로 Tenable은 Nessus 8.x 버전을 상당 기간 지원해야 한다. 때문에 홈페이지에 버전 8과 버전 10을 동시에 릴리즈 하고 있다.

2.
질문: 나의 컴퓨터(가상 머신)에서 여기에 소개되는 크랙방법을 적용할 수 있는가? 
답변: Linux 시스템이라면 모두 가능하다. 기본적인 크랙과정은 동일하다. Windows 시스템에서는 확인해 본적없다. 



실행 환경:
Ubuntu 20.04이 설치 된 VMware 가상 머신.

설치 튜토리얼:

1. 먼저 Nessus 설치 패키지 Nessus-10.3.0-ubuntu1404_amd64.deb 을 다운받아 Ubuntu 임의의 폴더에 저장한다.


2. Ubuntu에서 Nessus-10.3.0-ubuntu1404_amd64.deb 설치
먼저 root 사용자로 전환한 다음 dpkg-i Nessus-10.3.0-ubuntu1404_amd64.deb 명령어를 실행한다.


3. 설치가 완료되면 Nessus를 실행한다.

/bin/systemctl start nessusd.service


해당 명령어를 실행하면 다음과 같다.

4. 웹 브라우저로 https://localhost:8834/ 에 접속. Nessus는 SSL 프로토콜을 사용하므로 https를 써줘야 한다. 이때 웹 브라우저에서 보안 위험이 있음을 알린다. "고급" 버튼을 클릭한 다음 "위험 수용 및 계속"을 클릭한다.


5. 초기화 과정이 다소 시간이 걸릴 수 있다. 초기화가 완료되면 Managed Scanner를 선택하고 Continue를 클릭



6. 드롭다운 목록에서 Tenable.sc을 선택하고 Continue를 클릭.

sc는 Security Center, Tenable.sc은 Tenable Security Center로 가장 많은 기능을 포함하므로 이 항목을 선택한다.

 


7. 계정과 비밀번호 생성


8. 초기화 대기. 이 과정은 몇 분이 걸린다.


9. 초기화가 완료되면 방금 생성한 아이디와 비밀번호를 입력하고 Nessus에 로그인한다.


Nessus는 Scan 기능을 제공하지 않고 있고 Plugin Set은 N/A 인것을 확인할 수 있다. 즉 플러그인 세트가 없다. 아래 크랙을 시작하겠다. 

 

크랙 준비: 오프라인 라이센스 및 플러그인 패키지 가져오기

1. Nessus 소프트웨어의 챌린지 코드 획득

/opt/nessus/sbin/nessuscli fetch --challenge


2. 홈페이지에서 활성화 코드를 발급받는데 여기서 입력한 이메일주소는 중복으로 사용가능하다. 
https://www.tenable.com/products/nessus/nessus-essentials

 

3. 웹사이트 https://plugins.nessus.org/v2/offline.php에 접속하여 방금 획득한 챌린지 코드와 활성화 코드를 입력하고 subimt를 클릭하여 license와 플러그인 패키지를 획득한다.

/opt/nessus/sbin/nessuscli fetch --challenge #챌린지 코드 획득


4. 여기서 두 개의 다운로드 주소를 제공하는데, 위의 것은 최신 플러그인 패키지 all-2.0.tar.gz이고, 아래의 것은 license 파일 nessus.license 다. 해당 파일들을 Ubuntu의 임의의 폴더에 다운받으면 된다.

 

 

크랙 튜토리얼

크랙 작업:
Nessus를 설치했지만 Nessus는 스캔 기능을 제공하지 않았기 때문에 우리는 ㄱ. 온라인 인증을 우회하여 스캔 기능을 획득하고 ㄴ. 다른 제한을 해제해야 한다.


1. Nessus 서비스 중지

systemctl stop nessusd.service


2. 오프라인 등록

/opt/nessus/sbin/nessuscli fetch --register-offline /yourpath/nessus.license

여기서 yourpath는 이전에 획득한 라이센스 파일 nessus.license 경로다.

 

3. 오프라인으로 플러그인 업데이트

/opt/nessus/sbin/nessuscli update /yourpath/all-2.0.tar.gz

여기서 yourpath는 플러그인 패키지 all-2.0.tar.gz 파일의 경로다.


4. 방금 다운로드한 플러그인을 읽기 전용으로 설정한다. 15만개의 플러그인이 있기 때문에 실행 시간이 많이 필요하다.

find/opt/nessus/lib/nessus/plugins/-name "*.*" | xargs-i chattr + i {} #plugins을 읽기 전용으로 설정



5. 플러그인 디렉터리에서 plugin_feed_info.inc 파일의 읽기 전용 모드를 해제.

chattr-i/opt/nessus/lib/nessus/plugins/plugin_feed_info.inc #inc 파일의 읽기 전용모드 해제



6. 플러그인 세트 정보 확인

cat /opt/nessus/lib/nessus/plugins/plugin_feed_info.inc

여기서 PLUGIN_SET 숫자를 기억하길 바란다.


7. 설정파일을 편집

vi /opt/nessus/lib/nessus/plugins/plugin_feed_info.inc


다음과 같이 수정한다.

PLUGIN_SET = "XXXXXX";

PLUGIN_FEED = "ProfessionalFeed (Direct)";

PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";

이 중 XXXXXXX는 PLUGIN_SET의 숫자이다



8. 다른 설정파일 편집

vi /opt/nessus/var/nessus/plugin_feed_info.inc

아래 내용을 입력:

PLUGIN_SET = "XXXXXX";

PLUGIN_FEED = "ProfessionalFeed (Direct)";

PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";

이 중 XXXXXXX는 PLUGIN_SET의 숫자이다



9. 해당 파일을 읽기 전용으로 설정

chattr + i/opt/nessus/var/nessus/plugin_feed_info.inc # 읽기 전용 모드로 설정



10. 해당 파일을 같은 디렉터리의 plugins 디렉터리에 복사한다.

cd /opt/nessus/var/nessus/ # 설치 디렉터리로 이동

mkdir plugins # plugins 디렉토리 생성

cp plugin_feed_info.inc plugins # plugins 디렉토리에 복사





11. Nessus 서비스 시작

systemctl start nessusd.service



12. https://localhost:8834/에 접속하면 초기화 페이지가 다시 나타난다. 이것은 Nessus가 플러그인을 컴파일하고 설치하는 과정이며 90%까지 진행되었다가 다시 20%로 회복하여도 정상적인 현상이다. 이 과정은 수십분에서 몇 시간이 걸린다.



13. 초기화가 완료되면 로그인창이 뜨는데 방금 생성한 사용자 이름과 암호를 사용하여 Nessus에 로그인한다.



여기까지 크랙과정은 완료 되었다.

 

크랙 성공을 확인:

1. Nessus에 로그인하면 Settings에서 IP 수 제한이 해제되었음을 알 수 있으며, 활성화 코드는 N/A이지만 인증시간이 무기한임을 확인 할 수 있다.



2. Scans를 클릭하고 오른쪽 상단 파란색 New Scan을 클릭하여 사용 가능한 기능을 확인한다.

 



3. Advanced Scan을 클릭하고 Plugins를 클릭하면 플러그인의 수가 기업버전과 일치함을 알 수 있다.



4. Nessus의 많은 서비스는 플러그인의 형태로 존재하기 때문에 Nessus 서비스를 다시 시작할 때마다 자동으로 플러그인을 다시 로드하며 이 프로세스는 몇 분에서 몇 시간이 소요된다.


시작하자마자 접속 실패나 Feed Error 페이지가 나타날 수 있으니 몇 번 더 새로 고치면 해결된다.

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유