技術ネタを中心に、できるだけ自分から発信していくためのブログ。 いつか誰かの役に立ちますように。

防衛省サイバーコンテスト2023 (防衛省CTF) Writeup

先日 2023/8/6(日) に開催された、防衛省サイバーコンテスト2023に参加していた。 www.mod.go.jp

防衛省サイバーコンテスト2023ポスター

スコア

スコアグラフ

結果は260/560, 42位であった。あまり経験がないPWNとNWが、20点問題どころか10点問題も外しており、壊滅的であった。精進せねば…。

簡単なものしか解けていないが、どう考えたかを残しておく。

なお、謎のこだわりでヒントなしだったので、ちゃんとヒント見ておけばよかったと後悔している。

続きを読む

さよなら、思い出のTwitter

かつてツイ廃だった身として、せっかくなのでお気持ち表明しておく。


Twitterサードパーティアプリの使用を禁止するとのニュースがあった。2012年ごろに同様の問題が発生したときは、猛反発の結果撤回されたが、今回はそうはならないだろう。
当時は東日本大震災後でTwitterがインフラとして活用され始めた頃だったと思うが、まだまだギーク寄りのコミュニティという性格が強かったように思う。技術やサービスを活用して、Twitterを中心にライフハックする人が多かったと感じる。

いわゆるツイ廃は、一日中Tweenやtwicca等を通じて張り付いて、常に自分の生活をさらけ出し、コミュニケーションを楽しむ、というような流れだった。
そのような密なコミュニケーションの楽しみ方をする上で、Webの公式ページやタイムラインを使うのではあまりに遅く不便で、かつ見づらいものだった。だからAPIが活用され、多種多様なクライアントが開発され、活用され続けてきた。

それが段々とインフラ化・一般コミュニティ化が進み、政治や主張を行う公共の場となっていくにつれ、ツイ廃のような使い方をする人は相対的にも絶対的にも減っていった。
その中で起きたのが2012年のサードパーティ排除であり、最終的に2018年のUserStream APIの廃止/新APIへの移行によって、そのような使い方はほぼ不可能となってしまった。

今回のサードパーティ排除は、かつてのギーク的な、ライフハック的な使い方を完全に否定し、プラットフォームとして一般コミュニティに対してマネタイズする方向へ進むことを明確にしたと感じた。
買ったイーロン的にはそうするのが自然だろうが、技術の遊び場としてのTwitterは完全に終わりを告げた。
今後は、そういう人たちはどこで遊ぶのだろう。代替となる新しいコミュニティサービスが10年も出てこない以上、既存のSNSではTwitterが担っていた遊び場の役割は代替できないのだろう。次はP2Pなのかな。IRCみたいな形になるのかな。

ちなみに、Web3だNFTだなどと、お金の匂いが強すぎる物はこのような場としては成り立たないと思う。
新しい流行りは、そういうものから無縁な「遊び」から生まれてくると、個人的には信じている。
今の時代だと、遊びが生まれた瞬間にお金が絡んですぐに残念なことになってしまっている気がする。


自分はもう殆どのSNSからは距離をおいているが、かつての遊び場だったTwitterがこうなるとは思っていなかった。
しかしこれも時代なんだろう。仕方ない。
思い出は思い出として、受け入れるしかない。

さようなら、思い出のTwitter

Todo管理で何をすべきか

かなり放置していたが、アウトプットの場として再度活用すべく、ちょっと書いてみる。主に自分のため。

Todo管理の課題

Todo管理には多くのノウハウがあるが、何を使ってどのように管理するのが良いのか?

自分なりの結論

  • 手段はアナログ・デジタル、どちらでも良い。自分の場面でやりやすいものを使う。
    • ただしどちらか一方だけで運用すること。
  • Todoはできる限り書き出して一元化すること。
  • 常にTodoを書き出して整理することを意識すること。
  • 装飾はしないこと。やるにしても、記号2~3種に留めること。
  • 週1回~2週に1回、棚卸をして、できる見込みがない物は別のリスト(Wishリストなど)に移すか、捨てること。
続きを読む

Macbook Air 2011 Mid に Windows 10 (x64) を入れる

