投稿者「krote」のアーカイブ

MCPにおけるセキュリティリスク整理

Claude codeなどLLMを用いた開発を爆速で加速させそうなMCPですが、あくまでAIが使うツールとしてのやり取りを標準化しようとしているだけで、現時点ではセキュリティ的な観点からは、ほぼ野ざらしなようでここ数ヶ月でいろいろな記事が出ています

MCP Servers: The New Security Nightmare
https://equixly.com/blog/2025/03/29/mcp-server-new-security-nightmare

MCP Security Notification: Tool Poisoning Attacks
https://invariantlabs.ai/blog/mcp-security-notification-tool-poisoning-attacks

コードに対する著作権という問題も別途ありますが、これらで取り上げられているMCPの脆弱性は気をつけるべきものではあるものの、「そんな野良MCP使わないでしょ」と思わなくもない。

MCPが必要となるシーンでは、基本的に企業ユースであれば何かしらの公式ベンダーが出しているものを利用することになるのでは、と思っています。
もちろん、個人利用で面白そうな仕組みをGithubからホイホイとダウンロードしてきたらその限りではありませんが。。。

根本的には、OSSをはじめとしたツールに内在したセキュリティリスクに対してどのように対応していくのか?という、これまでOSS利用でも言われてきた内容の延長でしかないとは思います。

最も、OSSとして公開されているソースと、実際にインスタンスとして提供されているMCPサーバーが同じである保証はどこにもないので、やはり自前でMCP Server立てる以外は注意が必要なんだろう。

とりあえず、現時点では雑にそう考えることにした。

GWが幕を開けました

今年のGWはあまり休日の並びがよくなく、長期の休みというわけには行かないですが、この土日は館山のIT健保施設でのんびりしてきました

のんびりしたと言っても、土曜日は小学校、中学校と学校行事があったので終わらせた午後から移動という強行軍。

宿についたのは17時過ぎという状態で、ほぼご飯を食べに行ったような形になりました。
でも、健保施設はご飯が美味しいので、それだけでも行った価値があったかな、と家族みんな大満足です。

GWはというと、明日の28日はお休みをいただいているもののそれ以外はカレンダー通り。
明日は長男は普通に学校ですし、妻も仕事なのでのんびりランニングでもして過ごそうかと思っています。

怪我だけには気をつけたいですね。

Software Design 5月号

Software Design の5月号が発売されたので読んでいます

ソフトウェアデザイン 2025年5月号

今月号の特集はオブザーバビリティとクラス設計に関して。

オブザーバビリティに関しては、基本的にOpenTelemetryの話が中心となっていて、何年か前にも特集があったような気がする。

今年の1月にもCNCFでOvservability2.0に関しての記事もあがっていたし、より重要性のます分野でもあると思う。

What is observability 2.0?
https://www.cncf.io/blog/2025/01/27/what-is-observability-2-0/

一方で、ここまでのObservability環境を構築したことは正直まだない。
自社サービスでも運営していれば話は別なんだろうが、運用の絡まない受託だったり、そのレベルで受けたりするシステムだと、せいぜいモニタリングのレベル感。

以前、前職でプロダクト開発を行っていた際に似たようなことを検討したことはあり、あれを続けていたら間違いなくこの分野に対しての知見は溜まっていただろうなとは思うのだけど、それはそれと考えるしかない。

ただ、大げさかもしれないが手軽に組むことができるのであれば仕込んでおくに越したことはないのは間違いない話なので、開発者としては実装としてどうあるべきかをしっかりとしておかないとな、と改めて思うわけです。

DevOps的な感じですかね。

一方で、AI時代の幕が上がってしまっている現代においては、Observabilityは何もシステムに向けられるだけでなく、日常の業務そのものにも向けられるべきであり、そこから収集された様々なデータを、個別のモニタリングではなくObservabilityへと昇華する必要性はつねづね感じるところ。

