Grey Hack最初のミッション(パスワード取得)の記録

📢 この記事は gemini-2.5-flash によって翻訳されました

はじめに

昨日プレイして、最初のミッションを受けた時の記録だよ。思い出しながら書いてるから、細かいところが実際と違うかもしれないね。

ミッション受注

ある謎の人物の試練をクリアして、HackShop のサイトを手に入れた後、最初のミッションを受けたんだ。

ミッションの内容は「The client wants the login credentials of the user Daronane. The remote ip of the victim is 54.44.37.52. It’s important that you access the correct machine behind the public ip. The victim’s ip LAN is 172.16.6.7」って感じ。

ミッション分析

ミッションの要求は Daronane のログイン情報で、ターゲットのパブリックIPは 54.44.37.52、LAN内IPは 172.16.6.7 だったよ。

最初の試み

まずは、 Grey Hack 单人模式游戏攻略(1)-MapleGe の記事の方法を試してみたよ。

最初に whois コマンドを使って管理者メールアドレス [email protected] をゲット。そのメールアドレスに Login issue って件名でメールを送ったら、Daronane のパスワードが pierra って分かったんだ。

早速 SSH54.44.37.52 に接続しようとして、ssh Daronane@pierra 54.44.37.52 ってコマンドを打ったんだけど、接続失敗。エラーメッセージは incorrect user/password だった。

もしかして入力ミスかなって(手打ちだしね)、何回か試したんだけど、コピペしてもやっぱりアカウントかパスワードが間違ってるって言われるから、諦めたんだ。

ブラウザでそのIPにアクセスしてみたけど、当然何も手がかりはなし。Metlifegroup. Everything you need for your tech company っていう一行の文字と、画像(多分ラズベリーパイかな?)があるだけ。このサイト、もしかしてフォーラムで、Daronane はそのユーザーなのかなって思ったよ。

ゲームの日本語化

HackShop にアクセスした時に出てきた Exploits のチュートリアルが一部分からなかったから、ゲームの日本語化を探してみたんだ。クリエイターズワークショップを開いたら、やっぱり [简体中文](simplified Chinese) っていう日本語化パッチを見つけたよ。サブスクライブしてゲームを再起動したんだけど、インターフェースは日本語化されてなかったんだよね。

クリエイターズワークショップのダウンロードアドレスを探して、steamフォルダ\steamapps\workshop\content\605230\2825584160 にたどり着いた。README.md を読んでみたら、このフォルダの中身を C:\Users\%UserName%\AppData\LocalLow\Loading Home\Grey Hack\ フォルダに入れる必要があるって分かったよ。

実際は custom_lang.json を上記のフォルダに入れるだけでOKだったみたい。

もう一度ゲームに入って、左側の languageChinese を選べば日本語化できたよ。

マニュアルを読む

日本語化した後のマニュアルの Exploits の部分を読んだんだけど、(日本語化してもあんまり変わらないことに気づいたけど)、やっぱりこれが何をするものなのか、いまいちピンとこなかったんだ。

さらに調査

引き続き攻略法を探したんだけど、何も見つからなくて、 Grey Hack: 一个比较简单的任务 - 哔哩哔哩 っていう記事を見つけるまではね。

この記事の「スクリプトキディ」っていう言葉で、この Exploits が現実世界の攻撃スクリプトみたいなものだって理解できたんだ。

誤った探索

HackShop でツール scanlibscanrouter をダウンロードしたよ。

scanlib 54.44.37.52 ってコマンドを試したら、Missing metaxploit って出て、意味が分からなかったんだ。

nmap 54.44.37.52 コマンドを使ってみたら、そのサーバーは22と80の2つのポートを開放していて、それぞれSSHとHTTPサービスを提供してるって分かった。

scanrouter コマンドを使ったら、そのサーバーに Kernel_router.so:V1.0.0 があるって分かったから、関連するスクリプトを探してみたんだ。そしたら Get access to a shell っていう説明のスクリプトが見つかったんだけど、特に要件はなかったよ。

そのスクリプトを /home/yexca/hacktool にダウンロードして、ターミナルでそのフォルダに入って KernelRouterAccess 54.44.37.52 ってコマンドを打ったら、Can't find metaxploit library in the /lib path or the current folder ってエラーが出た。

注:最初はリネームしてなかったんだけど、後で KernelRouterAccess にリネームしたから、この記事ではこの名前で書いてるよ。他のスクリプトも後でリネームしたもので、ショップの元々の名前とは違うからね。

エラーからするとファイルが足りないみたいで、/lib って見ると、もしかして相手のサーバーに該当するファイルがなくて認識できないから入れないのかなって思ったんだ。