サブPCが欲しくなってきていたのですが、ちょっと予算不足で購入を断念。
しかし、過去にMacbook Air 2011を購入してあまり使わないまま放置していたことを思い出し、せっかくならとWindows 10を入れてみることにしました。
macOS側がHigh Sierraまでしか対応せず、セキュリティ的によろしくないという面も大きいです。

やること

  • Boot CampMacbook Air 2011 Mid に Windows 10 x64 (October 2018 Update) を入れる
  • MBA 2011 Midは公式にはWindows 10 非対応であるため、インストールにも一工夫が必要

参考

noname.work

seecom-s.com

必要なもの

  • Macbook Air 2011 Mid 本体
    • 中古MBAにWin10入れるなら、MBA 2012以降は公式にWin10対応している(UEFIインストールも可能)ので、今から買うならそちらがおすすめ
  • USBメモリ 8GB x 2本
  • Windows 8.1 x64 iso
  • Windows 10 x64 iso
    • 有効なライセンスが必要
    • Windows以外のOSで以下にアクセスするとisoがダウンロードできる
      • Edgeの開発ツール(F12)から、閲覧モードをLumiaなどに変更するのが手っ取り早い www.microsoft.com
  • USBにisoをブート展開するフリーソフト
  • Boot Camp ドライバー
    • Mid 2011の場合、Boot Camp 5.1.5621をダウンロードする (Windows 8.1用だが、問題なくインストール可能)
    • モデルによっては以下は使えないので、ググって探す support.apple.com

事前にやっておくと幸せなこと

  • ストレージが128GBしかないと辛いので、以下を準備して、SSDの交換・Time Machineによる復元・High Sierraアップデートを実施しておく
    • M.2 SSD (現時点では500GB~がおすすめ)
    • M.2→MBA SSDの変換アダプター
    • Time Machine用のHDD
    • 星型(5角)ドライバー
    • 星型(6角)ドライバー
    • (必要なら)取り外したSSDをUSB化する
    • (必要なら)バッテリー交換

アネックス(ANEX) 特殊精密ドライバー 5溝 1.2 No.3470-G

アネックス(ANEX) 特殊精密ドライバー 5溝 1.2 No.3470-G

作業前の注意

  • 事前にパーティションを切って、直接USBインストールする方法(UEFIインストール)では、不具合のためまともに使用できない。はじめは一見ちゃんと動いているように見えるが、Intel Display Driverが自動的にWindows Updateでインストールされた途端にブラックアウトする。先人と同じ現象がおきた。

seecom-s.com

  • Boot Campアシスタントがパーティションを区切ってくれるが、インストール前にはストレージにAFPSフォーマットのmacOS領域だけが存在する必要がある。
  • Windows 8.1のisoがないと、Boot Campアシスタントツールが作業を進めさせてくれない。かつ、WindowsでUSBに予めisoを展開しても、「このUSBじゃダメ」と怒られてしまう。おとなしくBoot CampアシスタントツールにWindows 8.1のisoを渡して、USBに展開させるのがよい。展開したあとはWin8.1のUSBは使わないので、再フォーマットしてOK。

作業手順

  • WindowsにUSBを刺し、Rufusを用い、Windows 10 isoをUSBに展開する
  • macOSに別のUSBを刺し、Finder → ユーティリティツール → Boot Camp アシスタント を起動
  • 3つチェックを入れる画面が出てきたら、全てにチェックをして先へ進む
  • Windows 8.1 のisoイメージを選択し、USBにisoの内容を展開する
  • 書き込みが終わったら、macの再起動前にWin8.1のUSBを外し、Win10のUSBを接続する
  • キーに何も触らず、MBAの電源をオン
  • 指示に従いWindows 10をインストール
    • インストール先の選択時には、BOOTCAMPと表示されたパーティションを使用すること
    • BOOTCAMPパーティションは「新規」でフォーマットして問題なし (NTFSでフォーマットされる)
  • インストールが完了したら、Boot CampのドライバzipをWin10上で展開する
  • フォルダ内、Realtekのドライバを一旦別のフォルダに移したあと、フォルダ内 setup.exe を起動
    • Boot Camp用ドライバがインストールされる
    • Realtekドライバはあとから個別でインストールする (こうしないとフリーズすることがあるらしい)
  • コントロールパネル → デバイスマネージャー を開き、ドライバが未ロードになっていないか確認
    • BootCampドライバなしだと、BluetoothFaceTimeカメラが認識しないことが多い
    • ドライバを入れれば、全てのデバイスが認識できるはず

