文責・作成:藤原詩郎(akashi@linux-club.org/akashi@thinkpad.gr.jp) 作成日付 :1999年7月20日 更新日付 :2000年4月24日 ※ ただし、この文書の内容にそって作業したことにより、いかなるトラブル ※ が生じても、文書作成者は一切の責任を負いません。 nessus は、インターネットサーバおよびネットワーク機器のセキュリティを チェックするフリーソフトです。入手は以下のサイトで行えます。 http://www.nessus.com/ 1. nessusd をインストールするための必須環境 Linux に nessus をインストールするためには、以下の環境が必要である。 ・ Glibc2 の入った Linux マシン ・ gtk+-1.2.3.tar.gz か、より新しいパッケージ ・ gmp-2.0.2.tar.gz か、より新しいパッケージ 2. nessusd の導入手順 2.1 パッケージの入手 現在の Nessus は、1世代につき4つのアーカイブが必要です。 ・libnasl-1.0.0pre2.tar.gz ・nessus-libraries-1.0.0pre2.tar.gz ・nessus-core-1.0.0pre2.tar.gz ・nessus-plugins-1.0.0pre2.tar.gz 2.2 インストール手順 次の順番で、./configure; make; make install してください。 1) nessus-libraries-0.99.10.tar.gz 2) libnasl-0.99.10.tar.gz 3) nessus-core-0.99.10.tar.gz ※ 1.06 は、./configure --enable-save-kb にしてね。 4) nessus-plugins-0.99.10.tar.gz これらを make install すると /usr/local/nessus に必要ファイルがインス トールされます。nessusd(デーモン)とnessus(クライアント)は、 /usr/local/bin へインストールされます。 このとき、root でインストールすると、クラッカーに悪用される恐れがある ので注意が必要です(通常は root で良いと思いますが、使わない時は、 nessusd をとめておきましょう)。 5) /usr/local/bin/nessusd と起動すると、nessusd.private-keys とい うキーファイルが /usr/local/nessus に作成されます。 6) クライアントのユーザ登録を以下のように行って下さい。 nessusd -P akashi,passwd これで、akashiというユーザが、パスワード passwd で登録されます。 (古いバージョンとユーザ登録の仕方が変わっています。) 7) nessusd& で、nessusd サーバプログラムを起動します。 8) nessus クライアントプログラムを起動します。セキュリティチェック するターゲットマシンと、nessus サーバの走っているマシンを設定し て、ユーザIDを確認したら、Logon ボタンを押します。パスワード を要求されて認証が終われば準備完了です。チェックしたい項目を、 GUIのボタンで設定したら、[start the scan] でチェックが開始さ れます。 注意)古いバージョンの nessus では、/etc/nessusd.conf が入りました が、今のバージョンではこれが邪魔をしますので、削除しておいて から、インストール作業をしてください。 3. クライアントの入力画面 3.1 Nessusd host New session setup Nessusd Host:localhost Port :3001 Encryption :twofish/ripemd160:3 login :akashi [logon] Nessusd Host に nessusd(サーバプログラム)が動作しているホストを 指定します。Port は、デフォルトで、3001 が使用されますが、いたずら されたくない場合は、ポートを変更します。Encryption は、サーバとクラ イアントが通信するときの暗号化方式を指定します。変更しなくて良いと 思います。login は、nessus のユーザIDを指定します。logon ボタンを 押すと指定したユーザIDで、クライアントがサーバに接続を試みます。 この時、サーバがパスワードを聞いてくるので、定義したパスワードを入 力します。うまく認証されれば、connect されます。 3.2 Target selection Primary Target(s):melon.ask.ne.jp Max hosts :20 Host expansion :□ Perform a DNS zone transfer Primary Target(s) に、セキュリティチェックする1台のホスト名を入 力します。ここで入力された、ホストのドメイン名から、DNS を探し出し Host expansion をチェックしていると、Max hosts 数分のホストを検出 しセキュリティチェックします。 3.3 Plugins セキュリティチェックするモジュールを選択します。 connect するとここに、動作させることのできるセキュリティモジュー ル一覧が表示されます。デフォルトでは、全部動かす設定になっているた め、セキュリティホールがあると、チェックされたマシンがダウンするこ とがあります。ダウンさせるとまずい状況で、テストする場合は、ダウン させる恐れのある、モジュールのチェックを外して動作しないようにしま す。 3.4 Prefs. Plugin preferences How to check if directries are writeable: ◆ Trust the pernissions(drwxrwx---) ◇ Attempt to store file queso.conf location:/usr/local/nessus FTP bounce scan: FTP server to use:localhost セキュリティモジュールのプリファレンス。ftp directory のチェック に際して、パーミッションを見る。また、実際にファイルを転送してチェッ クするなどを指定します。 queso.conf のある場所を指定します。デフォルトのままで良いです。 ftp のテストをするときに使う ftp server のホスト名を指定します。 3.5 Scan options □ Do a reverse lookup on the IP before testing it □ Optimize the test Port range: 1-15000 Max thread: 20 Path to the CGI: /cgi-bin port scanner: メニューから選択 テストを実行するためのオプションを指定します。 テストする前に、ターゲットのホストが動いているかをチェックする。 テストする前に、DNS でターゲットホストの逆引きができるかチェック する。ファイアウォールの外部からのテストか内部からのテストかを指 定する。Port range には、ポートスキャンする範囲を指定します。Max thread には、作成する子プロセスの最台数を指定する。Max hosts と 合わせておけば良いと思います。 connect すると port scanner には、実施できるセキュリティチェッ クの一覧が表示されるので、どういう趣旨でポートスキャンするかに よって、選択を変えます。 ☆ Linux の場合は、Nmap tcp connect() scan だけを指定します。 UDP がスキャナーがちゃんと動かずに、診断間違った結果を出 す場合があるそうです。 3.6 User E-Mail:akashi@ask.ne.jp Rules : [ ][add rule] nessusd が、メールでメッセージを通知するためのメールアドレスと セキュリティチェックする、ネットワークをドメイン名のレベルでマス クします。rule には、y:*.mydomain.co.jp のように、診断を実行する 範囲を指定します。DNS からホスト名を取り出して診断させる場合は、 注意して範囲の rule を定義してください。 y:* n:*.mydomain.co.jp こんなことやると、自分のドメイン以外が対象に、、、(^^;) 3.7 start the scan 前節までの入力項目に間違いがなければ、このボタンを押すとセキュ リティチェックが実施され、30分〜1時間程度で、レポートが出力 されます。ただし、ファイアウォールなどの設定でパケットをロスト させている場合は、ポートスキャンのチェック等にとてつもない時間が かかります。UNIX クライアントも直接レポートの出力を HTML 形式の 文書に整形することができるようになりました。 3.8 Loard report 過去に実施したテストのレポートを画面で見たいときに、このボタン を押してレポートを読み込ませます。読み込ませると、レポート画面が 表示されます。 3.9 quit nessus クライアントを終了させます。 4. その他 以上は、Linux(Unix) の nessus クライアントを用いた場合のことを 説明しましたが、nessus のクライアントは、java や windows95 など のものもあり、レポート出力に関しては、それらのクライアントを用い た方が便利かも知れません。いきなり HTML での出力とかも可能なよう です。 以上