以下の内容はhttps://kusshi.hatenablog.jp/より取得しました。


2025年の振り返り

@kusshi94 です。一昨年、昨年に続く恒例行事として、2025年の仕事や生活などを振り返ります。

2025年にやっていたこと

大学院生期(1〜3月)

修士学生として、横国吉岡研で最後の3ヶ月を過ごしました。

研究活動

修論は2024年のうちにほぼできていたのですが、全然関係なく修了間際まで色々やっていました。具体的には、国際会議への投稿、共著論文の執筆、引き継ぎのための作業、研究室内LTの主催などなど。

吉岡研が2025年度に始める研究テーマ候補も、この時期に議論しました。個人的には、研究の醍醐味の一つである問題設定を集中的に鍛える良い機会になりました。

最近のセキュリティ系研究会のタイムテーブルを見ると、このとき考えたアイデアがもう成果になっているようです。優秀なメンバーに取り組んでいただけてありがたい限りです。

学会出張

研究発表のため、SCIS2025@小倉、NDSS2025@サンディエゴ、ICSS2025@沖縄に参加しました。Usable Security, Offensive Security の分野で複数の研究に関わらせていただき、4件の成果が世に出ました。各論文の 1st author のみなさん、本当にお疲れさまでした。

会議前後の時間には、観光したりおいしいものを食べたりして、楽しく過ごさせていただきました。サンディエゴにて、途中で体調を崩してしまったことが唯一の心残りです。色々と助けてくれた研究室メンバーに感謝。

ちなみに一番美味しかったのは小倉の水炊きです。

小倉で食べた水炊きと焼き鳥

自動車運転免許の取得

今年一番苦労した!

自動車の運転免許を取得しました。 3月の最終週、卒業検定に無事(?)合格しました。最終学歴が「自動車学校 中退」になることはギリギリで回避。

通い始めたのが24年の10月だったので、普通に半年かかっています。誇張抜きで、大学院修了より自動車学校卒業のほうが大変でした。研究が忙しかったことや、自動車学校が混雑していたこともありましたが、とにかく実技が苦手で何度も躓くことになりました。

大学入学以来、苦手なことはやらなくても済むことが多かったので、こういう経験も大事だと感じさせられました。とはいえ、もう数日でも後ろにずれ込んでいたら仕事をしながら教習を受ける羽目になっていたので、卒業までは焦りで辛かったです。もうあんな思いはしたくないですね…

社会人期(4月〜)

就職

インターンでお世話になった自社サービス系のIT企業に就職しました。

ここではあまり細かいことは書きませんが、Terraform や AWS をメインに、サーバ・インフラ運用関連の業務に従事しています。所属部署の特性もあって、フットワーク軽く色々なお仕事をさせていただいています。

zenn.dev

現在の課題ですが、Terraform も AWS も以前から触れていた技術ではあるので、そろそろ使える技術を広げていきたい気持ちがあります。特に Google Cloud と k8s はもう少し知識をつけないと困る。

それから、チームへの貢献の仕方も変えていきたいタイミングです。

若手にも仕事を任せてくれる社風なので、とりあえず引き受けて分からないことを先輩や上司に聞きまくって仕事を進めていました。会社員としての仕事はあくまでも会社のものであり、「なるべくまわりに頼らなくてもいいようになっていきたい」とはあまり考えていません。属人性を減らすためにも、多少進行が遅くなってもコミュニケーションを取りながら働いたほうがいい、くらいの心持ちでやっています。

一方で、周囲のメンバーに頼りにされ、分からないことを聞かれる側になっていく必要はあると考えています。自分の領域を作って業務をリードし、他のメンバーにこれまでとは逆方向の協力を仰げるようになることが現在の目標です。

一人暮らし

就職を期に、会社の近くで一人暮らしを始めました。

家事は面倒ですが、慣れてくるとこなせることが増えていって楽しいです。物事の全般的な遂行能力が向上しているような気がします。

また、冬に一人鍋をすることに謎のあこがれを抱いていたので、毎日一人鍋ができて夢が叶っています。(?)

副業

11月から副業を始めました。内容については後述します。

2024年の振り返りを踏まえて

2024年の振り返り記事には、次のような趣旨のことを書きました。

  • 学生のうちにしかできない研究などに専念し、仕事に直結しそうなことはあまりしなかった
  • 研究者ではなくITエンジニアになるのに、研究優先でよかったのかはわからない
  • 2024年の抱負が実現できていたといえるのかどうかは、2025年の成果次第

ここでこの問題への答え合わせをします。

kusshi.hatenablog.jp

本業において:意外と役に立ったかも?

本業で困ることはなかったというのが、4月から働いてみての結果になります。

単に杞憂だったというのもありますが、他の要素を挙げるなら、業務では地道な作業に労力を費やすことが多かったこともあるかもしれません。モダンでイケイケなカッコいい業務(?)というのはそれほど多くなく、新しい技術を導入するにしても大抵は影響範囲の調査から始まります。セキュリティ調査研究は泥臭い作業の集合でしたが、システムの運用業務もまた、地味な部分が多いのですよね。

とはいえ、私の意向や能力に応じて仕事を選ばせていただいている側面はあり、好きで地道な作業をやっているところもないわけではありません。

その意味では、学生のうちにもう少し仕事に繋がりそうなことをやっていたら幅が広がっていた可能性は大いにあります。

副業において:無駄ではなかった、それどころか

では、やっぱり学生のうちに内定者インターンをしていたほうが活動が広がっていたかと言うと、そうでもないと断言できます。というのも、先述の副業というのが、出身研究室の研究活動のサポート業だからです(!)

