Category Archives: Security

Kali linux 2.0

11日にKalilinux2.0がリリースされたようですね。 当方でも少し前にペネトレーションテスト関連のことを書いていましたが、Kalilinuxとかは使わずにDebianにOpenVASとMetasploiteFlameworkをインストールした環境でテストしてました。 正直あんまり使ってなかったですが(^_^メ) 関連記事 OpenVAS v7 の日記 Metasploit の日記 最近思ったこと 郷に入っては郷に従え なので、これから勉強するんだったら、せっかくリリースされたKalilinuxをさわってみようかなと思いました。 いろいろ見てたところやっぱりDLにだいぶ時間がかかりそうで、中でも一番早そうだったのがVBOXのイメージだったので、VBOXイメージにしました。 Offensive-security https://www.offensive-security.com/kali-linux-vmware-arm-image-download/ イメージが出来上がってるので使う手順は簡単で、VBOXを立ち上げてイメージをインポートすればOKです。 他の端末からも楽につなげられるようにブリッジ接続にしましたが、あとはデフォルトです。 きました。 root@kali:~# cat /etc/debian_version Kali Linux 2.0 そうそう、デフォルトパスワードはtoorです。 ご存知だと思いますが、必要最低限のモノ以外は動いていないらしく、SSHも起動する必要があります。 そもそも開ける必要もないんだけど、あとでSFTPを使うので。 さて、いろいろと初期設定なのですが最近のGUIはだいたい似てるので問題ないです。 キー配列=日本語 文字=日本語 については最初から選択ができるようになっていました。 More recently、英語のStudyをしているので、Englishの方がBetterかなぁと思いましたが、やっぱりJapaneseでGo。 タイムゾーンを日本にして、あとはいろいろとアップデートなのですが OpenVASのアップデートをしているところでMacMini上だと体感でリソースが厳しいかなぁと感じてきたので、がっつりとリソースが使えるWindows機で動かすことにしました。 2Core:Mem2Gほど割り当てましたが、そこそこサクサクです。 以前からMacのVBOXにはぎこちなさを感じているのですが、そんなことない? いろんなサイトを見て回っていると、KaliLinuxの壁紙がかっこよくていいねって人が多くみられますが、自分は壁紙を変更しました。 一時的にSFTPのユーザーを作成して、FilezillaからSendしました。 アップデートですが、apt/sources.listを見ると なのですが、apt-get updateのログを見てるとUSですが、わりとサクッと終了。 でもちょっと長い。 ApplicationsからOpenVASを立ち上げてみると、以前に自らインストールしたときと同じログがずらずらと流れます。 全部勝手にやってくれます。 アップデートが終わって、Openvasを立ち上げると9390などなどのポートが飽きますんで gsad と叩きますとブラウザからhttps://localhostにアクセス可能になります。 MacからRDPでWindowsにつないでいます。 画像 素のDebianで最初からやるとインストールだけでも時間がかかりましたが、さすがにサクッと進みました。 どんなツールがあって、使うとどうなる?どんなログが残る?ってことはやっぱり知っておかないとね。 てなわけで、あとはじっくり楽しもう。

DebianにWebハニーポットのGlastopfをインストールしてみます