もはや対象はシステムではなく人。
そしてその知見をAIへのインプットとして使うことでどういうアウトプットを出せるか?が観点としては面白いと考えている。

うん、何か出来ないかな。

落選!残念

というわけで、、、

見事に玉砕しました。

いや、正直なところ言うと当選していたらどうしようという気持ちもあったので、それほど悔しくはありません。

それほどやりたいタイトルがあるわけでも。。。というか、そもそもSwitchは子どもたちがやっているだけなんですよね。

ただ、どーせいずれ欲しいって言われるのは目に見えているんだし、それだったら早いほうがいいよね?という気もしないでも。

2次抽選に自動的に回されるわけですが、静観ですね

芽はまだか

メロンとスイカの苗を植えていた畝にビニールトンネルを設置しました。

ビニールトンネルみたいなものをつけてしまうと、水やりは大丈夫なんだろうか?と思ってしまうのですが、調べてみる限りはトンネル内が高温多湿になるために基本的には水やりは不要なようです。
びっくりですね。

さて、3月末に種まきをした白きゅうりと白茄子ですが、現時点で全く芽が出ません。
パッケージを見る限り、発芽適温は25度近辺なので、そろそろ芽が出てもいい頃とは思うのですが、もうしばらく様子を見て出ないようであれば、再チャレンジです。

実は、おそらく誤操作だとは思うのですが2パッケージ購入してしまって、未開封の種が手元にあるんですよね。。。

様子を見つつ、取り組んでいきたいと思います

頑張るを楽しむ

最近聞き始めたPodcastに「ひまじんプログラマーの週末エンジニアリングレッスン」があり、少し前のエピソードで「頑張る人は楽しむ人に勝てない?頑張るを楽しむに変換する技術」と言うものがありました

#347 頑張る人は楽しむ人に勝てない?頑張るを楽しむに変換する技術
https://podcasts.apple.com/jp/podcast/347-%E9%A0%91%E5%BC%B5%E3%82%8B%E4%BA%BA%E3%81%AF%E6%A5%BD%E3%81%97%E3%82%80%E4%BA%BA%E3%81%AB%E5%8B%9D%E3%81%A6%E3%81%AA%E3%81%84-%E9%A0%91%E5%BC%B5%E3%82%8B%E3%82%92%E6%A5%BD%E3%81%97%E3%82%80%E3%81%AB%E5%A4%89%E6%8F%9B%E3%81%99%E3%82%8B%E6%8A%80%E8%A1%93/id1601084785?i=1000703794373

元ネタとしては、KDDIアジャイル開発センターに勤める方のスライドのよう

スライドが使われた相手としては、エピソードでは新卒の内定者向けに公演された内容とのことでした。

言っている内容はわかるし、共感はするんだけど内定者に対してこの内容ってどこまで刺さるんだろうな?というのは少し気になった。
KDDIアジャイル開発センターさんが名前的にも人気のありそうで大手だろうしいい人が集まるんだろうな、って思うけれど、このあたり、特にマインドセットの話が実感を伴ってわかるのは個人的には社会人に出てからなんじゃないかな?って思う。

もちろん、「じゃーお前は内定者向けに何話すんだよ?どうせ会社紹介で終わるんだろ」と言われるとぐぬぬとしか言えないような気もする。

T字型人材のところで出てくるスキルセットの内容というのもなかなか見て面白いな、と思った。
ここに出てくるスキルセットに何が並ぶのか?は結構会社によって違いそうで、それって同列に並べて考えるものだっけ?みたいなことを考え出すと、それ自体に意味がないのに無駄に時間を使って考えてしまいそう。

こういった内容を会社名を出してSpeakerdeckとかに公開できるというのは、そういう文化を醸成した人たちの功績だと思うし、同じように何かしら貢献できるような、会社内部事情を排除した形の抽象性を持ち、かつ意味があるような発信ができると面白いのかもしれないと、少しモヤモヤしながら話を聞きました。

あ、Podcast面白かったです。