夏頃に研究室側から声をかけていただき、微力ながら研究開発に関わらせていただいています。昨年度研究にコミットしていなければ、今やっているタスクもできなかったかもしれないし、そもそもお声がけいただけなかった可能性が高いです。

というわけで、「研究者ではなくITエンジニアになるのに…」と思っていましたが、結局「研究者のようなこともやることになったのでOK」というのが2024年への答えでした。

2026年の抱負

前回までの振り返り記事ではキャリアに関わりそうな抱負を設定してきましたが、2026年の抱負は「健康維持」です。

実家を出て自分の生活の全責任を取るようになり、仕事を含めた生活の全ては健康の上に成り立っていることを強く実感するようになりました。ここに書いたこと以外にも、なんだかんだ趣味や遊びでも忙しく過ごしており、おそらく持続可能でない生活を送っているというのが正直なところです。

現在はリモートワーク中心で、土日も副業で引きこもっていたりするので、特に運動不足が深刻です。ジムに通うか、近所を走るかくらいは習慣にしていく所存です。

2024年の振り返り:2023年の振り返りを受けて

情報系修士2年の @kusshi94 です。2025年の4月から新卒でエンジニアになります。

2023年の大晦日に、一年の振り返り記事を投稿しました。

kusshi.hatenablog.jp

この記事では、2023年末時点での課題として「キャパオーバー気味で、技術や知識を時間をかけて掘り下げられていない」ということを、2024年の抱負として「やることを選んで、必要なことに集中する」ということを、それぞれ挙げています。そこで、2024年の大晦日である今日、この一年どうだったのかを振り返っていきます。

2024年にやってきたこと

インターン、就活

昨年度から引き続き、2月まで株式会社MIXIインターンに参加していました。

kusshi.hatenablog.jp

自分の就活終了後も、研究室の同期との面接練習や自己分析会など、就活らしいことに時間を費やしました。

研究、論文執筆

大学院生なので当然のことではありますが、研究と論文執筆にはかなり注力しました。

修論テーマとしているメインの研究は、4月ごろまでに集中して実験を終わらせ、論文にまとめました。詳細は省きますが、リジェクトされては改良することを繰り返し、現在も某会議に挑戦中です。

査読結果を待つ間には、研究室メンバーのサポートを引き受けていました。初めて対外発表をするメンバーの研究に参加し、論文執筆を中心として、日々の議論やプレゼンの準備に関わりました。今年発表した論文は、筆頭著者となったものを除いて6本になります。

論文執筆のサポートに取り組んで得られた最大の成果は、俯瞰した状態で文章を書く経験を積めたことです。筆頭著者として論文を書いていると、どうしても細部に気を取られ、全体の筋立てや読みやすさを見失いやすいと感じています。「読者としての引いた視点を持った著者」としての経験は、ライティングのよい訓練になりました。何より、これを一線級の研究者の元でできたことは、本当に貴重な経験です。

学会などでの出張

先述の通り共著が多かったこともあって、かなりの回数出張しました。学会やワークショップで4回、セキュリティ関係のイベントで2回行っています。来月も、国内で開催のシンポジウムに参加予定です。

オランダの街並みはとてもきれいでした。

研究室内LT会の主催

インターンが落ち着いた3月から、研究室の学生内でLT会を不定期に開催してきました。12月までに6回実施しています。

私の所属する研究室では、定例のミーティング以外にオフラインで集まる場面が基本的にはありません。非公式なコミュニケーションは意識的に場を作らないと起こりにくいことを感じていました。そのため、研究や技術に限らず、趣味やちょっとしたライフハックなどを共有する場としてLT会を主催してきました。

それぞれ研究や就活で忙しい中、ほとんど毎回5, 6人が発表してくれて、主催者としてはありがたい限りでした。質疑応答も含め毎回盛り上がる場面がみられ、交流の場を作るという狙いは果たせているのではないかと思います。

研究室を離れる来年度以降にこの取り組みが続くかはまだわかりませんが、想像していた以上に多くの人が企画に乗り続けてくれているという経験は自信になっています。

自動車免許の取得

修士2年で今更ながら、普通自動車の免許を取るため教習所に通っています。元々取るつもりはなかったのですが、フルタイムワークを始める直前、ほぼラストチャンスだと思うとやろうという気になってしまいました。しかしかなりセンスがなく、現在進行系で苦戦しています。

抱負を踏まえての反省

さて、2023年の課題は、キャパオーバー気味で、技術や知識を時間をかけて掘り下げられていないことでした。それを受けて、2024年は、やることを選んで、必要なことに集中することを抱負としていました。

今年でなければできないことに集中できた

振り返ってみると、今年は「今年でなければできないこと」に集中できた一年だったのではないかと思います。

実際、先述の取り組みは、どれも「今年でなければできないこと」だったと思います。就活期にしかできないインターンに始まり、今年度までしかできない研究関連の活動に力を注ぎました。自動車免許の取得も、キャパシティ的にギリギリではあるのですが、今年でなければできないという意味ではこの基準に適う判断だったと思います。LT会の主催も、研究室=土台となるクローズドコミュニティがありながら、完全に任意で気軽に取り組めるという状況は、会社員になってからは得難いものと考えています。

一方で、「来年以降もできるだろう」と判断したことについては優先度を下げました。具体的には、内定者インターンハッカソンなどの、ソフトウェア開発関連の活動が該当します。また、個人での開発もほとんどしておらず、GitHubが不毛の地になりつつあります。開発系の活動の優先度を下げた背景には、来年からいくらでも書けるコードより、今年でないとなかなか書けないであろう論文を優先すべきという判断があります。