つい最近の事ですが、Dionaeaを植えて、欲しいデータが取れなかったお(・∀・)などと供述しておりましたが、Dionaeaのそもそもの目的というかターゲットが違っていたようなので、それは当然のことだったらしい。 目には目を、WebにはWebのハニーポットであるGlastopfなるものがあるようなので、今回はGlastopfをインストールしましょうとなっと。 公式ウェブを見るとマニュアルのあるOSは色々とあるようですが、Debianを選択します。 http://glastopf.org/ 最近Debianなマイブーム。 準備するのがめんどうだったので、ディレクトリに入っていたDebianをVirtualBoxで作ったんですが、ISOイメージが古かったようで色々とする必要がありました。 まずはaptのListを更新。 http://www.debian.or.jp/using/mirror.html W: 以下の鍵 ID に対して利用可能な公開鍵がありません: ******** 上のエラーが出て、apt-get Updateができない模様。 GPGキーをゲットする必要があるらしい。 gpg –keyserver pgp.mit.edu –recv-keys 7638D0442B90D010 gpg –armor –export 7638D0442B90D010 | apt-key add – gpg –keyserver pgp.mit.edu –recv-keys CBF8D6FD518E17E1 gpg –armor –export CBF8D6FD518E17E1 | apt-key add – apt-get update apt-get upgrade reboot 結局、通常の3倍くらいは時間がかかってしまうので、よけいにめんどうな事になってしまいました。 急がば回れってことですね。 最初から新しいISOイメージをDLして用意した方が良いです。 反面教師ってやつです。 7のLatestになると思っていたら、8(Jessie)まで上がっていました。 root@debian-glas:~# cat /etc/debian_version 8.1 ま、いいかと。そのまま進めることにします。backportとやらを追加する必要があるようで Jessie用のURLをググって調べて入れました。 tail /etc/apt/sources.list # Backports repository deb http://httpredir.debian.org/debian jessie-backports main contrib non-free ではここからは公式の通りに進めていきます。 apt-get update apt-get install python python-openssl python-gevent libevent-dev python-dev build-essential make apt-get install python-argparse python-chardet python-requests python-sqlalchemy python-lxml apt-get install python-beautifulsoup mongodb python-pip python-dev python-setuptools apt-get install g++ git php5 php5-dev liblapack-dev gfortran apt-get install libxml2-dev libxslt-dev apt-get install libmysqlclient-dev […]

ログから学べるエトセトラ

今回はログから学ぼうということで、一見管理者向けに聞こえるかもしれませんが、基本的にざっくりとゆったりとした方針なので、ともかく関心を高めて欲しいという意味も込めているので、セキュリティ意識の向上のきっかけになれればいいなぁと思う今日このごろです。 ではでは、じつはここしばらくの間だけグローバル環境にハニーポット:Dionaeaを植えて観測をしていましたが、自分が求めていたのは研究用の「HTTPに対するログ」でしたが、その類のデータはスキャンかな?と思われるものしか取得できなくて期待した結果は得られませんでした。 世の中そんなに上手くいくこともないのですなぁ。 ただ、確実に分かった事はWindowsのSMBへのアタックがほんとに多い、多いと言いますか、ほとんどSMBでした。 バイナリデータも多数とれていたので、踏み台探しでしょうか?深く追いかけてはいないので詳細はわかりませんがとにかくSMBばっかりでした。 次いでSSH22番ポートへのアタックが多かったですね。 こういったものはおそらく色々なところ植えて調査をするべき事柄なんでしょうが、1つのハニーポットで観測したことなので、あくまで参考程度にしたいところですが、それにしてもSMB・Windowsの管理者は気をつけてください。 とくにWindows2003を放置していると踏み台に利用される可能性が非常に高いと思われます。 ポイント Windows2003の管理者さんは気をつけよう! ・・・ちょっと教習所のスライドをイメージしてみました。 本題のログから学べる事ですが、HTTPのログに関してはハニーポットを植えるよりも普通にウェブサーバーを運用した方がログは学べると思います。もうぼちぼちで4年目に入りますが、Httpサーバーを建てて、Logwatchで管理していればおのずと情報が入ってくることでしょう。 せっかくなので少しだけLogwatchの内容を載せます。 何年前からやね〜んというログですが、まだまだ来ているようでした。 ではせっかくなのでガチンコでシェルを奪取されたWordpressのHttpdのログを載せます。 こういうログには気をつけようということで。 似たようなログは山ほどあると思うので、これでどうにかしろというのは無理難題ですが、おや?というところには気づけるようにしたいですねぃ。 ってことで、自分でハッキングしてセキュリティに関する知識を深めるというのも多いに良いのではないかと思います。 これが言いたかったのかもしれなぃにゃ。 ポイント 彼を知り己を知れば百戦殆うからず

