僕とコードとブルーハワイ

omega (@equal_001) の日記

Lynis - セキュリティハードニングツールを使ってみる

Lynisとは

セキュリティハードニングツールの一つ. Linuxだけしか使えないと思ったらmacOSWindowsにも対応していた.
今回はLynisを使ってみた作業ログを書き残す.

環境: dockerで立てたdebianサーバ (versionなどは下の方に載っけてある)

Lynis install

特に難しいことはなく, apt-getで入れることができた.

root@edbc62cbef6a:/app# apt-get install lynis
root@edbc62cbef6a:/app# lynis --version
1.6.3

lynisでセキュリティチェックしてみる

lynis --check-all と -quickがあった.
最初なので --check-all で一つずつ確かめてみていった. -quickにすると、Enter入力しなくても勝手に結果が標準出力される.
項目が多いので最初と結果だけ. 最新を入れたかったけどこのosのversionだと1.6.3しか入らないようだ.

[+] Initializing program
------------------------------------
  - Detecting OS...                                           [ DONE ]
  - Clearing log file (/var/log/lynis.log)...                 [ DONE ]

  ---------------------------------------------------
  Program version:           1.6.3
  Operating system:          Linux
  Operating system name:     Debian
  Operating system version:  8.11
  Kernel version:            4.9.93
  Hardware platform:         x86_64
  Virtual machine:           Unknown
  Hostname:                  edbc62cbef6a
  Auditor:                   [Unknown]
  Profile:                   /etc/lynis/default.prf
  Log file:                  /var/log/lynis.log
  Report file:               /var/log/lynis-report.dat
  Report version:            1.0
  Plugin directory:          /etc/lynis/plugins
  ---------------------------------------------------

項目が多いので最初と結果だけ. Warningsが3つあった.
今回は一番上の syslog daemon が無いというWarningをやっつけてみる.

  -[ Lynis 1.6.3 Results ]-

  Warnings:
  ----------------------------
  - No syslog daemon found [LOGG-2130]
      https://cisofy.com/controls/LOGG-2130/

  - No swap partion found in /etc/fstab [FILE-6332]
      http://cisofy.com/controls/FILE-6332/

  - klogd is not running, which could lead to missing kernel messages in log files [LOGG-2138]
      http://cisofy.com/controls/LOGG-2138/


  Follow-up:
  ----------------------------
  - Check the logfile (less /var/log/lynis.log)
  - Read security controls texts (http://cisofy.com)
  - Use --upload to upload data (Lynis Enterprise users)

セキュリティの問題を解決してみる

基本手順

基本的には, var/log/lynis.log/var/log/lynis-report.dat を見てsuggestされたアクションを取っていく.

早速 /var/log/lynis-report.dat をLOGG-2130でgrepしてみると, suggestion項目 に syslogdを起動しろという内容が書いてあった. その通りのアクションを取っていくことにする.

  Check if any syslog daemon is running and correctly configured [LOGG-2130]
    https://cisofy.com/controls/LOGG-2130/

例) syslogdを導入する

調べたらそもそもsyslogdが入っていなかった. なので, syslogdをinstallするところからのスタート.

syslogdでinstallしてみたらinetutils-syslogdがサジェストされた.
これはDeianのsyslogd packageの名前だった.
Debian -- sid の inetutils-syslogd パッケージに関する詳細

root@edbc62cbef6a:/app# apt-get install syslogd
 : 
Package syslogd is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  inetutils-syslogd

install後, 無事にsyslogdが入った.

root@edbc62cbef6a:/app# apt-get install inetutils-syslogd
Reading package lists... Done
Building dependency tree
:
Processing triggers for systemd (215-17+deb8u7) ...

root@edbc62cbef6a:/app# which inetutils-syslogd
root@edbc62cbef6a:/app# which syslogd
/usr/sbin/syslogd
# 実行
root@edbc62cbef6a:/app# /usr/sbin/syslogd
# 起動した
root@edbc62cbef6a:/app# ps aux | grep syslogd | grep -v grep
root     32308  0.0  0.0   8440  1828 ?        S    17:45   0:00 /usr/sbin/syslogd

syslogd導入前のlogディレクト

root@edbc62cbef6a:/app# ls /var/log
alternatives.log  apt  btmp  dmesg  dpkg.log  faillog  fontconfig.log  fsck  lastlog  lynis-report.dat	lynis.log  wtmp

syslogd導入後のlogディレクトリ. log fileが色々増えている.

root@edbc62cbef6a:/app# ls /var/log
alternatives.log  auth.log  daemon.log	dmesg	  faillog	  fsck	    lastlog  lynis-report.dat  mail.err   mail.log   messages  syslog	 uucp.log
apt		  btmp	    debug	dpkg.log  fontconfig.log  kern.log  lpr.log  lynis.log	       mail.info  mail.warn  news      user.log  wtmp

もう一度セキュリティチェックをする

今回は --quick で実行する.
Warningが減っていた. どうやらセキュリティハードニングの第一歩を踏み出せたらしい.

  -[ Lynis 1.6.3 Results ]-

  Warnings:
  ----------------------------
  - No swap partion found in /etc/fstab [FILE-6332]
      http://cisofy.com/controls/FILE-6332/

  - klogd is not running, which could lead to missing kernel messages in log files [LOGG-2138]
      http://cisofy.com/controls/LOGG-2138/

感想

  • 結果が見やすい. 項目ごとにチェックした結果を表示してくれる.
  • Suggestionsを出してくれるのがありがたい. 解決の糸口を一つでも提示してもらえるだけでも調べる時間が短縮されて助かる.
  • 無料枠でもそれなりに使えそうではあった.
  • セキュリティとかOSについて詳しくないとWarningsに出てくる項目の脅威度がいまいちわからない. そういう場合はLynis Enterprise Suiteでサポート受けるとかになりそう.