風邪引いてると寝ていても休まらない

日曜、月曜と38度熱が続いたのですがようやく熱が下がりました。
なんですかね。歳ですかね。
38度超える熱が連日になるってのは久しぶりな気がします。

早く回復するには寝ることだろうと、基本的には寝ていたのですが、、、Garminで見返してみると

緑枠の部分。
この時間寝ているはずなんですけれど”休息”判定になっていないんですよね。

翌日のタイムラインを見てみても、昼間になってようやく休息判定がされるようになってきていますが、朝まではストレスレベルが高い状態です。

BodyBatteryが全てとは言わないですが、なんというか、熱があって寝ているときは、風邪と戦っているのであって休んでいるのではないということがわかったような気がします。

お腹の張り?

今日になって熱はなくなっているのですが、なんというかお腹の調子が変です。
痛いとかそういうのではなく、お腹が空かないような、妙に腹に物が溜まっているような。

どうやらこれは、風邪薬のせいで胃の粘膜が弱くなっていることに起因している可能性があるとのこと。

考えてみると、私自身健康診断で毎回、胃潰瘍を指摘されている身ですので、そういう症状が出てしまってもおかしくはないのかもしれない。

予防的にもうちょっと風邪薬飲んでおこうかな?と思いましたが、やめておくことにしました。

このあたりのさじ加減難しいです

何にせよ、徐々に回復しつつあり、明日からはランニング出来たらいいなー、、、と思っていたら明日は雨の予報。
うーん、前回雨の日に走って足首を痛めたような気がしているので悩みます。

風邪も足も本調子ではないので、静養ですかね。。。

風邪引いてしまった

昨日、復調の兆しなんて書いたものの、見事に風邪引いてしまいました。。。

娘が風邪を引いているので、そこから感染してしまったのでしょう。
熱も38度を超え、久しぶりの病気って感じです。

寒い、寒いー

しっかりと寝たはずなんですけどね。

復調の兆し

足首の様子を見ながらですが、少しずつ走り始めています

なんというか、トレーニングレディネスは絶望的な数値を叩き出しており、トレーニグステータスは思わず

「うわぁ、きれいだなぁ」

という感じになっていますが、直近はプロダクティブになりました。
すごい久しぶりです。

4月は、おそらくアキレス腱周囲炎と思われる足首の痛みが取れるまで走るのをやめていたので、月間走行距離は200行くかいかないか位になりそう。
しょうがないですね。

しばらくは、高強度のトレーニングは控えて、ジョギング中心のメニューにしようと考えています。

HRVステータス

トレーニングステータスはいい方向に向かっているのですが、レディネスが一向に回復しないのは、HRVステータスがベースラインを下回り続けているのが原因ではないかと思います。

うーん、見事にベースラインに入ってないですね。。。

実際のところ、睡眠時間はそれほど取れておらず、頭が重いことが多いのです。
ただ睡眠の質を上げるというのはなかなか意識してできることでもないような。。。いや、でも寝る前の行動を見直してみるのは一つかも。。。うーん。

酒もタバコもやらないし、運動もしているし肥満でもないのに健康診断は毎回引っかかるという健康状態。
一番の問題はやはり睡眠なのかもしれないな、と思い始めてきました。

Whisper.cppがビルドできない

音声の文字起こしは色々あるとは思いますが、ローカルで実行しようと考えた場合に選択肢として上がるのはWhisper.cppではないでしょうか

https://github.com/ggml-org/whisper.cpp

環境としては、様々な環境で動作可能な形なので手元のWindowsで実行しようとしているのですがうまくいきません・・・。

Quick start にある下記コマンドがエラーになってしまうんですよね。

cmake -B build
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.10 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value.  Or, use the <min>...<max> syntax
  to tell CMake that the project requires at least <min> but has been updated
  to work with policies introduced by <max> or earlier.


