Linux
CentOS
セキュリティ
脆弱性
openvas
More than 1 year has passed since last update.


OpenVAS

http://www.openvas.org/

Nessus 2 からフォークされたオープンソースの脆弱性スキャナー。


パッケージ

英語圏の情報を含めほぼ Atomic リポジトリをベースに説明されているが、 EPEL リポジトリで最新版が公開されている。以下は EPEL でのパッケージ一覧。

パッケージ名
説明

openvas-cli
Command-line tool to drive OpenVAS Manager

openvas-gsa
Greenbone Security Assistant (GSA) is GUI to the OpenVAS

openvas-libraries
Support libraries for Open Vulnerability Assessment (OpenVAS) Scanner

openvas-libraries-devel
Development files for openvas-libraries

openvas-libraries-doc
Documentation for openvas-libraries

openvas-manager
Manager Module for the Open Vulnerability Assessment System (OpenVAS)

openvas-scanner
Open Vulnerability Assessment (OpenVAS) Scanner


インストール


EPEL リポジトリの追加

yum -y install epel-release && yum -y update epel-release

Redis および OpenVAS で EPEL リポジトリを利用する。

extras リポジトリからインストールすると 7-6 がインストールされるが、epel リポジトリでは 7-8 が最新なのでアップデートしておく。


Redis のセットアップ

yum install redis

cp -a /etc/redis.conf{,.org}
sed -i '/unixsocket/s/^# //' /etc/redis.conf
systemctl start redis && systemctl enable $_


SELinux の無効化

sed -i '/SELINUX=/s/enforcing/disabled/' /etc/selinux/config

reboot

最後に実行する openvas-check-setup コマンドで For a working OpenVAS installation you need to disable it. と怒られるので、やむを得ず無効化する。


netstat のインストール

yum install net-tools

CentOS 7 では netstat がインストールされておらず、チェックスクリプトに Could not find netstat binary, checks of the OpenVAS services are disabled. と怒られるので事前にインストールしておく。


nmap 5.51 のインストール

yum install https://nmap.org/dist/nmap-5.51.6-1.x86_64.rpm

echo "exclude=nmap*" >> /etc/yum.conf

標準リポジトリからインストールした nmap 6.40 だとチェックスクリプトに Your version of nmap is not fully supported: 6.40 と怒られるので、古いパッケージをインストールする。

また yum update でアップデートされないように exclude で除外しておく。


pdflatex のインストール

yum install texlive-latex-bin-bin

CentOS 7 では pdflatex は texlive-latex-bin-bin パッケージに含まれている。

yum install texlive-titlesec texlive-collection-latexrecommended

mkdir -p /usr/share/texlive/texmf-local/tex/latex/comment
curl -L http://mirrors.ctan.org/macros/latex/contrib/comment/{comment.sty} -o /usr/share/texlive/texmf-local/tex/latex/comment/#1
texhash

http://miotramemoria.blogspot.jp/2014/08/centos-7-openvas-pdf-reports.html


nsis のインストール

yum install http://www.atomicorp.com/channels/atomic/centos/7/x86_64/RPMS/mingw32-nsis-2.46-12.el7.art.x86_64.rpm


OpenVAS


インストールと自動起動設定

yum install openvas-{cli,gsa,scanner,manager}

systemctl enable openvas-{scanner,manager,gsa}


各種設定

Atomic リポジトリからのインストールの場合は openavs-setup コマンドで一発でいけるようだが、 EPEL リポジトリでは見当たらない。


Creates a scanner certificate

sed -i '/default_days/s/365/3650/' /usr/sbin/openvas-mkcert

openvas-mkcert -q

-q オプションは対話をスキップして新しい証明書を生成する。

-f オプションを付けると既存の証明書を上書きして生成する。

デフォルトでは /etc/pki/openvas/CA/cacert.pemservercert.pem が作成され、 /etc/pki/openvas/private/CA/cakey.pemserverkey.pem が作成される。


Creates a client certificate

sed -i '/default_days/s/365/3650/' /usr/bin/openvas-mkcert-client

openvas-mkcert-client -n -i

-n オプションは対話なしで証明書を生成し、 OpenVAS スキャナーに登録する。

-i オプションは OpenVAS マネージャで使用するためのクライアント証明書をインストールする。

デフォルトでは /etc/pki/openvas/CA/clientcert.pem が作成され、 /etc/pki/openvas/private/CA/clientkey.pem が作成される。


synchronizes an NVT collection with the 'OpenVAS NVT Feed'

yum install bzip2

openvas-nvt-sync

bzip2 がないと tar (child): bzip2: exec 不能: そのようなファイルやディレクトリはありません とエラーが出る。


synchronizes a SCAP data directory

sed -i '/SPLIT_PART_SIZE=/s/0/1024/' /usr/sbin/openvas-scapdata-sync

openvas-scapdata-sync

SPLIT_PART_SIZE を変更しないとエラーが発生する。

ダウンロードと処理に時間がかかる。


synchronizes a CERT advisory directory

openvas-certdata-sync

ダウンロードと処理に時間がかかる。


各サービスの起動

systemctl start openvas-{scanner,manager,gsa}


Rebuild the database with information from a running scanner

openvasmd --rebuild --progress

処理に時間がかかる。


ユーザーの作成

openvasmd --create-user=<username> --role=Admin

openvasmd --user=<username> --new-password=<password>

管理画面にログインする際のアカウントを作成する。


パスワードポリシー

vi /etc/openvas/pwpolicy.conf


チェックプログラムの実行

openvas-check-setup


スキャン


Target の一覧を取得

omp -u <username> -T


Scan Config の一覧を取得

omp -u <username> -g


Task を登録

omp -u <username> -C -n <Task Name> -c <Scan Config> --target=<Target>


Task を実行

omp -u <username> -S <Task>


Task の一覧を取得

omp -u <username> -G


Report の一覧を取得

omp -u <username> -G <Task>


Report を取得

omp -u <username> -R <Report>


管理画面

https://192.168.56.101:9443/

前述の「ユーザーの作成」で作成したユーザー名でログインする。

Atomic リポジトリからインストールした場合は 9392 ポートからアクセスするようだが、 EPEL リポジトリからインストールした場合は 9443 ポートからアクセスすることになるようだ。


セキュリティ関連記事