http://boanchanggo.tistory.com/14


Nessus 대하여 설치법과 자세한 설명이 나와 있습니다. 참고하여 설치하여 보았습니다.

Nessus 서버 관리자들이 즐겨 사용하는 취약점 분석 도구입니다. 데몬 형식이라 Nessus 서버에 설치를 하여 Service 가동시켜준 Nessus Client 통해 Nessus Server Target PC Scanning 요청 하여야 합니다.(Server 자체를 Scanning 수도 있음)


http://www.nessus.org/

홈페이지이며, 라이센스의 경우 ProfessionalFeed와 HomeFeed로 나누어져 있습니다.

ProfessionalFeed의 경우 상용이고 HomeFeed는 무료로 email 등록을 통하여 등록할 수 있습니다.


데몬을 가동시킬 서버를 CentOS 5.2 정하여 RPM 받은 설치하여 진행한 내용입니다.

설치하기 이전에 사이트를 통해 아래와 같은 프로그램이 먼저 설치되어 있어야 한다고 하여 확인 설치하였습니다.(생각입니다만, 아래 프로그램들은 client 리눅스에서 사용할 사용되는 프로그램인 같습니다)


    sharutils-4.2.1-14.i386.rpm

    glib-devel-1.2.10-10.i386.rpm

    freetype-devel-2.1.3-6.i386.rpm

    fontconfig-devel-2.1-9.i386.rpm

    XFree86-devel-4.3.0-2.i386.rpm

    gtk+-devel-1.2.10-25.i386.rpm

    gdk-pixbuf-0.18.0-7.i386.rpm


    yum 통해 설치하였고, XFree86 경우 yum list에는 존재하지 않아서 무시하고 설치하였으나 프로그램의 작동에는 아무런 문제가 없었습니다.


////////////////////////////////////////////////////////////////////////////

[root@notasusual ~]# rpm -Uvh Nessus-3.2.1-es5.i386.rpm

준비 중...              ########################################### [100%]

   1:Nessus                                                            (  1%########################################### [100%]

nessusd (Nessus) 3.2.1. for Linux

(C) 1998 - 2008 Tenable Network Security, Inc.


Processing the Nessus plugins...

[##################################################]


All plugins loaded

 - Please run /opt/nessus//sbin/nessus-adduser to add an admin user

 - Register your Nessus scanner at http://www.nessus.org/register/ to obtain

   all the newest plugins

 - You can start nessusd by typing /sbin/service nessusd start


//////////////////////////////////////////////////////////////////////////////////////////////////


설치 후에 nessus-adduser 통하여 Nessus Server 접속 시에 사용자 계정을 등록하고, plugins 업데이트를 위해 등록하라는 안내가 나옵니다. 위에서 얘기하였듯이 HomeFeed 무료기때문에 등록하게 되면 이메일로 key 전달되고 운영체제 별로 등록 방법이 안내되어 있으므로 운영체제에 맞는 등록 방법을 복사하여 입력하면 간단하게 등록이 됩니다. 후에는 /sbin/serice nessusd start 하여 데몬을 가동시켜주어야 한다고 안내되고 있습니다.


추가적으로 데몬의 가동에 생각보다 시간이 오래 소요되었습니다. 저의 경우에만 그런지 모르겠지만 데몬을 가동시키자 5 정도가 지나서야 서비스가 정상적으로 실행됐다는 안내가 나왔습니다.

그러니, 가동 후에 아무런 반응이 없을 시에는 다른 콘솔 창을 띄워 넣고 top 명령을 사용하여 nessus 프로세스의 점유율을 확인하여 보십시오. 상위에 링크되어 있다면 idle 상태가 아니기 때문에 가동중인 것입니다.


아래는 위의 3가지 항목에 대한 등록 장면입니다.


[root@notasusual ~]# /opt/nessus/bin/nessus-fetch --register 79C9-****-****-****-****

Your activation code has been registered properly - thank you.

Now fetching the newest plugin set from plugins.nessus.org...

Your Nessus installation is now up-to-date.

If auto_update is set to 'yes' in nessusd.conf, Nessus will

update the plugins by itself.

[root@notasusual ~]# /opt/nessus/sbin/nessus-adduser

Using /var/tmp as a temporary file holder


Add a new nessusd user

----------------------


Login : darkhi

Authentication (pass/cert) [pass] :

Login password :

Login password (again) :


User rules

----------

nessusd has a rules system which allows you to restrict the hosts

that darkhi has the right to test. For instance, you may want

him to be able to scan his own host only.


Please see the nessus-adduser(8) man page for the rules syntax


Enter the rules for this user, and hit ctrl-D once you are done :

(the user can have an empty rules set)



Login             : darkhi

Password          : ***********

DN                :

Rules             :



Is that ok ? (y/n) [y] y

user added.

[root@notasusual ~]#


If auto_update is set to 'yes' in nessusd.conf, Nessus will

update the plugins by itself.

auto_update=yes 옵션으로 인하여 자동으로 업데이트 되도록 설정되어 있습니다. 옵션을 끄고 싶다면 /opt/nessus/etc/nessus/nessusd.conf파일에서 no 수정하여 주시면 됩니다.


가동이 되었다면 홈페이지에서 윈도우용 Client 받은 설치하면 됩니다. 굳이 윈도우용을 설치할 필요는 없지만, 윈도우용이 사용하기 편하기 때문에 윈도우 용을 추천합니다.



[Nessus Client 화면]


Nessus Client 설치한 실행하여 Nessus Server 접속하는 장면입니다. 여기서는 Target 아닌 Nessus Server ip 적고 위에서 등록한 사용자 계정을 입력하여 주면 됩니다.



[Target IP 지정 화면]


Connect…  하여 연결이 되었다면, 위처럼 좌측에 + 버튼을 이용하여 Target IP를 지정한 후 Scan Now 입력하면 Scan하여 열린 Port 별로 취약점이나 Risk 정도를 Report하여 줍니다.


Connect 하였는데 연결이 되지 않는다면, WireShark 패킷을 떠보게 되면 자세히 있습니다.

보낸 패킷은 제대로 SYN하지만, 돌아오는 패킷은 Destination unreachable (Host administratively prohibited)라고 있습니다. 쉽게 말하자면 목적지 호스트와의 통신이 관리 목적상 금지되었다는 내용입니다.

원인은 Nessus 데몬이 설치된 Server 방화벽이 존재하기 때문입니다. Server 방화벽을 꺼주면 됩니다.

끄는 방법은 CentOS 계열에서는 service iptables stop 명령어를 사용하거나 setup 들어가서 방화벽 설정에서 disable 시켜주면 됩니다.



[Report 형식]


위의 모습처럼 Report 작성되어집니다. 상용 프로그램처럼 최신 취약점에 대한 정보가 plugin 으로 업데이트되어 제공되기 때문에 빠르고 자세한 정보를 취득할 있습니다. 단점으로는 Server 존재하여야 한다는 단점이 있습니다. 공격보다는 방어를 위한 분석도구로 있습니다.