もう一度考える

nmap コマンドでこのサーバーが22と80番ポートを開放しているって分かったし、それにさっき被害者がフォーラムユーザーだって推測したから、HackShophttp スクリプトを探してみたんだ。そしたら Grant access to the file /etc/passwd and decipher its contents っていう説明のスクリプトが見つかった。要件は Minimum number of 1 users registered in the computer、つまり最低1人のユーザー登録が必要ってことだね。このサイトはフォーラムだし、まさかrootアカウントで直接開発してないだろうし、複数のユーザーで開発してるだろうなって思ったんだ。

スクリプトをダウンロードして HttpPasswd 54.44.37.52 80 ってコマンドを打ったら、前のスクリプトと同じで Can't find metaxploit library in the /lib path or the current folder って言われたよ。

これには驚かなかった。だって scanrouter コマンドでスキャンした時に Kernel_router.so:V1.0.0 しかなくて、libhttp.so みたいなのはなかったからね。

実はHTTPスクリプトを選んだのは、さっきの記事に**「ミッションをクリアするだけなら、リモート接続は必要ないし、ローカルでスクリプトを実行しても痕跡は残らない」**って書いてあったからなんだ。

それから、SSHも試してみようと思って、HackShop で該当するスクリプトを探したよ。Take advantage of a vulnerability in the ssh service to inject a new password to a registered user って説明のスクリプトが見つかった。要件は Any user logged in the computer、つまり誰かがログインしていればいいってことだね。このサイトを開発するならログインは必須だろうから、この要件は満たせるはずだ。

スクリプトをダウンロードして SSHPasswd 54.44.37.52 22 ってコマンドを打ったんだけど、やっぱり Can't find metaxploit library in the /lib path or the current folder って言われたよ。

これどうすりゃいいの??? そっちのサーバーの /lib には何も入ってないってこと?じゃあ、/lib に何があるか確かめるために、全種類のスクリプトを試さなきゃいけないってこと?そしたら破産しちゃうじゃん!

正しい方向へ

そこで検索エンジンで攻略法を探してみたんだけど、見つからなかったんだ。

またあのエラーメッセージ Can't find metaxploit library in the /lib path or the current folder を思い返したんだ。最初は前の /lib と意味不明な metaxploit しか目に入らなかったんだけど、よく見たら後ろに or the current folder って書いてあるじゃん。この「カレントフォルダ」って何のこと?もしかして僕のPC上のスクリプトがあるフォルダのこと?だとすると、攻撃するために libssh.so みたいな該当するイメージを全部ダウンロードしなきゃいけないってこと?

ブラックマーケットを開いたけど、libssh.so みたいなイメージはなかったんだ。このゲームには apt-get コマンドがあるのを思い出して、現実のLinuxだと関連プログラムをダウンロードできるから、ゲーム内で apt-get search ssh ってコマンドを打ってみたんだ。そしたら案の定 libssh.so があった! apt-get install libssh.so コマンドを使ってSSHをインストールしたよ。

インストールが終わってから SSHPasswd 54.44.37.52 22 ってコマンドを打ったんだけど、やっぱり Can't find metaxploit library in the /lib path or the current folder って言われるんだ。

もう、ほんとに呆れたよ!!!

もう一度 HackShop を開いて、Tools の下の全商品を全部見てみたんだ。そしたら metaxploit.so が目に留まった。これ、エラーメッセージに出てた metaxploit じゃん!エラーメッセージの current folder と合わせて考えると、もしかしてこれが足りないからエラーになってたのかなって思ったんだ。

スクリプトのあるフォルダ (/home/yexca/hacktool) にダウンロードして、scanrouter コマンドで Kernel_router.so しかスキャンされなかったことを考慮して、KernelRouterAccess 54.44.37.52 を実行してみたんだ。そしたら、なんと!アクセス権を手に入れたよ!

権限取得

アクセス権を手に入れた後、まずはログを削除しようと思って FileExplorer.exe コマンドを入力して /var/system.log にアクセスしたら、Permission denied って出て、権限が足りないって。このスクリプトで手に入れたのはゲスト権限だったみたい。じゃあパスワードファイルを探そうと思って /etc/passwd にアクセスしたけど、やっぱり Permission denied (実際、そのコンピューターのファイルはほとんど全部見て回ったよ)。

いやいや、このスクリプト、何の役にも立たないじゃん!

SSHスクリプトはパスワード変更だからリスクが高いし、HTTPスクリプトでパスワードを取得しようと思ったんだ。HttpPasswd 54.44.37.52 80 ってコマンドを打ったら、結果は can't read /etc/passwd. Permission denied。取得した権限が guest って表示されてるし、もう**。