使いやすくするために

入れてみた感想

  • 思った以上にサクサク動く。SSDは偉大。素の状態はかなり軽い。
  • ディスプレイ照度が少し怪しい。
  • Wifi802.11nまでと少し遅いが、許容範囲。
  • 動画を再生するような重い処理をするとあっという間にファンが回る。これは仕方ない…。
  • BIOSモードのためIntel VTが有効にならず、Dockerなどで遊べない。とはいってもスペック低すぎるのでやらなくて正解。
  • 外出先でOffice文書をいじるくらいなら全然余裕っぽいので、しばらくはこれをサブPCとして外出時に持ち歩こうと思います。

Docker on Windows 10 (1) Dockerインストール

 以下の記事を参考に、Windows 10 x64にDockerをインストールして、ちょっと遊んでみました。

www.atmarkit.co.jp

qiita.com

なぜDocker?

  • Webアプリケーション(具体的にはAirsonic)をちょっと試したいときに、VPSNASやを用意するのは大変
  • CygwinWindows Subsystem for Linux (WSL) は、インストール後の環境メンテが大変
  • 前からDockerによる仮想化に興味があったが、触れていなかった

本記事でやること

  • Docker for Windows Community Edition (Docker CE) のインストール
  • Kitematic のインストール

PCスペック

設定

  • BIOSから、Hyper-Vを有効化
  • コントロールパネル → プログラムと機能 → Windowsの機能の有効化または無効化
    • Hyper-V全てにチェックを入れる
  • PC再起動
  • 以下URLから、Docker for Windows Community Edition (Docker CE) をダウンロード
    • ユーザー登録を求められるので、適当なID/Pass (以降Docker ID/Pass) を登録しておく hub.docker.com
  • 指示に従ってインストール
  • インストール後に右下に出てくるポップアップにはDocker ID/Passを入力しておく

動作テスト

> docker -v
Docker version 18.09.2, build 6247962

> docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
1b930d010525: Already exists ※一旦イメージを削除して再度runしたため
Digest: sha256:92695bc579f31df7a63da6922075d0666e565ceccad16b59c3374d2cf4e8e50e
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/
  • 上記 docker run が動けば、以下3つが確認されたことになる。
    • dockerが正常にインストールされたこと
    • dockerがインターネットに接続でき、イメージをpullできること
    • docker上でコンテナを作成し、コンテナが動作できること

Kitematicのインストール

  • コンテナをGUIで操作できるツール、コマンドプロンプトに慣れていないなら入れておきたい

  • タスクトレイのDockerアイコンを右クリック → Kitematic を選択すると、ダウンロードするか確認するダイアログが出る

  • URL先に飛び、Kitematicをダウンロード
  • Dockerのインストール先パスの下に Kitematic フォルダを作り、その直下にKitematic.exeなどが配置されるように展開
    • C:\Program Files\Docker\Kitematic に置く
    • C:\Program Files\Docker\Docker\Kitematic ではない
  • タスクトレイのDockerアイコンを右クリック → Kitematicを選択
  • Docker ID/Passを入力

参考

  • 会社で認証プロキシみたいなプロキシを通るときは、タスクアイコン右クリック → Settings → Proxiesに、以下の記法でID/Passを指定すると上手く通ってpull/pushできる場合がある
    • パスワードべた書きなので要注意
http://[ID]:[Pass]@[Domain]:[port]

例
http://hogehoge:hugahuga (@) example.com:8080
※ 実際にはスペースや[]()無しで書くこと

ブログ開設にあたり

本ブログは、sboxが自分で試したりチャレンジしたりしたPC技術ネタを発信するためのブログです。

私の環境で動くよう試行錯誤した過程や結果を記載していきたいと思います。

そのため、私がググって手に入れてきた情報をまとめ直して形にするだけになってしまうようなものがほとんどになってしまうかもしれません。よろしくお願いします。