どうも、野溝のみぞうです。最近、7日間でハッキングをはじめる本という本を書きました。本について詳しくは以下の記事をご覧ください。
大変好評をいただいておりまして、発売日に増刷が決まったり本屋さんの技術書売上ランキングで1位をもらったり、びっくり嬉しい悲鳴を上げております。お買い上げいただいた方、ありがとうございます。
ただ、本書で取り上げているTryHackMeというWebサービスの性質上、執筆時点より変わってきているところや、単純に筆者の不手際で間違ってたところなどが見つかっています。
正誤表を見ていただいても良いのですが、説明とか詳しく書きたかったのでサポートページを作成しました。もし本書を進めていくなかで困ったことがあったらこのページを確認いただけると問題が解決するかもしれません。このページは今後も気がついたら更新していきます。(※ページ番号は初版時点のものです)
Day1 ハッキングの準備をしよう
P45:TryHackMeの画面で接続確認ができない
めちゃくちゃお問い合わせをいただいているのがこちら。VPNの接続確認のために「Access」画面に接続するというくだりがあるのですが、どうやらTryHackMeの画面が調子悪いらしく、VPNに正常につながっててもWEBの画面では「Internal Virtual IP Addressが表示されない」「ConnectionがNot connected」という問題があるようです。
執筆時点では大丈夫だったんですが…気がついたらページのタイトルに(Advanced)ってついてるし何か仕様が変わったのかもしれません。
あとこれはTryHackMe側の問題なので「なんとかしてください!」と言われましても筆者にはどうしようもないです…ごめんな。そのうち直るといいなと思ってるけど後述の通り実害があんまりないのでわからんね。
VPNの接続確認の方法(改)
対応としては、もともと本の中でも「一応確認しましょう」として紹介してるだけの位置づけなので、気にしないでスキップしてしまって大丈夫です。
前ページにおいてターミナルで「Initialization Sequence Completed」と表示されていることを確認しているはずなので、通常はそのまま続けてもらって問題ありません。
それでもどうしても心配ですというあなたは、以下のいずれかの方法で確認してみましょう
①PINGコマンドによる確認
以下のように10.10.10.10に対してpingコマンドを打ってくだい。(pingコマンドについてはP52で解説しているので合わせてご確認ください)
# VPNの疎通を確認する
┌──(kali㉿kali)-[~]
└─$ ping 10.10.10.10
PING 10.10.10.10 (10.10.10.10) 56(84) bytes of data.
64 bytes from 10.10.10.10: icmp_seq=1 ttl=60 time=251 ms
64 bytes from 10.10.10.10: icmp_seq=2 ttl=60 time=252 ms
(後略)
64 bytes from~と連続で表示されたら、応答が返ってきていますので問題ありません。適当なタイミングで[Ctrl]+[C]キーを押して止めましょう。
②WEBブラウザによる確認
kaliの中でブラウザを起動させて「http://10.10.10.10」にアクセスしてみましょう。(httpsではないことに注意)
画面が見えたらVPNに接続されているので問題ありません。
画面に表示されるIPアドレス(ローカルマシンのIPアドレス、上記の例だと10.17.14.198)は毎回変わりますのでスクショと違っても気にする必要はありません。
以上のいずれかの方法で確認して、安心して先に進んでください。
Day2 はじめてのハッキング
P67:ディレクトリ探索の結果が返ってこない
ターゲットサイトのディレクトリとファイル探索のためにdirbコマンドを使うのですが、あまりにも表記が自然すぎてコマンドを間違えてることに気づきませんでした。申し訳ありません。これは正誤表にも載ってますし、2刷以降は修正されているはずです。
誤)
┌──(kali㉿kali)-[~/7DaysHacking/Day2]
└─$ dirb http://10.○.○.○/usr/share/dirb/wordlists/small.txt
正)
┌──(kali㉿kali)-[~/7DaysHacking/Day2]
└─$ dirb http://10.○.○.○ /usr/share/dirb/wordlists/small.txt
本文にもある通り、辞書ファイルは2つ目の引数として指定することが必要なので、めっちゃわかりにくいですが、ターゲットマシンのIPアドレスと /usr/share/dirb~の間に半角スペースをいれてください。
スクショだとこんな感じ。上が誤り、下が正しい方です。URL_BASEのところがターゲットマシンのIPアドレスのみになるのが正しいです。
上の例だと「http://10.10.177.79/usr/share/dirb/wordlists/small.txt/」の下のディレクトリを探しに行ってしまうので、一生結果が出てきません。ごめん。
Day3 悪用禁止のエクスプロイトを試してみよう
P110:カンマじゃない
ダンプしたデータを確認するくだり。データを区切っているのはカンマではなくコロンです…なんかいつも言い間違えるんですよね…ごめん
P114:リモートデスクトップ接続時のオプション
オプションに /sec:rdp というのがあるのですが、説明書きが違いました。ごめんなさい。
xfreerdp
コマンドでRDP(リモートデスクトッププロトコル)接続を行う際に、接続時に使用するセキュリティプロトコルを指定するためのものですが、正しくは「RDPプロトコルのセキュリティを強制する」などが正しいです。
FreeRDPのマニュアルはこちら
Day5 Webフォームから侵入しよう
P171:FATAL: Invalid URL format: -R/と表示される
すいません…またdirb関係です。コマンド長くなるので間違えがち。
┌──(kali㉿kali)-[~/7DaysHacking/Day5]
└─$ dirb -R http://10.○.○.○:3333 /usr/share/dirb/wordlists/small.txt
-----------------
DIRB v2.22
By The Dark Raver
-----------------
(!) FATAL: Invalid URL format: -R/
(Use: "http://host/" or "https://host/" for SSL)
-Rオプションはホスト名にしか使えないって言われた。おそらく最後に原稿を校正したときにコマンドの順序を入れ替えたせいで発生したミスです。確認不足でした…ごめんなさい。
対応としては「-R オプションをつけずに実行してください」実はdirbはデフォルトで再帰的な検索をしてくれるのでオプションは不要らしい。
オプションつけたい場合は最後につけます。
┌──(kali㉿kali)-[~/7DaysHacking/Day5]
└─$ dirb http://10.○.○.○:3333 /usr/share/dirb/wordlists/small.txt -R
このやり方でも良いです。この場合は再帰的検索をするか確認されるのでより丁寧(というか本の中でやってるやり方はこれです)
P176:ディレクトリインデックス機能
これ文脈上「ディレクトリリスティング機能」が正しいです。なんで間違えてしまったんだ私よ…。ディレクトリインデックス機能でも解ってる人なら意味は通じそうな気もするけど…P173の太字部分と整合性がとれてないので次機会があったら直してもらいます…。
その他困ったときには
ここに載ってないことで困ったことがあったときに解決のヒントを掲載しておきます。
翔泳社公式の正誤表
正誤表を作成いただいております。翔泳社のサイトで本を購入していなくても正誤表は見ることができます。けっこう見やすいです。
Xに頼る
X(Twitter)のハッシュタグ #7日間ハッキング で進捗をつぶやいてくださっている方がいるので見てみると参考になるかもしれません。
TryHackMe公式コミュニティを覗いてみる
ページ数の関係で紹介できなかったんですが、TryHackMeには公式Discordがあります。
参加の方法はこちら(↓)
前述のAccessページの不具合などは、このコミュニティ内でも質問がされていたりします。困ったことがあれば検索すると解決策が見つかるかもしれません。
以上!TryHarder!