13.4. セキュリティの設定
13.4.1. セキュリティツール
Snort
Snortはネットワークインターフェイス上のトラフィックを監視しパケットをいろんな規則と照合することで攻撃や侵入を捕らえられるIDSツール。
Snortが参照するルールセットはインターネット上で入手することができる。
またSnortの使用にはパケットキャプチャであるlibcapが必要となる。
Tripwire
Tripwireはファイルシステムの状況を記録し比較することでファイル改ざんを検知するプログラム。
検知はリアルタイムではなくcronにより定期的なスケジューリングにより起動する。
インストールと設定方法は以下の通り。
- パッケージ/ソースからインストール
- ポリシーファイルの作成
- ベースラインデータベースの作成
- 定期的チェック
- 必要に応じたポリシーファイル/ベースラインデータベースのアップデート
なおTripWireでは以下項目をチェックできる。
- ファイルタイプ
- リンク数
- パーミッション
- iノード番号
- 所有ユーザ
- iノードのタイムスタンプ
- 所有グループ
- iノードのあるデバイスID
- アクセス時刻
- MD5/SHA/Haval/CRC32ハッシュ値
- ファイル更新日時
- ブロック数
- ファイルサイズ
OpenVAS
OpenVASはOSSのセキュリティスキャナーでネットワーク経由で脆弱性チェックできるツール。
OpenVASは以下のコンポーネントで構成される。
| コンポーネント | 説明 | 
|---|---|
| OpenVAS Scanner | セキュリティスキャナ | 
| OpenVAS Manager | スキャナ/スキャンタスク/データ管理ソフトウェア | 
| OpenVAS Administrator | サービスやユーザを管理するソフトウェア | 
| Greebone Security Asiistant | WEBブラウザベースで操作するインターフェイス | 
| Greebone Security Desktop | GUIベースのクライアント | 
| OpenVAS CLI | コマンドラインベースのクライアント | 
Fail2ban
Failbanはログファイルを監視し攻撃を検知し、攻撃元IPを遮断するソフトウェア。
内部的には一定時間内に何度もログインを失敗するといったイベントにより、iptablesルールを書き換えアクセス元からの接続を遮断する。
13.4.2. 開いているポートの確認
Nmap
Nmapはポートスキャンツールで、開いているポートから稼働しているサービスを特定できる。
nmap <スキャンタイプ> <オプション> <IPアドレス \| ドメイン>| オプション | 説明 | 
|---|---|
| -sT | 接続スキャン | 
| -sS | SYNスキャン(TCP接続のSYNパケットを送信し、SYN+ACKが帰るかどうかでポートスキャンを行う) | 
| -sN | Nullスキャン | 
| -sF | FINスキャン | 
| -sX | Xmasスキャン | 
| -sR | RFCスキャン | 
| -O | OSを調べる | 
XmasツリースキャンというTCPヘッダのFIN、URQ、PSHフラグを有効にしたパケットを送って藩のを確かめる手法も利用できる。
nmap -sX www.example.comnetstat/ss/lsof/fuserコマンド
netstat,ss,,lsof,fuserコマンドも同様に開いているポートを確認できる。
netstat -atun
ss -atun
lsof -f -n
fuser -v -n tcp 2213.4.3. TCP Wrapper
TCP Wrapperは各種サーバプログラムへのアクセス制御を集中管理する仕組み。
libwrapライブラリにより機能が提供される。
アクセス制御は/etc/hosts.allowや/etc/hosts.denyに記述すことで可能。
これらのファイルで使えるワイルドカードは以下の通り。
| ワイルドカード | 意味 | 
|---|---|
| ALL | 全てのサービス/ホスト | 
| A EXCEPT B | B以外のA | 
| LOCAL | 「.」を含まないすべてのホスト(ローカルセグメントのホスト) | 
| PARANOID | ホスト名からDNS検索したアドレスとサービス要求元アドレスが不一致 | 
ローカルネットワークからすべてのsshdへのアクセスを許可する記述は/etc/hosts.allowに以下のように記述する。
sshd: LOCALまたspawnを使い特定のコマンドを実行させることもできる。
ALL:ALL:spawn logger -t hosts.deny Connectiondenied from %c13.4.4. セキュリティ情報
セキュリティの情報源には以下のようなものがある。
CERT/CC
セキュリティ事故情報を収集しセキュリティに関する技術支援情報を発信しているサイト。
- CERT/CC … https://www.cert.org
- JPCERT… https://www.jpcert.or.jp
BUGTRAQ
BUGTRUGはバグ情報を公開するためのメーリングリスト。
CIAC
CIACは米エネルギー省が運営するサイトで、セキュリティインシデントの報告を行っている。
13.4.5. インシデントへの対処
サーバがクラックされると以下のことが行われる可能性がある。
- コマンドの改ざん
- ログ改ざんやsyslog停止
- 悪意のあるソフトウェアのインストールと使用
改ざんされたlsコマンドでは不正なファイルのみを表示しないようにしてある場合があり、この場合はecho *コマンドによりlsを代用できる。
またファイル改ざんのチェックはrpmコマンドにより確認できる。
rpm -Vaこのオプションはイストール時のファイルの状態と現状を比較し、差があればプロパティと一緒に表示する。
表示されるRPM検証記号は以下の通り。
| 記号 | 説明 | 
|---|---|
| S | ファイルサイズが異なる | 
| M | アクセス権またはファイルタイプの変更がされている | 
| 5 | MD5チェックサムの値が異なる | 
| L | シンボリックリンクが変更されている | 
| U | 所有者が変更されている | 
| G | 所有グループが変更されている | 
| T | ファイルの更新時刻が異なる | 
| D | デバイスファイルが変更されている | 
| ? | 不明 | 
| c | 設定ファイルを表す |