Snortインストール編
先日借りたVPSに対して無料IDSの代表Snortをインストールしたのでメモ。
Snortインストール:
環境
daq:daq-2.0.4.tar.gz
キャプチャ用のlibpcapがインストールされているか確認
# rpm -qa | grep libpcap
libpcap-1.4.0-1.20130826git2dbcaa1.el6.x86_64
入ってることを確認。
daqのインストール。(最新版は公式サイトより)
# wget https://www.snort.org/downloads/snort/daq-2.0.4.tar.gz
# tar -zxvf dap-2.0.4.tar.gz
# cd daq-2.0.4
# ./configure
~略~
checking for pcap.h... (cached) no
checking for pcap_lib_version... checking for pcap_lib_version in -lpcap... (cached) noERROR! Libpcap library version >= 1.0.0 not found.
Get it from http://www.tcpdump.org
ここでエラーlibpcapのライブラリがないとな、
ldconfigにて確認してみる。
# ldconfig -p | grep pcap
libpcap.so.1 (libc6,x86-64) => /usr/lib64/libpcap.so.1
あるように見えるんだが…
ここで長考、各種サイトをあさってみる。How to Install Snort on CentOS
ここにインストール時にlibpcap-develも入れるといった記載があるのでこっちもインストールしてみる。(devel=developmentの略で開発用のライブラリとかもあるのかな?)
# yum install libcap-devel
# # ldconfig -p | grep pcap
libpcap.so.1 (libc6,x86-64) => /usr/lib64/libpcap.so.1
libpcap.so (libc6,x86-64) => /usr/lib64/libpcap.so
さっきと違うライブラリが追加されてる。
再度daqのインストール
# ./configure
#make
#make install
うまくいったようだ。
続いてsnort本体のインストール(最新版はry)
# wget https://www.snort.org/downloads/snort/snort-2.9.7.0.tar.gz
# tar -zxvf snort-2.9.7.0.tar.gz
# cd snort-2.9.7.0
#./configure
~略~
checking for pcre.h... no
ERROR! Libpcre header not found.
Get it from http://www.pcre.org
今度はlibpcreをインストールしろと。はいはい。
libcapインストール状況とライブラリ確認。
# rpm -qa | grep pcre
pcre-7.8-6.el6.x86_64# ldconfig -p | grep pcre
libpcreposix.so.0 (libc6,x86-64) => /usr/lib64/libpcreposix.so.0
libpcrecpp.so.0 (libc6,x86-64) => /usr/lib64/libpcrecpp.so.0
libpcre.so.0 (libc6,x86-64) => /lib64/libpcre.so.0
また入ってるね…またHow to Install Snort on CentOSこのサイトの情報を確認してみるとやっぱりインストール時にpcre-develを入れてるね。ということで同じようにやります。
# yum install pcre-devel
# rpm -qa | grep pcre
pcre-7.8-6.el6.x86_64
pcre-devel-7.8-6.el6.x86_64# ldconfig -p | grep pcre
libpcreposix.so.0 (libc6,x86-64) => /usr/lib64/libpcreposix.so.0
libpcrecpp.so.0 (libc6,x86-64) => /usr/lib64/libpcrecpp.so.0
libpcre.so.0 (libc6,x86-64) => /lib64/libpcre.so.0
次こそ!
# ./configure
~略~
ERROR! dnet header not found, go get it from
http://code.google.com/p/libdnet/ or use the --with-dnet-*
options, if you have it installed in an unusual place
libdnet??、とりあえずインストールされてないか確認して、インストールします。(またしても-develも必要だったようですので2つまとめて)
# yum install -y libdnet libdnet-devel
# rpm -qa | grep dnet
libdnet-1.12-6.el6.x86_64
libdnet-devel-1.12-6.el6.x86_64
# ./configure
~略~
ERROR! zlib header not found, go get it from
http://www.zlib.net
今度はzlibですね…develがはいってなかったので・・・以下ry
# rpm -qa | grep zlib
zlib-1.2.3-29.el6.x86_64#yum -y install zlib-devel
# rpm -qa | grep zlib
zlib-1.2.3-29.el6.x86_64
zlib-devel-1.2.3-29.el6.x86_64
やっとできそう。
# ./configure
# make
# make install
やっとインストール完了です。
動作確認:
とりあえず動くことを確認する。
# snort -v
まぁOK(インストールに時間かかりすぎて疲れた)、
ちゃんとした動作確認、テストはまた次回。
参考サイト:
How to Install Snort on CentOS
CentOS 6系 に Snort インストール - himajin315の記録
エンタープライズ:セキュリティ How-To - 第1回:Snortを導入する その1
セキュリティ参考書籍
safari029です。参考になった書籍類まとめておく。
資格取得
情報セキュリティスペシャリスト
情報処理教科書 情報セキュリティスペシャリスト 2015年版
- 作者: 上原孝之
- 出版社/メーカー: 翔泳社
- 発売日: 2014/09/09
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
セキュリティの各種用語や攻撃手法等を図解付きでわかりやすく解説されており、初心者でも読みやすかった。
ポケットスタディ 情報セキュリティスペシャリスト 第2版 (情報処理技術者試験)
- 作者: 村山直紀
- 出版社/メーカー: 秀和システム
- 発売日: 2014/05
- メディア: 単行本
- この商品を含むブログ (2件) を見る
資格取得のための本、午後試験の対策ポイントがわかりやすく解説、後は日本語力があれば受かった。試験直前1ヶ月前からはこちらだけを見るようにして、わからない部分があれば教科書見る感じで無事合格できた。
ペネトレーションテスト関連
実践 Metasploit ―ペネトレーションテストによる脆弱性評価
- 作者: David Kennedy,Jim O'Gorman,Devon Kearns,Mati Aharoni,青木一史(監訳),秋山満昭(監訳),岩村誠(監訳),川古谷裕平(監訳),川島祐樹(監訳),辻伸弘(監訳),宮本久仁男(監訳),岡真由美
- 出版社/メーカー: オライリージャパン
- 発売日: 2012/05/23
- メディア: 大型本
- 購入: 6人 クリック: 40回
- この商品を含むブログ (7件) を見る
ペネトレーションテストの定番ツールmetasploitの利用方法を解説。読書中。
Web作成関連
体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践
- 作者: 徳丸浩
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2011/03/03
- メディア: 大型本
- 購入: 119人 クリック: 4,283回
- この商品を含むブログ (142件) を見る
HTTPのリクエスト&レスポンスがどういった風に動いているのか、基礎から勉強できる良書。こちらも絶賛読書中。
パスワード管理について
パスワード管理について
アカウントをクラックされないためにどういうパスワードを設定するのか、私なりのやり方をメモ書き程度にまとめておく。
パスワードクラック手法
まず、昨今のパスワードクラック手法についてまとめておく(彼を知り己を知れば百戦殆うからず)
・リスト型
・辞書型
・リバースブルートフォース
セキュアなパスワード用件
一般的にセキュアなパスワードの定義はこんな感じ。
・大文字、小文字、数字を含む8文字以上のランダムな文字列
・サービスでの使いまわしはNG
・パスワード定期変更?(hogehoge01→hogehoge02などは意味なし)
↑この赤字のところが難しいとこ。大体10個以上WEBサービスを利用していて全部バラバラなんて現実的に管理できない。じゃあどうするか?
パスワード管理方法
パスワード管理ツール
よくある手法として、パスワード管理ツールがある。パスワード管理ツールに対するパスワードをひとつ覚えておくだけで、ツールに登録したサイト等のパスワードを一元的に管理できる。さらに2つのパターンに分けることができる。
・オンライン方
メリット…Webにつながればどこでも利用できる。
デメリット…クラウドにデータが保管される。ここからもれたら全サービスのパスワードを1から変更が必要。
・オフライン方
メリット…Webから漏れる心配はない。
デメリット…アプリを保管している端末を紛失したら、サービスが利用できなくなる。(初期化等で復旧する方法はあるか)
→フリーのツールも多く出回っているが、気持ち悪いので、やっぱり頭で覚えておきたいな~
パスワード生成ルールを決める
私の落としどころは次のやり方です。
- ランダムな文字列を用意する。
- 利用サービス毎に一定のルールで文字列を用意する。
- 上記1,2を組み合わせる。
上の記述だけだとわかりにくいので、具体的に書くと以下。
1.ランダムな文字列を用意する。
パスワード生成等を利用して、できるだけ推測しにくいものを用意する。
具体例で今回は右のような文字列を容易する。「Dho12S」
2.利用サービス毎に一定のルールで文字列を用意する。
たとえば「hate●ablog」であれば頭と尻の文字をとる→「hg」、 これを逆順に変換して「gh」など。一定のルールでサービス関連した文字列を用意。このルールで変換すると…
「am●zon」→「na」
「fac●book」→「kf」
「楽●(raku●en)」→「nr」
みたいな変換が簡単にできます。
3.上記1,2を組み合わせる。
あとは組み合わせのルールを作成するだけ、たとえば1.の3文字目に2.のサービス毎の文字列を入れるとすると…
hate●ablog →Dhogh12S
am●zon →Dhona12S
fac●book →Dhokf12S
楽●(raku●en) →Dhonr12S
これでランダムなパスワード作成完了です。
もし漏れてしまったらルールの見直しだけで基本的にはいけるので、今はこんな感じで設定やってます。