2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

攻撃者の視点で侵入からバックドア設置までを追う【連日投稿day28~34のロードマップ】

2
Posted at

連日投稿もだいぶ軌道に乗ってきたので、今週から1週間の学習ロードマップを先に提示する事とする。

今週のロードマップ

これまでの学習を振り返ってみて、

  • SQLインジェクション、XSS、CSRFと、個別の脆弱性については少しずつ理解が深まってきた。
  • ただ、1つの脆弱性足がかかりに、もっと別の脆弱性に付け込んでくる!みたいな地続きのアプローチって考えた事ないな~

と、思ったので調べてみたところ、こういう一連の流れを、「侵入のキルチェーン(Kill Chain)」 とか 「サイバーキルチェーン」 っていうらしい。

今週はこれをテーマに、攻撃者がどのように標的を陥れるのか、その一連のシナリオを自分の手で再現してみることにした。単発の脆弱性学習から、シナリオベースにアップデートしてみる。

この連日投稿チャレンジについて
目的: セキュリティエンジニアとしての技術力向上
手段: シェルスクリプト作成を通じて学習
実施する事: 自動化,監視,ツール開発基礎学習など

目次

今週の学習計画:侵入シナリオ

今週は、以下の流れで攻撃者の行動をトレースし見ようと思います。

  • 金曜日 (Day 28): 足がかりをみつける(コマンドインジェクション)

    • まずはウェブサイトの機能に紛れ込んだ脆弱性を見つけ出し、サーバー上で任意のOSコマンドを実行できることを確認する。ここを起点にする。
  • 土曜日 (Day 29): サーバーの乗っ取り(リバースシェル)

    • コマンドが実行できるだけでは不便。昨日見つけた穴を利用して、攻撃対象のサーバーから自分のPCに対して接続させ、対話的なシェル(操作画面)を確立する。これでサーバーを自由に操作できる状態を目指す。
  • 日曜日 (Day 30): 内部偵察(機密情報の窃取)

    • サーバー内部に侵入できたら、次はウェブサーバーの設定ファイルを探し出して、中に書かれているデータベースのパスワードを盗み見る。
  • 月曜日 (Day 31): 水平展開(データベースへの侵入)

    • 昨日盗んだパスワードを使い、ウェブサーバーからさらに内部のデータベースサーバーへ接続。個人情報など抜き出せるか確認する。
  • 火曜日 (Day 32): 再侵入の準備(バックドアの設置)

    • いつまでも同じ穴から侵入できるとは限らないので、ウェブサイトに裏口を設置し、いつでも簡単に入れるようにしておく。
  • 水曜日 (Day 33): 攻撃の検知(防御者への転身)

    • 最終日は防御者の視点に立つ。昨日自分が設置したバックドアを、ファイル監視の仕組み(自作スクリプト)で検知できるか試す。攻撃と防御、両方の視点を持つのが狙い。
  • 木曜日 (Day 34): 報告書の作成

    • 今週も脆弱性診断レポートにまとめる。

まとめ

いままでの、個別の脆弱性を点で学ぶ思考から、地続きの線にしていく思考に変えてみようと思います。正直この考えが適切なのかは知らんけど。
とりあえずやってみて、セキュリティ対策における新しい視点とか、思考のプロセスが発見できたらいいな~と思ってます。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?