37
42

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ペンテスター勉強方法 ロードマップ 

37
Last updated at Posted at 2024-03-19

ペネトレーションテストをどのように勉強してきたかのメモになります。

本の紹介が多めです。

※Hack The Boxのアクティブマシンを一人で攻略できる人は読んでもあまり意味がないかもしれないです。

ITの基礎知識固め

まずはOSの理解やネットワークの理解が必要です。
IT業界で働いていく以上、どこかのタイミングで必要になるかなと思います。

業務上必要な実践的なスキルを身に着けていくとさらに良いと思います。

・OSやコンピュータアーキテクトの基礎

工学基礎 オペレーティングシステム

下記が最低限わかれば飛ばしてもいいかなと思います
プロセスとは
仮想メモリとは
スワップ領域とは
ガーベッジコレクションとは
ファイルシステムとは
CPUがどのようにしてプロセスを並列で動かしているか
OSとソフトウェアとハードウェアの関係性

セキュリティ以外でも、リソース不足などの性能の問題が発生したときに役に立ちます。

・Windowsのコマンド基礎

Windowsコマンドプロンプト クイックリファレンス 上

上と下があります。

攻撃者が環境の情報収集に使うWindowsのコマンドの理解につながります。

また、通常業務上も何かと役に立つので気になるところだけ読む形でも問題ないと思います。

攻撃者がよく使うコマンドなど
whoami
net user /domain
net use

・Linuxのコマンド基礎

最初はKali Linuxをハンズオンで使って勉強していました。
ただ、実際にLinuxを網羅的に勉強すると見える世界が変わります笑
サイバー攻撃の調査や攻撃、トラブルシューティングなど幅広く使えます。

セキュリティのための勉強であれば、LPIC-2の内容まで理解するとほとんど問題ないとおもいます。

Linux教科書 LPICレベル1

・Pythonのコーディングスキル基礎

サイバーセキュリティプログラミング


Pythonに関しては好きな分野があればそれでいいと思います。

上記の本は第1版はPython2で記載されているので間違えないように新しいほうを読みましょう。

・TCP/IP ネットワーク技術の基礎

ネットワークプロトコル

IT関連の担当になりたてのころはネットワークプロトコルが苦手でした。
その時に一番読みやすく、全体像を理解しやすかった本です。

深く理解したいならマスタリングTCP/IPを読んでみるのもおすすめです。

初心者向けハンズオン

一旦、攻撃の全体像を理解するためにシムレーション系の本を読んでもいいかもしれません。

ハッキングラボの作り方

とりあえず仮想環境を作れるようになります。
あとは、脆弱性に関して少し理解ができるようになるかな??と思います。

ダークウェブの教科書

教養としてダークウェブを知っておいてもいいかなと思います。
実際アクセスする場合には注意してください。
基礎が固まった段階で理論的なものはまだまだありますが、、、

OSINT実践ガイド


オープンソースの調査能力は業務でもすごく役に立ちます。
不要な情報をフィルターがうまくできるとトラブル解決などもいい感じに対応できると思います。

汎用性が高いので初期の段階での勉強推奨です。

上記は比較的最近出た本でおすすめしておきます。

その他にも下記のシリーズはちょっとずつ読んでみるとかでも面白いですね
・ハッカーの教科書
・ハッカーの技術書
・ハッカーの学校

サイバー攻撃の概念に関する理解

サイバーキルチェーン

→比較的理解しやすい概念

検索したらたくさん記事が出るので読みやすいものを読んでみる

Unified kill chain

→より詳しくなっているのでちょっと難しい
意外と日本語の記事が少ない

痛みのピラミッド

教養として知っておくべき攻撃者の残す痕跡(IoC)に関する知識

MITER ATT&CK

攻撃者の振る舞いや攻撃者の使うツール、手法などまとめられている
脅威ベースのペネトレーションテストとかだとTTPなどは理解すべきかなと思います。

WEBセキュリティに関する基礎

WEBはHTTPやHTTPSの二つのプロトコルだけですが奥が深いです

機能が豊富なので、WEBの脆弱性関連は独立して分野として成り立ってるイメージ

リアルワールドバグハンティング

実際の悪用例から脆弱性を学べるのでとっつきやすい

有名な 安全なWEBアプリケーションの作り方 は分厚い&作り方の本なのでこちらから入門してもいいかもしれない

クロスサイトスクリプティングのやり方はわかるが実際にどう悪用するの?という人にお勧め

内容としてはHTMLとJavaScriptの知識がなんとなくレベルである人だと読みやすい

BOF エクスプロイトコード開発

スタックベースのバッファオーバーフローの理解をすると急に攻撃がわかってきた気がします。
ネットワーク経由での脆弱性の悪用からリモート操作までのイメージがこれで初めてつきました。

コンピューターハイジャッキング

hacking 美しき策謀 などが有名だが、こちらのほうが読みやすかった

マルウェアに関する理解

マルウェアの教科書

読みやすい&面白い

永続化などの概念がわかりやすい

その他、攻撃者の振る舞いなど

認証情報のダンプ

Mimikatzを自分のPCで動かしてみるに限る
(Googleで"mimikatz cheatsheet"など検索したら色々な情報が出る)

なお、下記の記事は簡潔にデフォルト機能でのメモリダンプが
まとめられており、面白い

攻撃者が悪用するWindowsコマンド

絶対に一度は読むべき

・Windows環境の情報収集に使われるコマンド
・横移動に使われるデフォルトコマンド

その他

実際に攻撃を行っていく際には下記のサイトなどを参照したらやりやすい。

・HackTricks 攻撃ツールの使い方などの参考

・OSCP Playbook 同上(OSCP試験は制限が多い)

・xcyclopedia Windowsコマンドの悪用手法など

・malapi Win32 APIの悪用手法について(上と似ている)

・GTFOBins Linuxのコマンドの悪用手法など

・NVD 脆弱性情報サイトへのリンクがまとまっている

・TryHackMe 王道のハッキング勉強サイト

※何かのツールの使用方法を知りたい等あれば無料でもある程度勉強できる
(ほかにもたくさんありますが調べてみてください)

最後に

他にもPowerShellやWireSharkなど使えたほうがいいツールはたくさんあります。

今回は最低限ペンテストができるかなというレベルにまとめています。
ここからは、Writeup(答え)を見ながら実際にいろんな攻撃手法を手を動かして理解していくともっといい感じに攻撃できるようになります。

個人的な主観が多めです。
結局のところは一番自分自身が読みやすい本や記事を見つけることが最初の近道になるかなと思います。

Hack The Boxを攻略を今後進めて、もっとTry Harderしようと思います。

FYI: OSCP合格しました
OSCPの受験前と合格後に書いた記事があります。興味があったら参考にしてください。
合格後の記事は意図的に若干の技術的な内容を排除してます。

37
42
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
37
42

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?