必要なことをやれたのか?

この判断によって、抱負で言及していた「必要なことに」集中できたといえるのかどうかは正直なところよくわかりません。

来年度からはWeb系企業でエンジニアとして働く予定です。研究が今年までしかできないのは、博士進学しないためです。にもかかわらず、卒業とは関係のないことまで含めた研究活動の方を優先することが必要なことなのかは微妙なところではあります。入社予定の会社には、面接した時点で見えたポテンシャルで採用していただいているはずです。もしかすると、その後の活動は本来期待されるものからは外れているかもしれません。

答え合わせは2025年に持ち越し

ここまで考えていてもなお自分の中で優先順位を持ち続けられたのは、今年の取り組みの多くがやりたいことだったからということもありますが、来年になってから巻き返そうという覚悟によるところが大きいです。その覚悟ができているのは、今年の活動に相応の強度で集中できたからこそだと思っています。 2025年は、今年の選択を正解にするつもりで、業務に取り組んでいこうと思います。

株式会社MIXI CTO室SREグループのインターンシップに参加しました【DIVE INTO MIXI 2023-2024】

こんにちは、横浜国立大学大学院の櫛引淳之介(@kusshi94)です。2023年12月中旬から2ヶ月間、株式会社MIXIインターンシップ ”DIVE INTO MIXI 2023-2024” に参加してきました。取り組んだことと感想をまとめます。

参加までの経緯

直接のきっかけは、サポーターズの逆求人イベントでの接触です。 元々MIXIに対してはインフラ関係でチャレンジングなことをしている会社というイメージがあり*1、自分の興味とマッチしたSRE枠でインターン選考に進みました。

応募したのは「Dive into MIXI 2023 夏季」というサマーインターンの募集枠だったのですが、他社インターンなどの都合で12月に入社が延びてしまいました。柔軟に対応してくださった人事と現場の皆様に感謝です。*2

配属部署と取り組んだタスク

配属部署は開発本部 CTO室 SREグループでした。SREグループは全社横断型の部署で、社内の様々なニーズに応えるため機動的に活動しているチームです。プロダクトのインフラ関連技術支援、一部システムの保守運用、全社課題の技術的解決などを幅広く担当しています。

私の取り組んだタスクも、全社横断で技術面から課題解決に取り組むものでした。具体的には、下記2つをアサインされました。

  1. 社内サーバのクラウド移行
  2. メール送信システムのためのDMARCレポート監視システムの構築

とはいいつつも、この2つだけをやっていた訳ではなく、PRのレビューやタスクに関連するミーティング、全社での情報共有など、元々のスコープ外にも少しはみ出てお仕事させていただいていました。特に、後述するGmail迷惑メール対策ガイドラインの強化については、どのように対応していくか相談しながら考えていくような形で進めさせていただきました。実際の運用を考えられるようになっていきたい気持ちがあるので、何よりありがたいことでした。全般的に、会社の一員として迎え入れていただいたという感覚が強く、タスク外のところからの学びも多いインターンでした。

DMARCレポート監視システムの構築

今回のインターンで取り組んだメインのタスクは、事業部の使用するメール送信システムで使用する、DMARCレポート監視システムの構築でした。

Gmailは2024年2月1日(インターン期間中!)を境に、迷惑メール対策に関するガイドラインを強化しました。具体的には、1日あたり5,000件以上のメールをGmailのアドレス宛に送信する送信者に対して、送信メールの認証などの対策が義務化されました。

MIXIには、ユーザ宛のメール配信機能をもつシステムがいくつも存在します。MIXIで運用しているID基盤システムの中のメール送信システムはその一つで、SREグループが実運用を担当していました。このシステムも1日あたり5,000件以上のメールを送信するため、新しいガイドラインに準拠するようメール認証に関する設定を行う必要がありました。

support.google.com

メール認証による迷惑メール対策の手順は、大まかに以下の4フェーズに分かれます。

  1. SPFDKIMを設定
  2. DMARCレポートを受信できるよう、DNSにDMARCレコードを追加する
  3. DMARCレポートを定期的に受け取り、設定ミスなどによる誤判定がないか監視をする
  4. DMARC認証に失敗したメールを、受信拒否するようDMARCレコードを変更する

SREグループの運用するID基盤システムでは1番目が完了しており、インターン期間中にメンターさんと確認しながら2番目の設定を行いました。その後、3番目のDMARCレポートの定期的な受け取りのためのシステムの開発に取り組みました。このシステムは、ID基盤システムでのDMARCレポート監視用に動かし始め、他のメール配信システムでも利用することを想定するものです。

構築したシステムのインフラ構成図

処理の流れを簡単に説明します。Gmailなどのメールサービスなどから送られてきたDMARCレポートはAmazon SESで受信され、S3に保存されます。S3にメールが保存されるとLambdaが起動し、前処理としてオブジェクトキーにメールを受診した日付の情報を付与します。 これをEventBridge Schedulerによって定期的に実行するLambdaで解析し、Slackへの通知を行います。通知内容は、SPF/DKIM/DMARCの認証に失敗した件数です。 シンプルな構成ですが、セキュリティ上の理由で処理対象のメールサービスプロバイダを絞り込んでいることもあり、入力データの量が大きく変動することなどもないと考えこのような形にしました。

