sqlmapとは、オープンソースで開発されている SQL インジェクションの脆弱性診断ツール。
これを使うために、CentOS5.5とかFedora10とか比較的古いlinuxまわりで環境整備しようとしたが、最終的にpythonのバージョンが古くて使えないという壁にぶつかったため、まっさらなCentOS6.2_LAMP_x86_64から入れてみたら動くようになったので、その備忘録。
64bitのサーバなんて初めてだったけど。。。
まずユーザ追加
# useradd sqlmap
# passwd sqlmap
■ファイアフォール設定
内部から行ったアクセスに対する外部からの返答アクセスを許可
iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
自ホストからのアクセスをすべて許可
iptables -A INPUT -i lo -j ACCEPT
ssh許可
iptables -A INPUT -p tcp –dport 22 -j ACCEPT
その他のアクセス、転送をすべて拒否
iptables -P INPUT DROP
iptables -P FORWARD DROP
確認
# iptables -nL
保存
# /etc/init.d/rc.d/iptables save
■SSH設定
RootでのSSHログイン禁止
# echo “PermitRootLogin no” >> /etc/ssh/sshd_config
再起動
/etc/init.d/rc.d/sshd restart
■リモート接続
SSHクライアントに「未サポートのエスケープシーケンスを見つけました。 ESC [?1034h」と言われたら、ターミナルのエミュレータをxtermからktermに変更してリトライ。
■依存パッケージインストール
yum実行時に「Cannot find a valid baseurl for repo: base」と出てmirrorlist.centos.orgに接続できない時
# vi /etc/yum.repos.d/CentOS-Base.repo
すべてのmirrorlist=の行をコメントアウトし、baseurlにrikenのURLを指定
——————————-
[base]
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/os/$basearch/
[updates]
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/updates/$basearch/
[extras]
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/extras/$basearch/
[centosplus]
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/centosplus/$basearch/
[contrib]
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib&infra=$infra
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/contrib/$basearch/
——————————-
libcurlをインストール
# yum install -y curl-devel
wget が入っていないと思われるのでインストール
# yum install -y wget
■Gitをインストール
# cd /usr/local/src
# wget https://git-core.googlecode.com/files/git-1.9.0.tar.gz
# tar zxvf git-1.9.0.tar.gz
# rm git-1.9.0.tar.gz
# cd git-1.9.0
# ./configure –prefix=/usr/local/
gccがないと言われたらインストール
# yum install -y gcc
# make
「expected specifier-qualifier-list before ‘z_stream」と言われたらzlibインストール
# yum -y install zlib-devel
再度 make
「Can’t locate ExtUtils/MakeMaker.pm in @INC」と言われたら、perl-ExtUtils-MakeMakerをインストール
# yum install -y perl-ExtUtils-MakeMaker
再度 make
「tclsh failed; using unoptimized loading」とでたら、gettextを入れる
# yum install -y gettext
再度 make
今度は通ったっぽい。
# make install
バージョン確認
# git –version
-> git version 1.9.0
OK
ユーザのホームに戻り
$ git clone https://github.com/sqlmapproject/sqlmap.git
$ cd sqlmap
これでひとまず診断の準備完了。
参考サイト)
http://qiita.com/shyamahira/items/9f80d16c3436f9dea753
http://qiita.com/akata/items/57c81ae969255e3c9a70
http://kentai-shiroma.blogspot.jp/2014/10/centos65glibc.html
http://d.hatena.ne.jp/hateka/20110924/1316850271
http://qiita.com/yusukaaay/items/6a39cc2f983cb0319bd1