DionaeaFR を使ってDionaeaをグラフィカルにCheck it out

ログから学べるエトセトラという内容を考えていたら、渚にまつわるエトセトラを思い出したよ。 Puffyいいね。Dionaeaとぜんぜん関係ないけどね!(゚∀゚); ログの分析は置いておいて(なんだよw)、まずはグラフィカルに大雑把にいきましょうと。細かい部分は分かりませんが、どこからが多い?とか、どのポートが多い?とかはやっぱりグラフィカルに見るのが分かりやすいからね。 ログの痕跡から内容を調べるだとか、細かい分析とはまた全く別の話になっちまいますが、気分転換にはいいですよ。 ってことでDionaeaFR インストールメモ。 公式サイト http://rubenespadas.github.io/DionaeaFR/ 参考にしたサイト BruteForce Lab’s Blog Visualizing Dionaea’s results with DionaeaFR Tahoo! VPSにDionaeaログ解析ツール、DionaeaFRを入れてみた 公式サイトを見るとPython2.7.3の記載が。CentOSのPython2系の標準Yumでインストールできるバージョンは2.6なので、2.7系最終の2.7.9をDLしてインストールしました。 このままだと実行にエラーが出るので解消します。 これにてPythonのインストールが完了です。 のちのDjango関連のインストールをするためにPipを用意しませう。 参考サイト https://pip.pypa.io/en/stable/installing.html#python-os-support https://www.digitalocean.com/community/tutorials/how-to-set-up-python-2-7-6-and-3-3-3-on-centos-6-4 この表示の仕方いいね。 なんとなくアップデート。 ではDjango関連のインストールに進みます。 プロンプトを見れば分かりますが、ここからRootにしました。 simplefilterはこれ1発でOKらしい。PIPはこんなこともできるのね。 subnettreeも。 NodoJSをインストール。時間がかかるんだな。これが。 NetAddrはPIPでいけました。 じわじわと終わりが見えてきました。DionaeaFRを落として、Maxmind’s GeoIP and GeoLite databasesを用意していっきにいきましょう。 では実行!といきたいとこですが、エラーが幾つかでるので処理をします。 起動だどーん(゚∀゚)b 勢い良く8000番にアクセスしたものの大切なものが見つからないとエラーが (゚∀゚激汗) Error: Cannot find module ‘promise’ インストール。 もっかい起動だどーん(゚∀゚)b うまくいきました。(゚∀゚)v ローカルオンリーでしか動かしていないので問題なく掲載します。 チェックが終わればCc+Cでサーバーを落とします。常に立ち上げておく必要はないからね。 おっしまい(゚∀゚完)   かに食べいこ〜。

HoneyPOT(dionaea)をCentOS6にインストールとか。

