読者です 読者をやめる 読者になる 読者になる

BlogIsHowMuch

鑑賞した作品のレビューやプログラミング系のネタをダラダラ書いていくだけのブログ

自宅サーバーにwebshellを設置してみた

プログラミング セキュリティ

注意

 悪用しないでください。
 自分のパソコン以外に仕掛けないでください。

きっかけ

 以前seccon2015の予選のwriteupを読んでいた時にphpで書かれたバックドアが存在することを知りました。
 調べたところ「webshell」と呼ばれるものらしく、ブラウザからもサーバにコマンドを送ることができるようです。
 バックドアなので普段は悪用するものなんでしょうが、ブラウザからサーバをいじれたら便利かな~なんて思ったので簡単なwebshellを作って設置してみました。

ソース


仕掛ける

 今回は自分のサーバですのでファイル転送でphpファイルを転送するだけです。

 以前参加したCTFではjpgファイルをアップロードできるウェブサイトに対して、webshellをアップロードした後にそのファイルの保管場所にアクセスしてshellを起動、flagを取るという問題がありました。

 ちょうどこんな感じです。
youtu.be

使用方法

 ブラウザで仕掛けたページにアクセスするとこんな感じ

f:id:HowMuch:20160224221447p:plain
 
 入力フォームにコマンドを入力して実行。
 例:ls -a /

 もっと拡張させればいろいろ便利!

有名なwebshell

 いろいろ調べたら「WSO」というwebshellが有名らしいです。
試しにどんなもんか覗いてみました。

f:id:HowMuch:20160224183838p:plain
 パスワードわからなくて困りましたが、ソースにハッシュ値が書いてあったのでググって解決。
パスワードは「admin」でした。

 ちょっと覗いただけでも凄まじい完成度でした!

f:id:HowMuch:20160224184047p:plain
簡単にファイルやらディレクトリが作れたり、データベースにアクセスできたり、バックドアを起動できたり、自動でサーバの情報を集めたりとかなりかなり凝った作りになっていました。
ソースを読んでも勉強になって楽しいです。