-- The C compiler identification is MSVC 19.43.34810.0
-- The CXX compiler identification is MSVC 19.43.34810.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - failed
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.43.34808/bin/Hostx64/x64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.43.34808/bin/Hostx64/x64/cl.exe - broken
CMake Error at C:/Program Files/CMake/share/cmake-4.0/Modules/CMakeTestCCompiler.cmake:67 (message):
  The C compiler

    "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.43.34808/bin/Hostx64/x64/cl.exe"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: 'C:/Dev/whisper.cpp/build/CMakeFiles/CMakeScratch/TryCompile-eelwlp'

    Run Build Command(s): "C:/Program Files/CMake/bin/cmake.exe" -E env VERBOSE=1 nmake -f Makefile /nologo cmTC_a73a9\fast
        "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.43.34808\bin\Hostx64\x64\nmake.exe"  -f CMakeFiles\cmTC_a73a9.dir\build.make /nologo -L                  CMakeFiles\cmTC_a73a9.dir\build
    Building C object CMakeFiles/cmTC_a73a9.dir/testCCompiler.c.obj
        "C:\Program Files\CMake\bin\cmake.exe" -E cmake_cl_compile_depends --dep-file=CMakeFiles\cmTC_a73a9.dir\testCCompiler.c.obj.d --working-dir=C:\Dev\whisper.cpp\build\CMakeFiles\CMakeScratch\TryCompile-eelwlp --filter-prefix="メモ: インクルード ファイル:  " -- C:\PROGRA~2\MICROS~3\2022\BUILDT~1\VC\Tools\MSVC\1443~1.348\bin\Hostx64\x64\cl.exe @C:\Users\krote\AppData\Local\Temp\nmDA0F.tmp
    testCCompiler.c
    Linking C executable cmTC_a73a9.exe
        "C:\Program Files\CMake\bin\cmake.exe" -E vs_link_exe --msvc-ver=1943 --intdir=CMakeFiles\cmTC_a73a9.dir --rc=rc --mt=CMAKE_MT-NOTFOUND --manifests -- C:\PROGRA~2\MICROS~3\2022\BUILDT~1\VC\Tools\MSVC\1443~1.348\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_a73a9.dir\objects1.rsp @C:\Users\krote\AppData\Local\Temp\nmDA8D.tmp
    Visual Studio Incremental Link with embedded manifests
    Create CMakeFiles\cmTC_a73a9.dir/manifest.rc
    Create empty: CMakeFiles\cmTC_a73a9.dir/embed.manifest
    RC Pass 1:
    rc /fo CMakeFiles\cmTC_a73a9.dir/manifest.res CMakeFiles\cmTC_a73a9.dir/manifest.rc
    RC Pass 1: command "rc /fo CMakeFiles\cmTC_a73a9.dir/manifest.res CMakeFiles\cmTC_a73a9.dir/manifest.rc" failed (exit code 0) with the following output:
    no such file or directoryNMAKE : fatal error U1077: '"C:\Program Files\CMake\bin\cmake.exe" -E vs_link_exe --msvc-ver=1943 --intdir=CMakeFiles\cmTC_a73a9.dir --rc=rc --mt=CMAKE_MT-NOTFOUND --manifests -- C:\PROGRA~2\MICROS~3\2022\BUILDT~1\VC\Tools\MSVC\1443~1.348\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_a73a9.dir\objects1.rsp @C:\Users\krote\AppData\Local\Temp\nmDA8D.tmp' : リターン コード '0xffffffff'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.43.34808\bin\Hostx64\x64\nmake.exe"  -f CMakeFiles\cmTC_a73a9.dir\build.make /nologo -L                  CMakeFiles\cmTC_a73a9.dir\build' : リターン コード '0x2'
    Stop.

エラーメッセージからは”C:\Program Files\CMake\bin\cmake.exe”が存在しないようにも見えますが、ファイルとしてはいるんですよね。

うーん、なんだかんだ言って、プログラミングよりもこういう環境構築のほうが時間かかるし、精神力をごっそり持っていかれますね。。