セキュリティの意識を高めようぜぃの流れで、前回と前々回に続いて、今回はハニーポットを用意しようと思います。ローカル環境にですね。ハニーポットなんて単語は普段は聞かないので、なにそれ?と思う方が大半だと思います。自分もその一人です。 タイトルにDionaeaという単語がありますが、これはHoneyPOTのアプリケーションの一つで、Weblioで訳すと「モウセンゴケ科の1属」。モウセンゴケ属ってのは、「ウツボカズラ目モウセンゴケ科に属する食虫植物の一属であり、湿原に多く生育する草本である。」byWikipedia。です。食虫植物というと草のように見せかけて虫を食べている植物ですね。 インターネットスラング風に言いかえると、「び・・美人局」でしょうか。 概念はそんな感じです。 Dionaeaを実行しているサーバーでnetstatをすると このように開けまくりんぐな風になりますが、さきほど説明したようにサービスを提供している訳ではなく、そう見せかけている。 実際アクセスしてみると、Apacheの画面が出ます・・って、んなわけないw Httpdを落とすのを忘れていました。Netstatの結果をよく見るとhttpdはありません。 競合するサービスを開けていると上手く動作しませんので気をつけなはれや。 気を取り直して、Httpdは”落としてから”Dioanaeaが起動されたサーバーにブラウザでアクセスしてみましょうか。 ログの出力はinfo以上に高いレベルを表示するように立ち上げています。 という具合にログが残ります。htmlファイルを設置してそれでレスポンスを返すことも可能なようです。 上のようにログを何でも残すようにしていると、なんでもないようなものでもログに残してしまいますので、グローバルな場所に植えるとログのでかさが尋常でないことになってしまいますので、ログの設定には気をつけよう。 悪用されちったwでは済まないですからconfの設定はじっくり吟味する必要があります。なんだか分からない状態で外に置くのは止めておきましょう。 ちなみに他のサーバーからnmapをしてみるとinfoレベルで記録されました。reject connectionとありますが、nmapした方のサーバーに対しては開いているレスポンスが返ります。 ハニーポットの役割の概念は分かりましたが、Dionaeaが具体的にどういう動きをするのかがまだイマイチ分からないので、このままではグローバルな環境に出すわけにはいきません。動作の分からないものをインターネットに置くというのは危険なのです。 WarningとCriticalなログだけ記録するように設定して、OpenVASでディープスキャンをかけてみました。 もっとドバーっと表示されるのかなと思っていましたが、レポートをインポートしてみてヒットしたものはこれくらいでした。 ほかにも確認する方法はありますが、それはここでは割愛します。 グローバルな環境に植える場合には、もっと色々と試行錯誤してみて、どんな設定でどうなるのかというのをそれなりに熟知できるくらいには試す必要あります。何故ならばインターネット上には、こういったツールを悪用して実行する人から、ものすごいスキルの人まで多種多様に存在する訳ですが、ツールを上手く扱うことすらできないとなると、まったく基準にも満たない訳です。 このシリーズもこれでひとまず完結になると思いますが、ローカルでひたすら検証することをやっぱり最後にもオススメです。 インストールメモで終わります。 参考にさせていただいたサイトです。ありがとうございますた。 VPSにハニーポット(Dionaea)を入れてみた さくらのクラウドにハエトリグサ(Dionaea)を植えてみた dionaea catches bugs だいたい同じですが、Configureで不要なところがあったのでカットと、OpensslがGitのものでエラーになるので、Tarballにしました。

OpenVAS v7をDebian 8にインストールしました。