結局、SSHスクリプトを使うことにしたんだ。SSHPasswd 54.44.37.52 22 ってコマンドを入力して、新しいパスワード 114514 を入れたら、Farraze のパスワード変更に成功したよ!

ssh Farraze@114514 54.44.37.52 ってコマンドを入力したら、ターゲットのマシンに無事入れたんだ。そこで cat /etc/passwd ってコマンドを打ったら、rootの暗号化されたパスワード情報を手に入れたよ。

ローカルでファイル(touch mima.txt)を新規作成して、そこにrootパスワード情報をコピー。それから decipher mima.txt で復号したら、rootのパスワードが「44444」だって分かったんだ(このパスワードでいいのかよって感じだね)。

exit コマンドで接続を切って、次に ssh root@44444 54.44.37.52 を入力したら、root権限でログイン成功!

マシンに侵入

入ってまず最初にログを削除。そのマシンのユーザーは RalanclFarraze がいて、ターゲットの Daronane はいなかった。やっぱりフォーラムユーザーだったのかな、でもこのマシンをくまなく探したけど、関連するものは見つからなかったよ(ついでにこの2人の持ってたお金、僕の口座に送金しちゃったけどね〜)。

ミッションの内容を思い出すと、IP 172.16.6.7 って書いてあったな。

ping 172.16.6.7 ってコマンドを打ったら、Ping successful って表示された。僕のPCからはPingできないけど(当たり前だよね、内部ネットワークのPCはPingできないもん)。

nmap 172.16.6.7 ってコマンドで開放ポートを確認しようとしたら、command not found って出て、コマンドが見つからないって。

あらら、それじゃあ僕のコンピューターのコマンドファイルをそのコンピューターの /bin ディレクトリに置くしかないな。

コピーしてからもう一度 nmap 172.16.6.7 ってコマンドを打ったら、3306番ポートが開放されていて、サービスは employees って書いてあった。これ、何だろう?

検索エンジンで調べたら、3306番ポートは一般的にデータベースのポートだって分かったから、SQLのスクリプトを使う必要があるってことだね。

パスワード取得

HackShop に入って、関連するスクリプトを探したよ。そしたら Take advantage of a vulnerability in the sql service to inject a new password to a registered user っていう説明のスクリプトが見つかった。要件は Any user logged in the computer、つまり誰かがログインしていればいいってことだね。データベースを作成するなら、必ずユーザーがログインしてるはずだもん。

ダウンロードしてから SqlChangePasswd 172.16.6.7 3306 ってコマンドを打ったら、Connection refused. Address unreachable って言われた。アクセス拒否か、そりゃそうだ、データベースはホワイトリスト制だろうな。

スクリプトと metaxploit.so をターゲットのマシン /root ディレクトリに置いて、もう一度コマンドを入力。パスワードを 114514 に変更して、ユーザーは Osquel にしたよ。

で、問題はここから。パスワードを変更したとして、その後どうするの?このサーバーは3306番ポートしか開放してないし、僕も入れないじゃん XD

よし、もう一度 HackShop に入って、関連スクリプトを検索。Prints the contents of the file /etc/passwd っていう説明のスクリプトを見つけたよ。要件は Any user logged in the computer、つまり誰かがログインしていればいいってことで、さっきのスクリプトと同じだね。

スクリプトをターゲットのマシン /root ディレクトリに置いて、SqlPrintPasswd 172.16.6.7 3306 ってコマンドを入力したら、そのマシンの全ユーザーのパスワードが手に入ったんだ。その中にターゲットの Daronane のも入ってた!

自分のPCにコピーして復号したら、パスワードは pierra だったよ!

???このパスワードをクライアントに送ったら、肯定的な返事が来たんだけど???

僕、**。

すごい! (YouTuber 黑镖客 のネタから引用)

あとがき

最初からメールでパスワードは手に入ってたのに、僕はいろいろ苦労してもう一度パスワードを手に入れたってわけさ (ほんと、呆れるよね)

収入は200だったんだけど、スクリプトの購入費用は200をはるかに超えてたから (トータルで見るとかなり損してるな)。でもスクリプトは繰り返し使えるし、探索のプロセス自体がすごく面白かったから良しとしよう!

このゲームの攻略情報って、ほとんどないんだよね。もしこの記事が、攻略を探している誰かの役に立ったら嬉しいな。

This post is licensed under CC BY-NC-SA 4.0 by the author.

Visits Since 2025-02-28

Hugo で構築されています。 | テーマ StackJimmy によって設計されています。