久しぶりに記事書きます。
先月は積んでいたゲームをしたらハマってしまいずーっとプレイしてました。
プレイ日記を以前構築したwordpressに細々と書いていますが、少なくてもアクセスがあると嬉しいですね。
でもこっちのブログのほうがアクセス数は多いですw
先月末か今月頭か忘れましたが、本屋でこの本を見つけてジャケ買いしてしまいました。
セキュリティの勉強したかったのと、教科書的な仮想環境の作り方を見たかったというわけです。
内容はKaliLinuxを使って脆弱性サーバを攻撃してみようというものです。
仮想環境はVirtualBOXを使います。
自作サーバをまだ買えていないので、とりあえずはサブ用で買ったノートPC内に環境を作ってみました。
仮想環境はVMware Workstationで作ろうと考えていましたが、
無料版だと仮想ネットワークの構築が柔軟にできなさそうなのでVirtual Boxのほうがいいかもしれませんね。
Workstation Pro版買ってもいいんですが、結構お値段するんですよね。
ここにお金をかけるべきか迷うところです。
仮想環境構築
本に倣って構築しています。
詳細は本に書いてあるので割愛します。
Hyper visorはVirtual Box 6.0.4 r128413 (Qt5.6.2) です。
Kali Linuxは2NICでNATモードとHost Only Adapterを使います。
- NATモード
- Internet用
- Host Only Adapter
- ローカルLAN用
ローカルLANにはWindows7,10やmetasploitableサーバなんかを置いてKaliからハッキングしていくという流れです。 今後サーバを増やす時もローカルLAN内に増やしていくことになります。
構成図
本に構成図は書いてあるんですが、環境は自分で管理するべきですよね。
ハッキングラボの構成図を作ろうと思いますが、家で図面を作るのも大変で嫌ですよね。
なので以前作ったnwdiagの構成図がありますのでこれをアップデートしようと思います。
nwdiagでNW構成図を自動生成 - paloma blog
以前の環境はこちら。
Linuxだと背景が市松になるのでWindowsでアウトプットし直してます。
- ソース
nwdiag { Internet [shape=cloud] Internet -- RT network HomeNW { address = "192.168.0.0/24" RT [address = "192.168.0.1"]; Windows10 [address = "192.168.0.23"]; Ubuntu18.04 [address = "192.168.0.10"]; TVRecodeSV [address = "192.168.0.13"]; RaspberryNAS [address = "192.168.0.19"] } }
- 構成図
うーん、シンプルw
ネットワーク設計
自宅のセグメント用途はこんな感じです。
- 192.168.0.0/24
- デスクトップ用ネットワーク
- 10.0.0.0/24
- 検証マシン用ネットワーク
- Virtual BOX NATネットワーク
- Virtual Boxの挙動が不明なのでIPアドレス設計ができませんが、 このセグメント体も存在します
セグメントが少ないですが、自宅環境としてはこんなもんでしょう。
また、metasploitableとwordpressは未構築ですが、とりあえず設計ということで。
diagファイルアップデート
- ソース
nwdiag { Internet [shape=cloud] Internet -- RT network HomeNW { address = "192.168.0.0/24" RT [address = "192.168.0.1"]; Windows10 [address = "192.168.0.23"]; Ubuntu18.04 [address = "192.168.0.10"]; TVRecodeSV [address = "192.168.0.13"]; RaspberryNAS [address = "192.168.0.19"]; Win10Note [address = "192.168.0.12"] } network NATNW { Win10Note ; kali ; } network VirtualboxNW { address = "10.0.0.0/24" Win10Note [address = "10.0.0.1"]; DHCPSV [address = "10.0.0.100"]; kali [address = "10.0.0.2"]; metasploitable [address = "10.0.0.3"]; wordpress [address = "10.0.0.4"]; } }
nwdiagは自動描画できますが、インプットファイルは作成しなければいけません。
(結局自動じゃないけど許してね。ファイルの自動生成まではまだ作りこめません)
アウトプット
実行環境はこちら
- OS
PS C:\Users\masashi\python\nwdiag> Get-WmiObject Win32_OperatingSystem SystemDirectory : C:\WINDOWS\system32 Organization : BuildNumber : 17763 RegisteredUser : user SerialNumber : 00330-80000-00000-AA775 Version : 10.0.17763 PS C:\Users\masashi\python\nwdiag> $psversiontable Name Value ---- ----- PSVersion 5.1.17763.316 PSEdition Desktop PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...} BuildVersion 10.0.17763.316 CLRVersion 4.0.30319.42000 WSManStackVersion 3.0 PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1
- pythonまわり
PS C:\Users\masashi\python\nwdiag> python --version Python 3.7.2 PS C:\Users\masashi\python\nwdiag> python -m pip list | findstr nwdiag You are using pip version 18.1, however version 19.0.3 is available. You should consider upgrading via the 'python -m pip install --upgrade pip' command. nwdiag 1.0.4
アウトプットはコマンド一発!
ファイル名を指定しなければdiagファイルの名前が付きます。
> nwdiag .\home.diag
上記を実行するとhome.pngという画像ファイルが出力されます。
今回のアップデートでこんな感じになりました。
ノードは少ないですがグッとネットワーク構成図っぽくなりましたね。
今後やりたいこと
- diagファイルをGithubに上げて管理する
- Kaliを使ってセキュリティの勉強をする
- 自宅環境にサーバ(物理マシン)を導入する
仮想環境内にpfsense等の仮想ルータを環境内に入れたいのと、
サーバを買ってGuestの引っ越しをしたいです。
資金はあるんですが、安くはない買い物なのでなかなか踏ん切りがつきません…。