実際には、図の前処理用Lambdaの実装と、EventBridge Schedulerの構築まではできず、半手動での動作確認を行った状態でインターン終了の日が来てしまいました。 本番運用に乗るところまで見届けられなかったのは少し残念ですが、方針を考え変えていきながらの対応だったことも踏まえると、主処理をなんとか作り終えることができてよかったです。また、最終的に採用しなかったものも含めてこれまで経験のなかった他のAWSのサービスの利用を検討してみたりと、実際のユースケースを通じてよい質の高いインプットができました。

生活

参加期間自体は2ヶ月と長めでしたが、勤務日数はそれほど多くなく、数えたところ合計20営業日でした。背景には、学業との兼ね合いで週3勤務だったことに加え、年末年始を挟んだり、研究室の海外出張に参加していたりと、少し長めの休みが入ったことがあります。今思えばもう少し働きたかったところですが仕方ない。

オフィスが魅力的で、週1ペースで出社もしていました。渋谷駅直結の超好立地、安くて美味しい社食と社内カフェ、窓から見える景色、昇降デスクとアーロンチェアなど、快適に働ける環境が整っていました。特にビュッフェ形式の社食は気に入ってしまい、出社する度に食べすぎていました。

社食のカフェテリアでのランチ。

それから、社内のイベントには沢山参加させていただきました。イベントでお話させていただいた方は皆活躍されている方ばかりで、MIXIにはすごいエンジニアが大勢集まっていることを実感しました。

学んだこと

今回のインターン全体を通して、運用の難しさを学びました。特に、影響範囲の調査と、外的要因との向き合い方の難しさを垣間見ることができました。

例えば、インターネットの基盤となっているDNSやメールが、運用する側から見ると少々扱いづらい側面があることを設定しながら体感できました。特にDNS名前空間と権限が対応する形で設計されているため、一つのドメインを色々なところで使おうとすると一般的と思われるユースケースでも管理のコストが大きくなります。少しずつ継ぎ足しで拡張されてきた仕組みにはつらいものがありますね。その意味で、今回のタスクと直接の関係はありませんが、IPv4IPv6の互換性を切る判断をした先人たちの気持ちが分かってきました*3

また、運用を楽にするためのIaCやCI/CDも、長い時間軸で見るとメンテナンスコストがかかるということを実例を見て学びました。運用は変化させずシンプルにしておければそれに越したことはありませんが、一方で、予測しづらい外的要因による変化もあり、やはり一筋縄ではいきませんね。

今後の課題

インプットにもっと時間を使っていきたいです。他社のものを含めると約半年間連続でインターンに参加していましたが、期間中は研究との両立のためにいつも時間に追われており、業務の中でインプットしたいことが出てきても勉強する時間を満足に取れないでいました。

今回DMARCレポート監視システムを開発するにあたり、自分の設計、開発力の不足を思い知りました。今は反省を受けて積んでいたDDDの本を読んでいますが、先に読んでおけばもっといい設計ができた気がしています。やはり、基本的なところは誰かに整理されているものですね。というわけで、当分は、ソフトウェア設計・開発の基本的なところをインプット中心に抑えていこうと思います。

以下に、具体的な反省点と、勉強したいことを残しておきます。

DMARCレポートの解析用Lambdaの実装では、テストを書くことを後回しにしたせいで、全てのテストを書ききれておらず、また、実際にコードをLambdaに乗せて動作確認するまで初歩的なミスに気づかないという場面がありました。これはテスト駆動開発をしていれば避けられたはずです。現在はテストをどう書いていけばよいのかというところから怪しいので、基本から勉強していきたいと思います。

加えて、これは責務の整理と表裏一体ですが、インターフェースの命名もあまり分かりやすいものになっていないという課題もあります。また、コードレビュー、ドキュメントライティング、ログ実装などについても、必ずしも明確な意思に基づいて行えてはいませんでした。これらの点については完全に我流でやっており、「守破離」の「守」から始める必要があると考えています。

今回知った運用の難しさも、ある程度は単純な力量で十分に解決できる側面があると思っています。今認識している伸びしろを逃さず、力をつけていこうと思います。

おわりに

実践を通して楽しく働きながらも、仕事の難しさや自分の課題を知ることのできる充実したインターンでした。

最後になりますが、インターン期間中にお会いした皆様、日々業務を支えてくださったバックオフィスの皆様、そして人事と現場チームの皆様、ありがとうございました!

修了証とノベルティ

リンク(2024/06/25追記)

業務を引き継いでくれた@mewutoさんの記事

mewuto.hatenablog.com

メンターさんの記事

mixi-developers.mixi.co.jp

*1:23卒で就活をした友人からの評判や、MIXI Tech Conference 2023での発表の充実ぶりから。

*2:後で知ったことですが、MIXIでは冬季インターンも積極的に受け入れており、そちらの枠に入れていただいた形になります。同時期に参加中のインターン生が自分の他にも何人もいました。

*3:互換性を切ったIPv6はなかなか普及しきらないので、継ぎ足しが現実的なのでしょう。

2023年の振り返り

@kusshi94 です。大晦日なので、2023年に何をしていたか簡単に振り返っておきます。

各時期の振り返り

卒論執筆・学部卒業(1月〜3月)

卒論を書いて学部を卒業しました。

私の所属していた学科では、卒論の実質的な締め切りが2月半ばだったので、年明け〜2月半ばがそのまま卒論執筆期間になりました。 研究室に行くことも、指導教官にミーティングを頼むこともあまりなく、引きこもっての執筆でした。 早め(当研究室比)に着手したこともあって、集中して早めに終わらせるつもりだったのですが、結果的にダラダラ書くことになってしまい反省しています。

論文提出後は、研究室で任された仕事やサマーインターン探しなどで忙しくしていたら、いつの間にか卒業していました。

