そんな社会人のいちにち。(Mimura)コメントを残すTweetみむらです。行われ、司会業しながら問題もひとつ出題させて頂きました。!」となっていました。「なんだよ、自己主張強すぎだろ・・」みたいな認識は誤りです。(苦笑)当人も年末に心臓にリアップ(育毛剤)を掛けられた感じで、それはそれはよい毛が生えた気がします。グルが渡されるので上手くパスワードロックを解除して中からフラグ文字列を探すことが目的です。そのための手としては下記のようなものが考えられます。ケーブルを接続する・デバッガに接続する。・ファームウェアを取り出して解析する。etc..どうしてこういう問題を作ろうと思ったか。メモリを問題にしたら面白そうと思ったのがきっかけです。最近は業務でもハードウェア機器を触ったり色々としていますので自分の中で作問を通してちょっと無理(学習)をしてみようという気持ちでマスストレージに挑戦してみようと思いました。machine.ハードウェアを繋ぐと上記のような2つのデバイスが認識されます。protected.COMのほうはというと、繋ぐとパスワードを要求され、3回失敗すると、パスワードの受付を一切してくれなくなります。ポート(デバッガを接続するためのポート)が生えています。(STLink).ただそのままでは接続できません。世の中に売られているハードウェアにおいても、こういうデバッグポートは何らかの手によって接続できないように作られています。ポートを無効にするようにコードを入れておきました。en.CD00164185.pdf)今回のボードですと、上にジャンパスイッチがありました。無効化が行われず、接続可能となりました。書かれたボタン(リセットボタン)を押し続けプログラム自体が起動しない状態にして接続するという方法もあります。en.CD00225773.pdf)接続が無事に完了すれば、メモリをダンプするツールを用いてフラッシュの内容を抜き出します。アドレスが設定されていますので、この範囲を見ながらダンプを行います。アクセス可能になっているかと思います。使用しましたが、その他に使い慣れたプログラマやデバッガをお持ちであればそれを利用したりして抽出すれば良いと思います。みたいな感じで抽出するという方法などもあります。付近にパスワードの確認処理が見つかります。but...・・・ですよね。特定位置の文字列チェックが欠損した版になっていました。ミスの状態のまま出題を行ってしまい申し訳ありませんんでした。アリババと40人の盗賊で登場する話ですが、日本だと「アラジン」とかそういう話でも出てくるので世界一般以上に日本で有名なキーワードなんじゃないかと思います。file.アンロックしてから読み直すと、フラグファイルが見えるようになります。あとはこれを展開すると、フラグが出てきます。board?Answer:ごめんなさい。お会いできる機会があれば、事前にお持ちすることは可能です。テストをした際に、エクスプローラや通常の方法で読み出しに失敗することが何度か確認できており、当該のエラーの解決が間に合わなかったのが理由です。digression:次出すことがあれば、もっとちゃんと自分が納得できる問題を提供したいなと思っており今回の自分の問題は、ソフトウェアディベロッパとして、ユーザにソフトウェアを提供することのある人間としては、クオリティが低すぎたんじゃないかと自分でも猛省しています。軽く触れたことは自分の意見には間違いないので機会があれば十分な期間を取った上で、問題のクオリティや出し方(何をすれば良いのかを明瞭にする、問題タイトルをまともなモノにする)を自分の納得できるレベルにして出題してみたいですね。問題を通してハードウェアに対してちょっとでも興味を向けてもらえる人が増えたなら(ハードウェアから信頼を築いていく面白さとか、純粋に現実世界と仮想空間が繋がるのたのしい!とか思ってもらえたなら)今回出題して良かったなーと思います。・・・司会業を当日していながら、色々と申し訳ない気持ちとかがあったのですが、そういうのはチラ裏で。held.ところで、今回の問題はシンガポールで作っていたのですが、あの「マリーナベイサンズ銀行」の預金ってどうやったら下ろせるんですかね。切り替えるコメントを残すTweetどうもみむらです。本格的に切り替えが始まりました。切り替えが必要になってきました。変換してしまおうかと。管理出来るようになればよいのであれば下記の2パターンの方法で変換可能です。パターン1の方が色んなサイトでも紹介されており出てくる設定を見ても綺麗な設定に思えるので、推奨なんだと思います。時間があるときは1で変換して、さらに手入れをするのが良いと思います。結果を用いて変換をします。保存されていると思いますのでこのステップはスキップ可能です。コマンド等で取り出しておきます。コマンドに変換して流し込みます。保存する下記のコマンドを実行して保存します。/etc/sysconfig/nftables.conf以上で変換が完了します。この方法で変換した場合、下記のような設定が流し込まれます。処理が上手く変換できないようで失敗することがありました。次に紹介する方法では、リスクが少しあるのですが上手く変換できましたのでご紹介します。形式で取り出す方法です。互換レイヤを使っている場合に限られます。付いているかどうかで判断できます。コマンドを利用して、既存の設定を読み込ませます。コマンドを使って設定を読み出して保存する下記のコマンドを実行して保存します。/etc/sysconfig/nftables.conf以上で変換が完了します。この方法で変換した場合、下記のような設定が流し込まれます。使った場合のほうが綺麗なコードが生成されるようですので基本的にはこのコマンドを使用して変換した方が良さそうです。コマンドを用いる事で変換結果を得られます。使えた話コメントを残すTweet自分自身が相当に迷ったのでメモ。結論としては上記の通り。刺していますが、普通に認識されて使えています。Write-upコメントを残すTweetどうもみむらです。活動を再開したくなり、リハビリがてらに参加してみました。3人だけでひっそりと参加していたのですが、結果としてはかなり上々かも。on!}ファイルを開くと出てくる。作られたトレーサを経由して問題のファイルを覗く問題。プログラムは純粋に使うと2文字までしか表示されないようになっています。その処理を利用して、任意の文字の位置を読んでみます。値が取得できていることが分かる。あとは上記を繰り返して、文字列を読んでいくとフラグが得られます。syscalls}実行すると下記のように、シェルコードを入れるように指示されます。ここに、文字列長とシェルコードを入力するとそれが実行されます。シェルコードで実現する必要があることは、プログラムのどこかに読み込まれている「フラグ」のデータを探し出してそれを読み込んで表示すること。10秒間のタイムアウト値が設定されているため、それを越えての探索は出来ません。空間のメモリを全部探すのは現実的ではないのでスタック中から何か出ていないか探します。下記のようなアセンブラを書いて、それをシェルコードとして与えます。retどうやら白く塗ってある場所に同じ表示が出ているのでこれが使えそう。大会期間中は、メモリ位置を考慮するのが面倒くさくなったので別の方法を使いました。指し示すメモリアドレスに読み込む処理が入っています。入っているメモリを指し示し続けてる。(今回はソースコードで提供されたので、コンパイラによっては別のレジスタが使われる場合もある)というわけで下記のようなアセンブラを書いてみました。レジスタを参照するだけで解けました・・。うーんこれで良いのだろうか・・。下記のようなコードを書くのが正しいのかもしれませんね・・?余談(メモリ全探索。間に合わないけど・・。やりたいかもしれません。家にメンバーを読んでやってたのですが、あのワイワイした感じで解くのも面白かったし。ビルドして使おう2件の返信Tweetどうも、みむらです。これは今すぐ会社用PCとかにも入れておこうかと思いました。ビルドしていくつかの機能を有効にしてみた・・!!背景の透過色とか、パディングとかフォントとか色々とガシガシいじれる。使いやすそうな子のようです。マイクロソフト社からちゃんとストア経由で今後出てくると思いますが常に最新のものを触りたい!という人向けに、ビルド方法のメモになります。執筆時点(2019年5月8日)では、下記のものを用意する必要があります。プラットフォームツール」を有効にする必要があります。実施してソースコードを取得します。依存関係にあるコードもダウンロードします。「アプリパッケージの作成」と選択します。なっていることを確認してパッケージを作成します。注意ビルド中、もの凄くメモリを使います。下手をすると下記のようなエラーが出てコンパイルエラーになることもあります。同時コンパイル数を1にすることで改善できる場合があります。実行にて「平行してビルドするプロジェクトの最大数」を1にします。あとはウィザードに従って進めればインストール完了となります。このファイルを常用するコンピュータに持って行き、インストールをすることで他のコンピュータでも利用することが可能になります。動作しないときは:開発者モードになっているかを確認しましょう。4.使う早速スタートに登録されましたのでバンバン使っていきましょう。初回起動時はこんな感じの無機質なターミナルが表示されます。下図のようにいい感じにタブと設定メニューが登場します。あればドキュメントの整形機能があります)して眺めます。タブを画面に常時表示するかどうか。書き換えておいた方が無難です。タイトルバーにアクティブなタブのタイトルを表示させるかどうか。タブをタイトルバー部分に表示するかどうか。(1に近いほど無透過)を設定すると良いと思います。参考までに、私の設定ファイルも置いておきます。参考までにどうぞ・・!https://gist.github.com/mimura1133/4e65fdbf8fd686d3a3691bd9b43678ac発表されてすぐさま使ってみて、かなり使い勝手がよさそうでしたので私としては早く標準のコマンドプロンプトの代わりになって欲しいなと思うそんな今日この頃です。アプリケーションを全部このタブに纏めておいたら凄く使いやすそうな感じがする。専用)もおいておきます。してもビルドに失敗してしまうかたがいれば、自己責任にてお試しください。過去の投稿どんなひと。繋いだりして、これが出来たら面白いかもなんて考えたり。技術で周りを明るく楽しくできたかで一番になりたいよね。日々そんなことを考えながら気分は常に布団でごろごろ。