こないだMetasploitをインストールしたDebianに脆弱性スキャナーであるOpenVASを追加でインストールしました。ハニーポットを入れる予定のDebianはまだ全然手が進んでいません(・_・;)。 OpenVASはカレントバージョンはv8なのですが、どうにもインストールが上手くいかないのでv7で。 v8のインストールの検証でずいぶんと時間を使ってしまいましたが、v7は一回で完了できたので、このための種もみになったんだと強引に思っておきます。 ところで!前回、Metasploitで脆弱性のチェックをしていましたが、あのツールはそもそもExploitのツールなので、使い道としてはちょっと間違えていましたね。(゚∀゚汗)はわわ〜。 脆弱性のチェックツールなんて何に使うのだと思うかもしれませんが、人だって人間ドッグや定期検診を受けるように、コンピュータの脆弱性ツールもそんな感じに思っていれば問題ないと思います。 HIVウィルスのように防御を無効化してしまうような仕組みができてしまうかもしれませんから、OSやミドルウェアの脆弱性をチェックすることは大切だと言えます。 余談になりますが、Metasploitの実験もやってみたので結果報告。 Windows2000を所有しているので、対象をWindows2000にしてSCANとExploitを試してみました。アンチウィルスソフトの入ってない状態だと悲惨な状態で、数秒でSYSTEMユーザーが奪取できてしまいました。 Windowsの方は覚えのないEXEファイルの実行は絶対に避けるのと、アンチウィルスソフトは必ず入れておきましょう! なんてことはもう10年以上も前から当たり前のことなので、その通りだ!と思った方は要注意で、赤ちゃんの予防接種のことを考えるくらい当たり前にOSのアンチウィルス・アンチスパムはやるべきなのです。 では本題のインストールに。 パッケージはちょっと古いらしいので、ソースからインストールしたメモになります。 まずはopenvas.orgにソースを取りに行き解凍しませう。 解凍はいろいろ方法がありましたが、今回はforループにしてみた。なんでもいいけど。 必要なパッケージやインストール手順は、各ディレクトリ内にあるINSTALLにも記述されています。 ただし最初にビルドするのはライブラリのソース。で、あとの順番は何でもいいです。 これも前もってやっててもいい事ですが、openvas.orgにインストールのサポートスクリプトがあるので準備をします。 以下のコマンドを実行して、表示されるErrorとFixと追いかけて仙台。 カレントバージョンがv8なのでそのまま実行するとエラーになっちまいます。実行する時はv7を指定する必要があります。 追いかけて雪国な感じでFIXを追いかけて行ったらインストール完了なのですが、自分はこのサイトを参考にしたので、ここの進め方でいきます。 参考サイト https://hackertarget.com/install-openvas-7-ubuntu/ Scanner証明書の作成です。いろいろありますがデフォルトで良いらしいです。 FIX: Run ‘openvas-mkcert’. NVTの同期。 FIX: Run a synchronization script like openvas-nvt-sync or greenbone-nvt-sync. SCAPの同期。 FIX: Run a SCAP synchronization script like openvas-scapdata-sync or greenbone-scapdata-sync SCAPの同期の途中でエラーが発生したらリブートしてもう1回らしい。なんじゃそら〜と思いましたが いろいろなウェブサイトを回って調べてみましたが同じ方法で解決したってのばかりでしたので従いまうす。 回ってみたサイト http://lists.wald.intevation.org/pipermail/openvas-discuss/2015-February/007463.html CERTデータの同期。 FIX: Run a CERT synchronization script like openvas-certdata-sync or greenbone-certdata-sync ぼちぼちで終わります。 ADMINユーザーの作成。 FIX: create a user by running ‘openvasmd –create-user= –role=Admin && openvasmd –user= –new-password=‘ 証明書を作成。 FIX: Run ‘openvas-mkcert-client -n -i’ データベースを作成。 FIX: Run ‘openvasmd –rebuild’ while OpenVAS Scanner is running. –progress をつけて進捗を見れるようにしておくと心にやさしいです。 これで完了です。 マネージャーとGSADを起動します。 openvasmd gsad 以下のようにgsadがv6で開いている表示しかない場合だとroot@deb:~# ./openvas-check-setup –v7では確認がとれなくて エラーになるけどアクセスは可能です。 ローカルホストにたいしてチェックしてみたレポートです。 詳細は割愛しますが、Metasploitからも同じようなテストができるようになっています。 コマンドなのでこちらの方がなんとなく使いやすい。 Metasploit経由で確認した結果。 てなわけで、今回はこれで終了します。 Tremaとか、メタプログラミングとかもっとやりたいのですが、時間の使い方がなかなか上手くいかない日々が続いていて 進み具合はあまり良くないです。積んでる本もたくさんあるし(゚∀゚汗)はわわ。 […]

MetasploitをDebian8にインストールして、いくつかのテストをしてみました。