進学・インターン選考・ハッカソン(4月〜6月)

新学期が始まり、大学院に進学しました。 とはいえ、研究室・テーマ共に学部と変わらず、進学というより進級のようなものでした。

この時期はとにかく忙しく、研究をした記憶が薄いです。 B4の頃とは違って授業を受けなければならず、ハッカソンやサマーインターンの選考にも参加し、さらには家のことでもごたごたがあり、それどころではありませんでした。 去年から続けていた長期インターンも、流石にやめることにしました。

幸いにして、研究でもハッカソンでも心強いチームメンバーがいたため、手を動かさなければならない部分はなるべく協力してもらうことで、考えたり決めたりすることに集中できました。 これまでワンマンで進めることの多い人生だったので、これはこれでいい経験になったと思っています。

kusshi.hatenablog.jp

kusshi.hatenablog.jp

国内学会とインターンに参加(7月〜)

7月に入って、国内学会で発表することに決め、論文の執筆や追加の実験を行いました。 卒論執筆時の反省点を踏まえ、早めに着手しつつこまめにミーティングを行うことで、余裕を持って完成させることができました。

とはいえ、提出締め切りの1週間以上前にインターンが始まってしまったので、最後の微修正は通勤中の電車内で進めることになりました。 スマホでOverleafを開くのはこれで最後にしたいです。

インターンには5社参加しました。 期間はバラバラですが、論文執筆で夏休みがほとんどなかったため、研究の合間に行ける就業型のものがほとんどです。 最後の1社は12月入社で、現在も継続中です。もうしばらく頑張ります。

buildersbox.corp-sansan.com

kusshi.hatenablog.jp

kusshi.hatenablog.jp

blog.recruit.co.jp

インターンの合間の10月末には、8月に提出した論文の内容について国内学会で発表しました。 とにかく食べ物が美味しかったです。

kusshi.hatenablog.jp

全体を通しての振り返り

対外的な活動を増やした

インターン、学会発表、就活、ハッカソンなど、対外的な活動に参加することの多い1年間でした。 私は基本的に引きこもり気質なので、今年はチャンスがあれば飛び込むということをかなり強く意識しました。 背景として、学部生活が家にこもってインプットしているうちに終わってしまったような感覚があり、アウトプット駆動で活動してみたくなったことがあります。

結果として、これまでにできなかった経験を色々でき、各所でそれなりに評価していただくこともできました。 速く量をこなすつもりでいましたが、質もきちんとついてきてくれたと思います。

増やしすぎた

ただ、残念なことにキャパオーバーになってしまったことも否めません。

大学院に入ってからは、じっくりインプットしたり、地道な調査に時間を割いたりする余裕があまり取れていません。 これについては、6月の記事で既に壁にぶつかっていますね。

そんなわけで、今回のイベントを通して、とにかく高頻度で作って人前に出すことと、じっくり時間をかけること、両方の重要性を同時に感じました。 Explore-Exploit Tradeoff っぽいところがありますね。 これだけだと「要はバランス」で終わってしまうので、今後の方針を宣言しておきます。 基本的にははスピード(デプロイ頻度みたいなもの)あっての品質だとは思います。 ただ、追加開発を行っている間は流石に忙しく、「武器を磨く」時間がないことへの悩みが強かったです。 また、キャリアの視点でも、ものづくりに全振りしようとは考えていないため、高頻度で作ることは最優先課題ではないと認識しています。 さしあたり、技術や知識を時間をかけて掘り下げる方に寄せようと思います。

技育CAMPアドバンスで【企業賞】を受賞しました - kusshi’s blog

こんなことを書いていますが、大変恥ずかしながら技術や知識を時間をかけて掘り下げる方に寄せられていないです。

また、活動時間の確保のために睡眠時間や運動の時間が削られており、この生活は持続可能でないことも感じています。 というか今、普通に風邪を引いています。年末で病院もやっていないので、市販薬を飲んで寝るしかありません。自己管理ができていればこうはならなかったかもしれない。

来年の課題

上に書いた通り、現在も就業型インターンに参加中です。来月は研究関係で海外出張もあります。 余裕はありませんが、今だけですし、やると決めたことなので、引き続き頑張ります。 その後についても既にいくつか計画がありますが、全部やっていたら今年と変わらないので、絞り込む方向でやるべきことを決めていきます。

本当に必要なことを選べるようになることを来年の抱負として、今年の振り返りを終わりたいと思います。

DMM.comのインターンシップでネットワークの技術を学びました

2023年9月上旬から10月上旬にかけての約1ヵ月間、合同会社DMM.comの就業型インターンシップに参加してきました。 配属部署はインフラ部ネットワークグループで、DMMのデータセンターを支えるネットワーク技術を学びました。

参加までの経緯

3月に参加したサポーターズの逆求人イベント「エンジニア1on1面談イベント」経由でお声がけいただき、参加に至りました。 イベントではどちらかといえばセキュリティ系のインターンを探していたのですが、面談の中でDMMさんの働き方やネットワークへの強さに興味を持ち、セキュリティ枠の募集がなかったものの選考に進むことにしました。

4月中に面接を終え選考結果もいただいていたのですが、学業との兼ね合いもあり、実際に参加したのは9月に入ってからでした。

インターンシップの内容

9月に始まり、週3日、リモートワークでの参加になりました。

ネットワーク演習課題

インターンの前半では、演習課題を通じてDMMのデータセンターで使われるネットワーク技術を学びました。 ネットワークエミュレータのEVE-NGを使って仮想環境上でJUNOSの設定を行い、簡易的なDMMのネットワークの模擬環境を構築しました。

