advent
シンプルでキュートなハニーポットを作る
この記事は OIC ITCreate Club Advent Calendar 20152015 4日目(12/4)の記事です。
3日目の記事は、紅き衝動
今日はハニーポット的なものを作ったので紹介しようと思います。 暇じゃない人は読まないで下さい。
そもそもハニーポットとは何でしょう。
Wikipedia先生曰く
とのこと。
世の中にはプニキ以外にも蜜を狙った人やマシンが沢山いて、それを誘い出そうという感じですね。
そんな世の中には色んなハニーポットがあり、
などが有名どころではないでしょうか。
ログやDionaeaFRなどで眺めているだけでも面白いのですが、上記のハニーポットのほとんどがGUIではないため、初心者やGUIが好きな方には扱いづらいかもしれません。
また、アドベントカレンダーのタイトルにCreateなる文字が入ってる上、ツイッタで作るとか書いたような記憶もあるので、今回はとても簡単なGUIハニーポット的なものを作ってみました。
こんな感じ。
試行したユーザー名、パスワードがファイルに書き込まれます。
手作業だと面倒なので、hydraで攻撃してみます
THC Hydraは色んなwebの認証にブルートフォースや辞書攻撃が出来るツールです。
Basic認証の場合はこんな感じで実行します。
$ hydra -l admin -P lower http://localhost:2345
今回はOpenWallが配布しているパスワードファイルを使用します。
[DATA] attacking service http-get on port 2345 1 of 1 target completed, 0 valid passwords found
ログが沢山増えます。
- どこがキュートなの
Qtです。
- 何故Basic認証なの
余
昨晩書いた記事を、今朝アドベントに載せようと思ったところでこれを思いついたので、書いた記事をボツにして授業中に一日ハッカソンしてました。
wiresharkのアレもあって、自分の中で今ElectronとかよりQtがアツいと思って一発ネタで書いてたけど、Qt…ウーン… SIGNALとかSLOTとかあまり好きになれなかったです。rubyで書けるのはありがたい。
qtbindingsのexampleとか見てたら面白そうなのが色々あったので暇があったら試してみたいです。
Basic認証の部分はステータスコード401(Unauthorized)を返しつつ
レスポンスヘッダにWWW-Authenticate:Basic realm=""
を入れるとブラウザとかはBasic認証的な感じになります
あとはお好みで低めのApache等のバージョンとかServerの種類、Server時間、Content-Typeなどを入れるとそれっぽくなると思います。
Basic認証じゃないしパスワードとかそもそもないので安心。 不正アクセスを受けることにしか価値がないのでWikipedia先生の言ってた定義には当てはまると思われます。
以下思ったこととか
ちゃんとしたHoneypotすごい。
winの人はKFSensorとか使うと良い
socket.readするとソケット閉じてくれないのなんとかしたい。
9つどころじゃない首で攻撃してくる
[
明日のOIC ITCreate Club Advent Calendar 2015はtera911さんの「xhyveとdockerで〜」です。