[Security][Linux] 脆弱性診断なるものをやってみる

かる~くお試しの気持ちで

Nessusという脆弱性診断ツールを使って、インターネットへの接続ポイント周りの脆弱性診断を行ってみました。セキュリティ周りはそれなりに固めてるつもりですが、「WAFやファイアウォール入れてるから全面的に大丈夫だぜへヘーン」と言う自信があるわけでもなく、まぁ裏付け確認という意味合いが正しいですかね。

それ以前のところで躓く

で、サーバを設置しようとしたのですが、それ以前のところで躓きました。

現状、インターネットトラフィックをサーバ用途・クライアント用途で分けるために、クライアントによるIPv4ベースのWebサーフィンに関連する通信はInterlink IPv4ネットワークに抜けるよう構成しています。

具体的には、インターネットゲートウェイとしてSophos UTM9がその役割を受け持ち、特定のセグメントに対するWebサーフィンのディスティネーションポートを使う通信はRouterboard RB2011へ抜けるように指定しています。RB2011では、IPマスカレードを通じてインターネットへ抜けるようになっています。

今回、このInterlinkへ抜ける前段に有るDMZにNessusサーバを置こうとしました。と言うのは、サーバ群は全部Homenoc IPv4ネットワーク配下に設置しており、ネットワークとして離れているところからアクセスを試みるほうが、脆弱性診断としてあるべき姿だろうと考えたためです。

ところが、うまく行きませんでした。

具体的には、Nessusサーバがどうしてもインターネットに抜けられない事象が起きました。ただ、不思議な事にICMPだけは通ります。クライアントからTracerouteを掛けてみた所、気になる挙動として、本来Interlink DMZネットワークを通じて通り抜けていくはずの通信が、一度サーバ用ネットワークに戻り、RB2011の管理ポート接続にリダイレクトして抜けていることが確認されました。

このことから、どうやらRB2011側でセキュリティを配慮して実装したVRFがうまく動いてないんじゃないか?という推察に至りました。また、NAPT設定はセグメントを分けて設定を作っていたのですが、これだとうまく機能しないようです。ルールを統合する必要がありそうです。

Routerboard設定の見直し

そこで、以下の構成に修正をしました。

もうこの際割り切って、管理インタフェースはInterlink DMZ側のIPが対応することになりました。わざわざVRFで分けたりするのが良くなかったのかなと思われ、ガッツリVRF周りの設定も削除しています。これに伴いパケットフィルタのルール見直しを実施した上で、IPマスカレードの設定も単一設定に統合しています。

上記構成でなんとか、Nessusサーバもインターネットへ抜けられるようになりましたし、クライアント通信も変なリダイレクトが起こることなく正常にUTM9を抜けられる状態になりました。めでたしめでたし・・・・じゃなくて。本題にやっと入れる状況になりましたね。はい。

Nessusの導入

Nessusの導入手順はほぼ割愛します(なんじゃそら)。と言うのも、とっても簡単だからです。Google先生にお伺い立てたら導入手順なんて多々でてきますので、それを参考にすると良いと思います。なお、今回導入したNessusは個人利用限定、16ホストまでターゲット設定可能なHome Editionです。

丸々割愛だと何かとイタいので、ざっくり概要だけ書いておきます。

  • https://www.tenable.com/products/nessus-home にてユーザ登録をする
  • 通知メールとアクティベーションコードがやってくるのでそれを控えておく
  • 別途、Nessusのダウンロードを行う(rpmパッケージです)
  • Nessusのパッケージをrpm -ivhにより導入する
  • Webブラウザを開き、初期セットアップをする。この時アクティベーションコードを入力する

こんだけ。

実際にやってみたこと

実際にやってみたことは以下のとおりです。

  • Web Application Scan
    • ブログサーバ(CDNは通さず、BIG-IP配下を対象にする)
    • Mastodonインスタンス
  • Basic Network Scan
    • Homenoc IPv4グローバルセグメントのデバイス全部

結果としては以下の通りになりました。結果は内部SMTPにメール送付するようにしており、TOP5の概要を確認することも可能だったりします。

  • Web Application Scan
    • 全体を通してInfo1件だけ。
  • Basic Network Scan
    • 全体を通してInfoが75件、Mediumが6件
    • Mediumは1つのデバイスからだけ発生していました。主にSSL周りの設定でした。

ブログサーバ側のWAFはどのように反応したのか?

ブログサーバには、BIG-IP VE Laboが入っているわけですが、こちらのWAF機能であるASMではどういう反応をしたのか見てみます。

ASMでは3件の攻撃を検知してブロックしていました。内訳としては以下のとおりです。

  • プロトコル違反:2件
  • 不正メソッドの送信:1件
  • 攻撃シグニチャが反応:2件
    • Nessusの攻撃として反応した:1件
    • (.)ドット付ファイルの参照を試みた:1件

余談なんですが、このブログ記事を書く際、アップロードする画像ファイル名に「Nessus」と入れただけでWAFがブロックしちゃいました。いやぁ、厳しいなぁ・・・。こういう所はきちんと学習させていかなきゃならないんですね・・・。

また、これは画面までは拾ってないんですが、ポートスキャンの検知をUTM9がしていました。その他、IPSがだいぶ色々反応したようで、一通り主だったアタックは防御できているように見受けられました。

まだまだ使いこなせてない

Nessusはログイン情報などを与えると、管理機能に対する脆弱性スキャンを行ってくれたりもするようなのですが、私の力不足によりまだ細かいパラメータを精査できていません。Wordpressに対する設定例などがあればいいのですが、ちょいと体力不足なところもあり、手が出せていません。

いずれにしてもただブログを読んで頂くとか、Mastodonへアクセスするとか、そういう点についてはあまりクリティカルなものはなさそうで、取り敢えずはほっと一息という感じです。

が、まだ使いこなせてないということは、拾えてない脆弱性が有るわけで、セキュリティ知見を抑えるためにもこれは継続して勉強する必要があるなぁとは思います。ただ、セキュリティが私、光見えても苦手意識が有るんで、どこまでやる気が出せるかは疑問なところですね・・・(;´д`)トホホ…

localYouser

www.bluecore.net

九州在住のITインフラエンジニアです。 若干病気等に苦しめられながらも、小さな幸せをじっくり噛み締めながらお仕事頑張ってます。