課題自体は期間内にこなせたものの、実力不足で深掘りしきれなかったのが少し心残りです。 事前知識は大学での研究(インターネット関連のセキュリティがテーマ)の副産物として得られたものが中心で、ルータOSの操作もYamahaのルータで実験環境を構築してきた程度でした。 クラウドインフラの構築とは段違いの緻密さに面白さを感じながら、「ネットワーク完全に理解した」状態から「なんもわからん」状態に進歩(!)しました。

開発:Flow Collectorによるインシデント対応支援ツール

インターンの後半では、ネットワークグループの業務の一環として、インシデント対応を支援するためのツール開発に取り組みました。

セキュリティインシデントへの対応においては、被害範囲の早期特定が収束までのスピードを大きく左右します。 オンプレミス環境でのインシデント発生時には、ネットワークグループも被害範囲の特定に協力することがあります。 具体的には、インシデント対応を専門とする仮想組織のDMM.CSIRTに対し、攻撃に関連する通信のログ情報を提供しています。 このとき提供するデータの収集・取得には、DC内のネットワークにおけるフローを収集・分析するFlow Collectorと呼ばれる装置が使用されています。

DMMで使用しているFlow Collectorでは、Web UIとAPIからフローに関する様々な情報が取得できます。 これまでの業務では、Web UIからトラフィックの一部をPDFなどの形式でダウンロードし、提供していました。 しかしながら、この方法には、以下のような問題点がありました。

  1. ダウンロードできるデータ数に10,000件という上限がある
  2. データの一部がFlow Collectorの内部表現となっている

これらの制約は被害範囲の特定スピードを大きく落とすものとなっており、全社的なセキュリティ向上のための課題の一つとして挙げられていました。 今回のインターンでは、この問題を解決するため、フローデータを適切な形でダウンロードするためのツールの開発に取り組みました。 開発したツールの全体像を図に示します。

開発したツールの全体図

今回開発したツールは、これまで使用されてこなかったFlow CollectorのAPIを活用するものとなっています。 攻撃者や被害者のIPアドレス、フローを取得したい期間を指定することで、SQLiteのデータベース形式でフローデータをダウンロードできます。

実装にあたっては、ダウンロード用APIにページネーション機能がないこと、ダウンロードされてくるレコードが時系列順に並んでいないことへの対応に手間取りました。 一度のリクエストでダウンロードしきれなかったレコードは、データ取得対象期間をずらすことで無理やりダウンロードする半ば力技の実装で対処しました。

データが時系列順に並んでいないため、この方法では一部レコードが欠損しますが、一度に取得するレコード数を増やして影響が軽微なものとなるよう工夫しました。 Flow Collectorでは元々トラフィックの一部をサンプリングしているため、多少の欠損は許容できると判断しました。

データセンター見学、懇親会

インターンシップは基本的にフルリモートでしたが、途中にデータセンターの見学や、懇親会への参加の機会をいただき、チームの方と直接会ってお話しました。 データセンターでは、普段見られない機器群はもちろんのこと、実際の業務の様子も見学させていただきました。 リモートでは見えづらかったチームでの働き方と雰囲気を知ることのできるよい機会になりました。

学んだこと

勉強になることの多い濃密な一か月間でした。その中で、一番の学びは自分の実力不足がよく分かったことです。

就活期以前のものも含めるとインターンに参加するのは6社目でしたが、正直なところ、今回のインターンが一番難しく苦労しました。 DMMには優秀なエンジニア学生が大勢集まってくるため、期待値も比較的高かったのではないかと思います。

このことは、井の中の蛙だったことに気が付くことができたという意味でいい進歩だったと捉えています。 とてもレベルの高い環境でしたが、背伸びして飛び込んでみてよかったです。

おわりに

サマーインターン参加前は、有名企業のエンジニアインターン体験ブログを読んではレベルの高さに戦々恐々としていました。 DMMでのインターンが始まってからも、我ながらよく受かったなと何度も思いました。 もしこれを読んでいる方の中にこれから参加するインターンが不安な方がいるなら、あまり気にせずチャレンジしてもよいのだと思っていただければ嬉しいです。

最後になりますが、インターンを通して、人事や現場の皆さんから様々なサポートをいただきました。 DMMの皆さん、1か月間ありがとうございました!

最後に頂いた修了証。1か月間ありがとうございました!

コンピュータセキュリティシンポジウム2023で研究成果を発表してきました

横浜国立大学大学院 M1の櫛引淳之介です。 10/30から11/2にかけてアクロス福岡で開催されたコンピュータセキュリティシンポジウム2023に参加し、研究成果を発表してきました。

色々な方のお話を聞いて刺激を受けたり、学生論文賞という評価をいただいたり、美味しいものをたくさん食べたりと、研究の励みになる楽しい出張でした。

前日(10/29)

プログラムと開催場所の都合上、福岡へ前日入りしました。

久しぶりの飛行機でした。飛行機ってすごいですね、動きが速くて驚きました。(?)

昼食は、福岡空港でやりうどんを頂きました。ごぼう天の旨味が染みました。

博多やりうどん別邸さんのやりうどん

会場のある天神の街は地下街が広がっており、買い出しや夕食などの用事を済ませるのにとても便利でした。 夕食はラーメンを頂きました。念願のラーメン、とても美味しかったです。

ShinShinパルコ福岡店さんのラーメン

1日目(10/30)

初日は聴講参加でした。 オープニング、基調講演、マルウェア検知、UWS企画のチュートリアル&パネルディスカッションに参加しました。