Hack系のツールというとイメージ的にもPythonと思っていましたが、このツールはどうやらRubyのようです。 わお〜。 最近使いたいツール類がたまたまRubyだったということがとても多いので少々驚いていますが、このビッグウェーブに乗るしかない!と、ビッグウェーブと言ってもマイブームの中のビッグウェーブですけどね。 Hackというと昨今のメディアの影響で良くないイメージをお持ちの方も多いと思いますが、本来はお医者さんのようなもので、探求した技術を良い方向に動かす人のことを指します。LifeHackというウェブで色々なことを少し掘り下げてる記事がありますが、ああいう感じだと思います。 では、Metasploitで何ができるかというと、ペネトレーションテストといって、簡単にいうとサーバーやネットワークに弱点がないか確認したり、どれだけのDoSに耐えられるかどうか、のようなテストをすることができます。 しかし、大いなる力には、大いなる責任が伴います! 自分の管理下にないコンピュータやネットワークに使ったりすると、攻撃とみなされたり、法的措置をとられたりということも十分にあり得ることですので、しっかりとした知識を持って利用する必要があります。 以前とりあげていたスクレイピングも場合により攻撃とみなされることもあるので注意です。 注意する所は、そのツールを使うと何が起こるのか、そのコマンドを叩くことでどういう結果が返るのか、また、実行して予想外のことが起こった時に自身のスキルでちゃんと解決ができるのか。 などなど、そういうことが分かった上で利用する必要があるということです。 な〜んて偉そうに語っていますが、自分もまだまだ半人前だし、楽しくなけりゃ意味がないと思ってますから、準備が整ったらWAN側のLANケーブルは抜いてしまって、スタンドアロンな環境で実験すれば安全なのですよ。 環境 最近はオープンソースの精神にハマっていて、みんなで良くしていこうぜ!っていいですよね。 Debianはユーザーオンリーのディストリということを最近知りました。 今回はDebianにしたいと思います。 Debianも8からはSystemDになったしね〜。 最新のJesieです。 sudoや必要最低限なものは既に準備済みの状態です。 インストールメモ パッケージ類を推奨パッケージと共にいろいろインストール。PATHを通したりが面倒なので、rbenvでやった方がいいと思いました。rbenvなしでインストールしたので、折角なのでそのまま載せまする。 パッケージは途中からまた最初に1回戻っているのですが、多分これらで大丈夫だと思います。 環境変数の追加 Metasploit-frameworkのインストール bundle installで結構な量がインストールされました。 お馴染みのライブラリや、初めて見るものもたくさんありますね。 いったん起動させてみました。もちろんまだ使えませんので、DBを用意します。 Postgresを使います。 設定ファイルの変更や、DBの作成をおこないます。 では、起動します。    ビルドが始まりました。 しばらくしてから検索をかけてみると、じわじわとデータが溜まってきたようです。 では準備が整いましたので、実験してみます。 スタンドアローンにしようと思って、LANケーブルを引っこ抜いたんですが、LANケーブルが古くなっていたのか、抜いた拍子に割れてしまいました〜\(^o^)/ 気を取り直して実験であります。だいじょぶ、まだ使えますぞ。 ペネトレーションテスト 対象のサーバーですが、以前にrsyncを使ってVPSの環境と同じファイル構成の仮想サーバーをローカルのVirtualBoxで作ってあったので、そいつを使いたいと思います。 まずはゆるめのDoSで使ったMetasploiteを使った感触を試してみようと思います! 細かい設定等は飛ばして実行前の確認から。 ログ このような感じでログに残っていますが、ゆるいので、ログもゆるいです。 操作になれるための作業なので、こんな感じで良いかと思います。 あと数個試してみて、Hello World程度の使い方はわかってきました。 それでは! Wordpressに対しての攻撃をいくつか試してみようと思います。 ちゃんと防げるかドキドキしますね・・。 1個目! セーフでした。 ログ 2個目! セーフでした! ログ ペネトレーションテストを試してみた感想 このテストの良いところは、サーバーのセキュリティを高めるだけでなくて、攻撃側の行動がログから読めるようになる力がつくことです。テストにびくびくしているのはちょっとマヌケでしたが、ログのリーディングスキルの向上をすることができるというのは今回の収穫でした。 あとは時間がある時に色々とためしてみたいと思います。 昨年は脆弱性の1年と言ってもいいくらいに、色々な種類の攻撃がありましたが、アタック側のことも勉強して、ログを読む力をつけて、ディフェンス力を上げようと思います。 ザーッと見てこのログ怪しいな、と読めるようになれば良いと思います。 でもって、ソースコードはRubyで書かれているので、Rubyのコードリーディングもできるという一石三鳥になりそうです。 いつかは脆弱性やバグの修正までできるように馴れるといいですね。 ではまた〜。