cowrieを設置した
cowrie
cowrieインストール
cowrie用設定
自分がcowrieを設置している環境はdebian ver8.5.
以下コマンドで必要なものをインストール.
# apt-get install git python-dev python-openssl openssh-server python-pyasn1 python-twisted
cowrieが22番ポートを使うので普段自分がsshするポートを指定できる範囲で変える.
sshd_configのバックアップを取った上で書き換える.
# vim /etc/ssh/sshd_config Port 22 ↓ Port {任意の番号}
書式のテストをして,いい感じならsshd_configの再読み込み.
# sshd -t # service sshd restart
cowrie設置用のユーザを作成し,22番ポートをcowrie用に設定.
# adduser --disabled-password cowrie # iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 22 -j REDIRECT --to-port 2222
cowrieにユーザをスイッチ.
# su cowrie $ cd
cowrieのインストール
cowrieをダウンロード,設定ファイルを作る.
$ git clone https://github.com/cowrie/cowrie.git $ cd cowrie $ cp cowrie.cfg.dist cowrie.cfg
設定ファイルをいじる(ここではホスト名だけを変えた).
$ vim cowrie.cfg hostname = {任意のホスト名}
cowrieの設定ポートを直接22にしてauthbind使ってもいい.
# apt-get install authbind # touch /etc/authbind/byport/22 # chown cowrie /etc/authbind/byport/22 # chmod 777 /etc/authbind/byport/22
cowrie/data内にあるuserdb.txtいじれば, 攻撃者がログインできるユーザネームとパスワードのコンビを変えることができる.
cowrieの起動
下記コマンドで起動&起動できたか確認.
$ ./start.sh $ cat cowrie.pid #process or $ netstat -antp | grep 2222
cowrieに接続してみる
$ ssh root@{ipaddress}
userdb.txtで指定したユーザネームとパスワードのコンビでログインできたらok.
cowrie側でlogの確認
自分のssh用に開けたポートでログインしたらlogを見る.
$ cat ~/cawrie/log/cowrie.log
攻撃者のipとか見える.
cowrieを止める時はstop.shとか
以上cowrieのインストール.
kippo-graphのインストール
kippo-graphはkippoで取れた攻撃者情報をいい感じに可視化してくれるやつ.
cowrieでも使えるっぽいので使っていく.
cowrieで取れたデータをMySQLに保存して,phpで表示するというもの.
MySQLのインストール
MySQLをインストール.
# apt-get install mysql-server python-mysqldb
インストール途中でMySQLのrootのパスワードを聞かれるのでいい感じに設定.
MySQLにcowrie用のユーザを追加と権限を設定.
# mysql -u root -p #インストール途中に入力したrootパスワードを入力 mysql > create user 'cowrie'@'localhost' identified by '{cowrieのパスワード任意で}'; mysql > grant all on cowrie.* to 'cowrie'@'localhost' identified by '{cowrieのパスワード}'; mysql > exit;
cowrieにスイッチして,データベースをいい感じにしていく.
# su cowrie $ cd ~/cowrie/doc/sql/ $ mysql -u cowrie -p mysql > create database cowrie; mysql > use cowrie; mysql > source mysql.sql; mysql > show tables; +-----------------+ | Tables_in_kippo | +-----------------+ | auth | | clients | | downloads | | input | | sensors | | sessions | | ttylog | +-----------------+ 7 rows in set (0.00 sec) mysql > exit;
cowrieのログの出力を今しがた作ったデータベースにガンガン入れていくように設定する.
$ vim ~/cowrie/cowrie.cfg ~略~ [database_mysql] host = localhost database = cowrie username = cowrie password = {cowrieのパスワード} port = 3306 ~略~
kippo-graphのインストール
# apt-get update && apt-get install -y libapache2-mod-php5 php5-mysql php5-gd php5-curl # /etc/init.d/apache2 restart
最新版をダウンロードしてやる. (2016-08-15現在 Ver. 1.5.1)
# cd /var/www # wget http://bruteforce.gr/wp-content/uploads/kippo-graph-1.5.1.tar.gz # openssl sha1 kippo-graph-1.5.1.tar.gz # tar zxvf kippo-graph-1.5.1.tar.gz # mv kippo-graph-1.5.1 kippo-graph # cd kippo-graph # chmod 777 generated-graphs # cp config.php.dist config.php # vim config.php ~略~ define('DB_HOST', 'localhost'); define('DB_USER', 'cowrie'); define('DB_PASS', '{cowrieのパスワード}'); define('DB_NAME', 'cowrie'); define('DB_PORT', '3306'); ~略~
ブラウザでhttp://{ipaddress}/kippo-graph/を見る.
余談
kippo-graphにはKIPPO-PLAYLOGという機能があり,攻撃者がログインしてから,ログアウトするまでの実行コマンドを可視化してくれる機能がある.
cowrieではバグで今んとこ(2016-08-15現在)使えないっぽい https://github.com/ikoniaris/kippo-graph/issues/44
スクリプトを実行すれば見れる.
$ cd ~/cowrie/log $ python ../../bin/playlog {任意のlog}.log
kali linux rolling edにvirtualboxを入れるときに躓いたこと
kali linux rolling
dpkg -i {virtualbox...}.deb
エラー吐いたら
# sudo apt-get install -f
->依存環境が解決されずインストールできない
->aptでインストールしてみる
https://www.virtualbox.org/wiki/Linux_Downloads ここを参照して
# vim /etc/apt/source.list
以下を追加
deb http://download.virtualbox.org/virtualbox/debian xenial contrib
環境によって'xenial' を'vivid', 'utopic', 'trusty', 'raring', 'quantal', 'precise', 'lucid', 'jessie', 'wheezy', 'squeeze'で入れ替える
source.listに追加した に対してのkeyを追加する
# wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add - # wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
fingerprintがちゃんと合ってるかapt-key fingerprintで確認
ちなみに2016/05/20時点で正しいのは以下
The key fingerprint for oracle_vbox_2016.asc is B9F8 D658 297A F3EF C18D 5CDF A2F6 83C5 2980 AECF Oracle Corporation (VirtualBox archive signing key) <info@virtualbox.org> The key fingerprint for oracle_vbox.asc is 7B0F AB3A 13B9 0743 5925 D9C9 5442 2A4B 98AB 5139 Oracle Corporation (VirtualBox archive signing key) <info@virtualbox.org>
そして以下を実行
#apt-get update # apt-get -y install virtualbox-5.0 パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 インストールすることができないパッケージがありました。おそらく、あり得 ない状況を要求したか、(不安定版ディストリビューションを使用しているの であれば) 必要なパッケージがまだ作成されていなかったり Incoming から移 動されていないことが考えられます。 以下の情報がこの問題を解決するために役立つかもしれません: 以下のパッケージには満たせない依存関係があります: virtualbox-5.0 : 依存: libpng12-0 (>= 1.2.13-4) しかし、インストールすることができません 依存: libssl1.0.0 (>= 1.0.0) しかし、インストールすることができません 依存: libvpx1 (>= 1.0.0) しかし、インストールすることができません 推奨: libsdl-ttf2.0-0 しかし、インストールされようとしていません 推奨: dkms しかし、インストールされようとしていません 推奨: linux-headers しかし、インストールすることができません E: 問題を解決することができません。壊れた変更禁止パッケージがあります。
やっぱりダメ
しかし,
#apt-get libpng12-0
とかやってもないと言われるので,
手動でパッケージをインストールする.
自分のアーキテクチャにあったdebファイルをダウンロードする(上のエラーで依存になっているもの)
筆者はamd64なので以下の3つ
libpng12-0 - https://packages.debian.org/jessie/amd64/libpng12-0/download
libvpx1 - https://packages.debian.org/jessie/amd64/libvpx1-dbg/download
libssl1.0 - https://packages.debian.org/jessie/amd64/libssl1.0.0/download
それぞれパッケージをダウンロードしたらmd5, sha1, sha256でチェックサム確認
# md5sum lib* 2f392ddcfd7de95cd794b8c5433e272b libpng12-0_1.2.50-2+deb8u2_amd64.deb 57c3d82c10706d711f21c03f34d8249c libssl1.0.0_1.0.1e-2+deb7u21_amd64.deb a31e1de3bf7d71b02763c7eb194a445f libvpx1_1.3.0-3_amd64.deb
合致したら以下でインストール
# dpkg -i libvpx1_1.3.0-3_amd64.deb libpng12-0_1.2.50-2+deb8u2_amd64.deb libssl1.0.0_1.0.1e-2+deb7u21_amd64.deb
そしてvirtualboxインストール
# apt-get -y install virtualbox-5.0
成功.
kali linux日本語入力環境がおかしくなった時の対処法
kali linux rolling
kali linux rolling editionで日本語入力環境がおかしくなった時にやったこと
uim
kali linuxはdebianベースのOSで日本語入力環境を整えるパッケージとしては,
uim, ibus, etc..あるが,他のサイトを参照してもuimを使ってるものしかない.
実際にibusを入れてみたが動かず...
anthy
また,辞書もanthy, mozc, etc..あるが, anthyしかうまく動かないっぽい.
mozcはguiを起動させようとしても起動せずそのまま落ちる状態.
uim uim-anthy
そこで,uim, uim-anthyのパッケージを入れて日本語入力環境を整える.
# apt-get install uim uim-anthy
が,uimとanthyを使ってもある設定をすると日本語入力ができなくなる.
やると日本語入力ができなくなる行為
以上の設定をやってしまうと,日本語入力ができなくなる.
この設定をやってしまった場合
チェックを外し(defaultを設定し),再起動する.
それでも日本語入力ができない場合は以下を実行.
# apt-get purge uim uim-anthy # apt autoremove
これでもまだダメな場合は,
# dpkg -l |grep "uim" # dpkg -l |grep "anthy"
それぞれで出てきたパッケージに対し,apt-get purge
を実行.
めんどい人は以下で
# apt-get purge `apt list | grep -G "uim\|anthy" | cut -d"/" -f1 | xargs echo` # apt autoremove
そして,以下を実行.
# apt autoremove # reboot
そして,再インストール
# apt-get install uim uim-anthy
その他,設定を変えるたびにrebootするのが望ましい.
osインストールの時も日本語だとうまく表示されませんって出るし,
日本語対応が完璧ではないのかな(そりゃそうか)
kali linuxインストールから日本語化まで
kali linux
悪用しない
kali linux isoファイルのダウンロード
からkali linux 64bitをダウンロードする.
ミラーサイトの場合は,amd64が64bit
sha1sumを確認してマッチするかちゃんと確かめる.
# openssl sha1sum {kaliのisoファイル}
USBブート
今回はUSBからブートする方法
dmgに変換
kaliのisoイメージをdmgに変換.
kaliのisoがあるディレクトリで
# hdiutil convert -format UDRW -o kali.dmg kali-linux-2016.1-amd64.iso
USBのアンマウント
まず,USBのデバイスパスの確認
USBをささない状態で以下を実行
# diskutil
USBをさした状態で上記を実行
この時,新たに認識されたデバイスがUSBなので
diskN の N の部分をよく覚えておく.
以下で,USBをアンマウントする
# diskutil unmountDisk /dev/diskN
USBに書き込む
以下でUSBに書き込み(結構時間かかる)
# sudo dd if=kali.dmg of=/dev/diskN bs=1m
ここでパス違えるともれなく死ぬ
書き込みが終わったら以下のコマンドでUSBを取り出す.
# diskutil eject /dev/diskN
起動
USBを挿してインストールするPCを起動.
Thinkpadでは起動メディアを選択できるのでF12キーを押しながら起動.
この時うまく認識されなかったらBIOSの起動メディア順序を変えてみる(やり方は省略)
それでもダメならUSB書き込みのプロセスをもう一度.
うまくいったら
kali 2.0 sanaの場合
- Graphicalinstall を選択してEnter
- 言語の選択->「Japanese - 日本語」
- 国を選択->「日本」
- キーボードを選択->「英語」(自分の環境に合わせて)
- ネットワークの選択->デフォルトでok
- ドメイン名->「localhost」
- パスワード設定->任意のパスワード
- ディスクのパーティショニング->「ディスク全体」->USBじゃないHDDを選択->「すべての...」->「パーティショニングの終了とディスクへの変更の書き込み」->「はい」
- ネットワークミラー->「はい」
- プロキシ->デフォルトでok
- GRUBブートローダ->「はい」
- デバイスの変換->「/dev/sda」
- 「続ける」を選択
->勝手に再起動->ユーザ:root,パスワードでログイン
ログインできたら成功
kali rolling edition の場合
言語を日本語にしてインストールすると apt-get update upgrade
後に環境が壊れるバグ(?)が起きたので初期言語を英語にしといて後で日本語に設定する.
- Graphicalinstall を選択してEnter
- 言語の選択->「English」(?)
- 国を選択->「日本」
- キーボードを選択->「英語」(自分の環境に合わせて)
- ネットワークの選択->デフォルトでok
- ドメイン名->「localhost」
- パスワード設定->任意のパスワード
- ディスクのパーティショニング->「ディスク全体」->USBじゃないHDDを選択->「すべての...」->「パーティショニングの終了とディスクへの変更の書き込み」->「はい」
- ネットワークミラー->「はい」
- プロキシ->デフォルトでok
- GRUBブートローダ->「はい」
- デバイスの変換->「/dev/sda」
- 「続ける」を選択
->勝手に再起動->ユーザ:root,パスワードでログイン
$ dpkg-reconfigure locales
スペースで ja-JP.UTF-8 UTF-8
を選択->エンター
$ reboot
ログインできて日本語になってれば成功
こっからsanaもrollingも一緒
http://docs.kali.org/general-use/kali-linux-sources-list-repositories に従って,
$ vim /etc/apt/sources.list
以下を記載
deb http://http.kali.org/kali kali-rolling main contrib non-free # For source package access, uncomment the following line deb-src http://http.kali.org/kali kali-rolling main contrib non-free
以下を実行
$ apt-get update $ apt-get dist-upgrade
upgradeの方がうまくできなかったら
$ apt-get dist-upgrade --fix-missing
途中で日本語表記が崩れますがすぐに直る
直らなければ...
日本語入力環境
以下を実行
$ apt-get install uim uim-anthy $ reboot #再起動