オープニングでは、我らが吉岡研関係者から5人が受賞していることを知って驚きました。 レベルの高い環境で研究させていただいていることと、そのありがたみを実感しました。

昼食は研究室の先輩と機能と同じラーメン店へ行きました。ラーメンは前日に頂いたのでちゃんぽんにしました。

ShinShinパルコ福岡店さんのちゃんぽん

パネルディスカッションでは、トップ会議経験者の方々の経験について聴くことができました。 色々と面白いお話がありましたが、テクニカルライティングの訓練を受けた経験が威力を発揮した話が特に印象に残りました。 論文執筆やドキュメント作成では苦労することが多いので、急ぎ身につけなければと思いました。

夕食は、合流した研究室メンバー数名を加えて中洲でもつ鍋を頂きました。 同じ研究室に居ても、学年や研究テーマの離れたメンバーとじっくり話す機会はあまりなかったのでとても楽しかったです。

炉端あほう鳥さんのもつ鍋

2日目(10/31)

2日目、いよいよ発表です。

朝は個人で、昼休みには同セッションで発表する先輩と一緒に、練習やイメトレを行い、昼過ぎすぐのIoT機器セキュリティのセッションで発表しました。 研究室でのミーティングで発表自体には慣れているので大丈夫だとは思っていたのですが、いざセッションが開始するとかなり緊張しました。

発表タイトルは「IPv6環境におけるIoT機器へのインターネットからの攻撃可能性に関する予備的調査」です。 IPv6環境への移行に伴い、SPI (Stateful Packet Inspection) がルータで機能しないことによってIoT機器への攻撃が起こりうるのか?という疑問に答えるため、複数の視点で調査を行いました。

発表後に話しかけてくださった方から、今後が楽しみな研究とのコメントをいただきとても嬉しかったです。

会場を後にして、先輩や共著メンバーと遅めのお昼に餃子を食べに行きました。緊張から開放された直後のご飯は最高でした。

夜は研究室の関係者全員で懇親会、先生から水炊きをごちそうになりました。先生、ありがとうございました。美味しかったです。

とり酒場 華善 春吉店さんの水炊き

3日目(11/1)

3日目は発表待ちのプレッシャーもなく、ゆっくり聴講して回りつつ、研究室内外の方とお会いする1日でした。 テーマの近い方と研究の話をしたり、インターン先で知り合った人とお昼にもつ鍋を食べに行ったり、懇親会で就活の話をしたり。

元祖もつ鍋楽天地 天神本店さんのもつ鍋

3日目ともなると夜はクタクタで、ホテルに帰ってすぐ動けなくなりました。

4日目(11/2)

最終日です。

朝一番のセッションで、研究室メンバーの発表を聴きました。発表が分かりやすく勉強になりました。

次のセッションまで少し時間があったので、太宰府へ観光に行きました。 太宰府天満宮の御本殿は工事中でしたが、その前に建てられた仮殿もとても立派で壮観でした。

太宰府駅

太宰府天満宮の仮殿。屋根の上に木が生えている。どうやって作ったのだろう?

昼食は太宰府参道のお店で明太子茶漬けを頂きました。最終日にして福岡グルメチュートリアルクリア*1です。

ふくや 太宰府店さんの明太茶漬け膳

観光を終え、基調講演を聴きにアクロスへ戻ります。 静岡大・京大の酒井敏先生による「一流の研究は計画通りに進まない」という講演でした。 偶発的な要素に出会えるよう、もう少しゆとりをもって研究に取り組まなければ、と反省しました。

表彰式では、学生論文賞の枠で表彰していただきました。 それほど先行研究の多いテーマではなく、一年以上右往左往しながら進めた研究なので、評価していただけて嬉しかったです。

今回頂いた賞状

表彰式の後は福岡空港に移動し、ラーメンを食べて帰りました。 分厚いチャーシューとこってりスープが疲れた体に染みました。

まんかい 福岡空港店さんのラーメン

おわりに

「予備的調査」と論文タイトルにもあるように、今回学生論文賞を頂いた研究は、まだまだ発展途上のものと考えています。 今回の出張で得た多くの学びや刺激を胸に、引き続きよい研究になるよう精進していきたいと思います。

運営関係者の皆さん、参加者の皆さん、ありがとうございました。

*1:出張前に想定していたものは一通り食べることができたの意。他にも美味しいものがあれば教えてください。

サイボウズのインターンシップでPSIRTの仕事について学びました

2023年8月に開催されたサイボウズ株式会社のサマーインターンシップに参加し、 手厚いサポートの元、脆弱性検証や評価の基本的な考え方、セキュリティ業務におけるコミュニケーションの重要さを学びました。 また、サイボウズの理念や、Cy-PSIRTの攻めの取り組みについて知ることができました。 学んだことについてまとめます。

参加までの経緯

3月頃、人事の方と関連イベントで知り合ったのがファーストコンタクトでした。 イベント内の企業プレゼンと座談会で、サイボウズのセキュリティへのこだわりや、モブプロ文化について耳にし、興味を持ちました。

イベント終了後には、セキュリティエンジニアの方(後のメンターさん)との面談の機会を頂きました。 面談でお話させていただく中で、自社製品のセキュリティにコミットする働き方に興味を持ち、インターン選考への参加を決めました。

参加決定後にはインターン生と現場社員の方の顔合わせ会がありましたが、私は参加できませんでした。残念です…

インターンシップの内容

今回参加したインターンシップは、Cybozu Internship 2023 Engineer & Designer のプロダクトセキュリティコース第1タームです。 2023年8月28日から8月31日までの4日間、オンラインで開催されました。

インターンの内容は、サイボウズのプロダクトセキュリティを担当するCy-PSIRTの業務を座学講義と演習で学ぶものです。 講義では、各業務に詳しい社員の方から直接取り組みから考え方までを知ることができました。 演習では、実際に脆弱性のあった過去のバージョンのサイボウズ製品を動かしながら脆弱性の検証や評価を行いました。

プログラムについてはメンターの方が書いた記事に詳しく掲載されています。 記事は2022年のものですが、基本的には同じ内容です。

blog.cybozu.io

その他にも、社員の方との会食、社長の青野さんとの「ザツダン」など、会社の雰囲気を知ることのできるコンテンツがありました。

学んだこと

検証や評価の基本的な考え方

プロがどのようなことを考えながら脆弱性の検証、評価に取り組んでいるのか知りました。

基本的なWebアプリケーションの脆弱性は、ユーザからの入力が別のどこかで出力されることで発生します。 演習を通して、脆弱性を作り込まないための戦略として、不正な値を入力させないことと、入力値を出力する際に発火させないことの両方の対策があると考えました。 この点についてどう考えているのか伺ったところ、前者での対策をより重視しているとの回答を頂きました。

また、脆弱性の評価については正直あまり知らなかったので、漠然と知っていただけのCVSSがどのようなものなのか分かるようになりました。 プログラム全体を通して、「CVSSは4.3に収束しがち」というちょっとした肌感覚や、評価そのものの難しさ、CVSSでの評価が脆弱性の深刻さや対応の優先順位を決める上で完全でないことなどを知りました。

さらに、CVSSが完全でないのであれば、何のために評価を行うのかと疑問に思い、振り返り会や懇親会の場で詳しくお話を伺いました。 様々なご意見を頂きましたが、脆弱性の公表を重視しているため、必然的にCVSSを使うことになるのが一番の理由だと認識しました。 また、自分で評価を行ってみた結果として、抜け漏れなく評価を行うためのフレームワークとしては十分有用だと感じました。 実際、プロダクトチームに評価した脆弱性の修正を依頼する際には、評価値よりも評価の根拠を詳しく伝えるとのことでした。 演習で得た実感としては、根拠をもってCVSS評価をしようとすれば、トリアージに必要な情報を提供することができるように感じました。

総じて、疑問や考察に対してメンターの方から手厚いフィードバックを頂き、多くの考え方を吸収できました。

セキュリティ業務におけるコミュニケーションの大切さ

脆弱性検証では、モブプログラミングの知見を活かした「モブ検証」形式で演習を進めました。 他のインターン生と二人一組になりつつ、社員の方にアドバイスを頂きながら共同作業で検証しました。

blog.cybozu.io

脆弱性関連の業務は絶対的な方法がなく、コミュニケーションを取りながら進めることが効果的であることを感じました。 検証の方法は経験則によるところがあるそうで、実際、演習でもモブ形式により見落としを減らすことができました。 評価においても、前節の通りCVSSなどの指標は完全なものではないため、判断の根拠などを伝え合うことが何より重要です。 また、社外のバグハンターの方から報告された脆弱性の再現手順を実際に試す中で、報告された手順の形式にばらつきがあり、意思疎通に難しさがあることを体感しました。

サイボウズとCy-PSIRTについて感じたこと

理念と文化に嘘がない

青野さんとの「ザツダン」では、事前に募集された質問に沿って、直接会話させていただきました。 青野さんはインターン生ともとても気さくに話してくださり、風通しのよさが本物なのを感じました。 理念に行きつくまでのエピソードや、なぜそれを大切にしているのかについても詳しく伺うことができ、本気でチームワークあふれる社会を創ろうとしているのだとわかりました。

対外的な取り組みへのこだわり

Cy-PSIRTの業務では、対外的な取り組みに力が入っている点が印象的でした。

サイボウズは日本におけるバグバウンティプログラム実施企業の先駆けとしても知られていますが、 報奨金制度を運営するにとどまらず、バグハンターの方を招待して実施する「バグハン合宿」なるイベントなどにも取り組んでおり、外部通報への本気度を感じさせられます。

blog.cybozu.io

上で述べた通り、報告された脆弱性の再現手順は必ずしも理解しやすいものばかりでないことを実感したため、 ハンターの方と近い距離で関係を作るこのような取り組みへの想いを理解できました。

セキュリティは基本的に守りの分野ですが、Cy-PSIRTの対外的な取り組みからは攻めの姿勢を感じられました。

サイボウズインターンのおすすめポイント

来年以降、サイボウズインターンへの参加を検討している方向けへおすすめしたいポイントを書いておきます。

サポートがとても手厚い

インターンの4日間は、メンターの方にいつでもなんでも聞ける体制となっていました。 個々人での演習中もマイクカメラオフでZoomが繋がっており、不安なく進められました。

金銭面でも、社員の方とのランチや最終日の懇親会では補助が出ました。社員の方のお話を聞きながら食べるお寿司は格別でした。 そしてお給料やノベルティまでもいただけます。ありがたいことこの上ないです。

優秀な他のインターン生との交流

他のインターン生とは、モブ検証やランチなどで色々お話させていただきました。 他の皆さんが本当に優秀なことはもちろんですが、やってきたことや志向性、課題への取り組み方にも少しずつ違いがあり、とてもいい刺激になりました。

まとめ

サイボウズとプロダクトセキュリティの仕事について濃密に学べたインターンでした。 社員の皆さん、他のインターン生の皆さん、4日間ありがとうございました。




以上の内容はhttps://kusshi.hatenablog.jp/より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14