Hardening 2017 Fes に参加してきました!
11/23~25に淡路島で開催された「Hardening 2017 Fes」に参加してきましたのでご報告致します。
初参加でしたが、本当に楽しい競技で、是非とも鍛え直してもう一度参加したいと思いました!
目次
Hardeningとは
「全く新しい」競技形式
Hardening Projectで開催する競技は、基本的にチーム対抗で、脆弱性のあるECサイトへのハードニング(堅牢化)力の強さを総合的に競うコンペティションの形をとります。競技内容は、セキュリティを扱う人が貢献する、現実的な問題をどのように扱って頂くかに焦点があてられます。参加チームは、StarBED内に構築された、仮想のネットワーク環境で競技します。
例えば、この環境には、通常の機能で一定ペースで売上があがるアクセスのある、eコマースサイトが設置されている場合、着手から8時間というタイムプレッシャーのある中、このe コマースサイトの管理体制をしき、脆弱性を探し、必要な修正を施し、また、不意に発生する”インシデント”に対応しつつ、サイトを強化するというわけです。このアプローチは、普段から知っている人と組む場合でもそうでない場合でも、「チーム」の判断力や独創性への試練となることでしょう。評価の基準としては、防御技術力のみならず、サイトの運営を維持する総合力、つまり攻撃に対する堅牢化、それと同時に売り上げの確保、ダウンタイムの最小化、そのためのコミュニケーションスキルのすべてを加味して勝者が決まるからです。これにより、ウェブサイトの安全性を追求する技術の啓蒙と人材の育成、またそうした技術の社会的認知の向上による健全なネット社会への進歩に貢献することを目指します。
Hardening イベントは、競技を中心としたHardening Dayと、その振り返りと表彰を中心としたSoftening Dayによって成り立っています。こうして、競争と協調の両方から、Hardening Projectのメッセージ訴求を最大化していきます。
といったように、ECサイトを渡され、サイトを運用しつつ、堅牢化していき、いかにインシデントが起きないように対策したり、インシデントが起こった際に対応したり、お客様第一主義で商品を売り続ける。といった実践によく似た環境で行われる竸技です。
ただ単にサーバを守るだけでなく、顧客からのメールの問い合わせや在庫の補充など、やることは本当にたくさんあります。
今回大会概要
今回の大会は、通常のHardening Dayと、Softening Dayだけではなく、Firming Dayもあり、アンカンファレンスが行われました。
大会の概要は以下を参照してください。
今回の評価項目は
- 見込み販売力(総合順位)
- 顧客点
- 技術点
- 対応点
- 経済点
- 協調点
- 引継点
でした。
準備期間
参加当選通知と共にチームメンバーが発表され、メールで通達が来ました。
少し出だしが遅くなってしまいましたが、SlackとGoogleDocs、GitHubを使ってコミュニケーションを取っていきました。
Role & Responsibility でそれぞれのできるところをあげていき、役割分担をしていきました。
大会本番
Day0(11/22)
新潟から伊丹空港まで飛行機で行き、三ノ宮まで電車で向かい、チームメンバーであるKabさんと出会い、ご飯を食べました。
今回のうまくいったところ(勝因?)は、この「宿を全員で同じところにする」だったと思います!
すごい部屋もありましたが、、
そこから次の日の本番を目指してしっかりとした役割分担、準備などをして行きました。
Day1(11/23)
会場は「淡路夢舞台」です。
夢が詰まってそう。(笑)
オープニングから気がついたら競技がスタートしていて、気がついたら終わってたといった感じでした。
あっという間に終わってしまった。
詳しい競技内容は言っていいのかよくわからないので、、
自分は、複数あるECサイト(サーバ)のうち一つを任してもらえたので監視やら何やら色々としていました。
MPの購入がとてもうまく行き、チームの方々の優秀さも際立ち、とりわけ大きなインシデントがなかったのも良かったです。
リーダー兼MP担当のSassaさん、ルーティングが専門のKabさん、DNS、Windowsサーバ担当のやましーさん、SQL、サーバを叩き起こす担当のキティちゃん、顧客対応、在庫管理担当のジーコさん、本当にみなさんの技術の高さに驚きました。
9時間で終わりと思いきや、、まさかの延長戦!!
Day2(11/24)
チームリーダー以外人事異動。
延長の2時間もなかなか楽しい経験をさせて頂きました。
まず、派遣されたチームの複数サーバ全てダウンされている状況。
ここでもチームのみなさんのすごさがうかがえました。
叩き起こすことの速さ!
私も、前日よりは早く作業を行うことができるようになってました。
無事競技も終了し、魂が抜けたかのようにほっとしました。
午後はアンカンファレンス。
私はSecHack365にも参加しているので、若年層のセキュリティ人材の育成についての話し合いに参加させて頂きました。
企業の人事の人や、部下を育成しているような人の重要なお話が聞けて、自分が今後どのように勉強していけば必要な人材になれるのかが少しは分かった気がします。
Day3(11/25)
この日は、各チームが準備や本番にどんなことをしたのかの発表や、本番中にどんな攻撃が起きていたのかといった解説、結果発表が行われました。
詳しくはYouTubeにあがっていますので興味がある方はご覧ください。
Hardening 2017 Fes - Softening Day - YouTube
私たちのチーム「のれそれ11」の結果です。
【のれそれ11】
- 見込み販売力 54,739,582
- 顧客点 2,800(2位)
- 技術点 6,400(1位)
- 対応点 5,000(2位)
- 経済点 4,028
- 協調点 0
- 引継点 2,387
協調点が0なのは、JPCERT/CCのMPを買わずに、何も報告していないからです(笑)
全体の結果はこの通りです。
見事総合2位を獲得することが出来ました!!
そして、トレンドマイクロ賞までも!!
Photo By こんさん
感想
まず、楽しかった!( ^∀^)
本当に、チームの方々に助けられたなと。
毎晩深夜まで飲み続け、キティハウスで4泊の10人共同生活。
何もかもが斬新で、全てが楽しかったです。
まだまだ活躍出来たとは言いにくいので、次までに活躍できるように成長して、またチャレンジしていきたいなと思いました。
いろいろな方と色々なお話が出来、本当に充実していました。
みなさまありがとうございました!!m(._.)m
おわりに
Hardening Project のみなさま、無償でこのような経験をさせて頂き、本当にありがとうございました。
今後もこの業界で頑張っていけるように精進してまいります。
この壁紙、本当に好きです!!
【SecHack365】 #4 @Osaka
明けましておめでとうございます㊗️
今年も宜しくお願い致します。
12/22~24に、第4回のSecHack365が大阪で開催されました。
もうSecHack365もだいぶ終盤になってきました。
終わってしまうこと考えると悲しいですね、、(T ^ T)
終盤ということもあり、開発と発表練習がメインでした。
久しぶりのブログになってしまってますm(._.)m
なかなか書くことストックしちゃってます、、
遡る感じで公開して行きたいと思います!
目次
会場
今回の会場は『ホテルコスモスクエア国際交流センター』です!
咲洲という人工島らしい。
USJにも結構近い!(後で実車実験のときにUSJまで行きます笑)
Day0(12/22)
新潟から飛行機で伊丹空港まで。
伊丹空港から大阪駅(梅田)まで行き、チームのメンバーと合流。
せっかくの大阪ですが「もと村」で昼食。
美味しかった、、!
会場には遅刻せず到着!新しいパーカーいただきました。かっこいい!
進捗がないと没収されてしまう模様。(笑)
ハッカソン
18時まで久しぶりに再会したチームのメンバーと打ち合わせ。
進捗状況や今後の方針、次の日の発表の資料作成などを行いました。
今回は今まで行われていたハンズオンワークショップ(縁日)は行われず、ゲスト講演のみの開催でした。ラストスパートだからしょうがないということは分かるものの、知識・技術の獲得もしていきたいなと思いつつ、、
ゲスト講演
講師の方は、大阪大学の柏崎礼生先生でした。
スライドの使い方がとってもお上手で、どんどんお話に引き込まれていきました!
こんな発表できるようになりたい!箇条書きのスライドとはおさらばだ!!
と思ったのですがなかなか難しそう。発表上手になりたいです。
内容 で一番印象に残っていることは、AWSのアクセスキーを平文でGitHubにあげてしまい、悪用され、多額の請求がきたお話。プロセスからして、誰もがやってしましそうだなと感じました。すごいところが、請求を免れるだけでなく、AWSにマニュアルを作らせてしまうところ。さすがだなと思いました。
本題は「セキュリティ研究者という働き方」といった感じで、好きなこと研究してお金がもらえることの楽しさを教えて頂きました。研究職ということをあんまり考えたことがなかったため、いいお話を聞くことができました。
Day1(12/23)
7時から朝食。
案の定朝食はパスしました。食べたい〜と思いながら二度寝へ( ^ω^ )
ハッカソン・発表
8時から発表へ向けて最終調整。
9時から進捗発表を20分し、多くのトレーナーの方からアドバイスを頂きました。自分たちもうっすら思っていたことをはっきり指摘され、フロントエンドでの方向性(集めたデータの活用方法)のところでもう一度しっかり考えないと行けないなと実感しました。
パネル発表
この回は本当に発表が多いです!
自分たちが何をしてて最終的にどうしていくか。本当に突き詰めていかないと。
沖縄会に向けた発表練習にもなります。
ここでもトレーナー、専属顧問のしーまさんから良アドバイスをもらいました。頭の中でイメージ出来てきました。
実車実験
実際にデータを取るために実車してきました。
位置情報をしっかりマッピングできたり、Kibanaで開発者向けの可視化も成功していました。ひみつさんはしっかり進捗出している。私も頑張らないと。。
結構近かったのでここ行ってきました!
遊んでいるわけではないですよ!(笑)
中入りたかったな〜。叫び声を聞きながらホテルへ戻ります。
ゲスト講演
今晩のゲスト講演は、PanasonicのPSIRTでお仕事をされている大澤さん。「製品セキュリティ」についてのお話を聞かせて頂きました。
CTFのプロの方だそうで、今年のSECCON決勝にも参加するとのこと!
すごい方だな。。!
製品セキュリティにあまり詳しくなかったのですが、今回の講演でリアルに近い企業の製品に対する考え方を聞くことができました。コストだとか、その他の要因など、色々と圧もあるんだなと思いつつ。
個人的にはCTFとか、もっと趣味でやっていることのお話とかを聞きたかったなと思いました。Hardening2017Fesに参加されていたらしく!会ってたのかもしれませんね。
この後、トレーナーの佳山さんと深いお話が出来、フロントエンドの方向性が固まりました。いい案を出して頂きありがとうございます!!
Day2(12/24・クリスマスイブ)
7時から朝食予定だったのですが、案の定起きることができず、この日も朝ごはんはなし!笑
前日27時まで頑張ったから()良しとしましょうw
発表
8時スタートで発表練習、スライド作成を行い、自分たちのチームは9時から20分間の発表を行いました。
前日考えたことがうまく表現できず、、
頭の中がしっかりとまとまっていなかった模様。思っていることをうまく伝えることができないのがなかなか悔しかったです。
しっかりと、「背景」「何を目指しているのか」「未来的にどのようになっていくのか」を考えて開発を行っていかないとですね。
今までは、集めたCANデータを渋滞回避や危険箇所の表示などの、ユーザを安全・快適にするためのデータ活用をしようとしていました。
しかしながら、どうしても既存のローカルのサービスとの差がない。
せっかくCANを使っているのだから、もっと何かできるだろう。
そこで、今後自動運転、ゴーストカーの時代を見据えて、「安全運転」というデータセットをまずは作っていこうという考えになりました。
このデータセットがどのように活用されていくかといったお話や詳しいお話は沖縄会でしっかりと発表したいと思います。
実験
実験の様子です。運転の良し悪しの判断(運転評価)をするために、同じコースを4人で走り、データを取ってきました。
本当に人によって運転の仕方(ブレーキの踏み方やアクセルの踏み方、ウィンカーを出すタイミングなど)が違く、いいデータが取れたと思います。
運転者の判断などにもこのデータは使えそう!
実験の様子です。
なんだかこれだけでエモい(笑)
CANデータをこれから上手に利用していきます!(宣言)
感想
フロントエンドで開発してきたものが今回の会で全くいらないものとなりました。(笑)
これからまた新たに作っていきたいと思います!!
チームの方々のサポートも分厚く、本当に感謝感謝です!
あと3ヶ月程でこのプログラムも終わってしまうのがすごく寂しいです。。
残り後少し!頑張っていきましょう!
おわりに
毎回毎回、私たちトレーニーのメンタルや進捗状況をサポートしてくださっているトレーナーの方々には本当に感謝しています。
本当にすごい人たちに囲まれて、自分まですごくなった気でいますが、しっかりと自分も実力をつけていかなくてはいけません。本屋で「セキュリティ」分野を見ていると、著者が知っている名前ばっかり、、!本当にすごい人に囲まれて、いい環境だなと思います。
いつかこんな方々になれるように私も精進していきたいと思います。
ブログタイトルを「むろちゃんの備忘録」から、「努力なくして力なし」に変更しました。小さい時から好きな言葉で、元西武ライオンズのピッチャー、小野寺力さんを参考にさせて頂きました。
「努力」していく一年にしたいと思います。
本年もよろしくお願い致します。m(._.)m
メルカリ「BOLD INTERNSHIP 2017」参加合格者向け説明会に参加してきました
メルカリ(mercari)の「BOLD INTERNSHIP 2017」に参加できることになりました!
なかなか倍率高いらしく、結構嬉しいです^^
10/31(火)に参加合格者向け説明会に行ってきましたのでご報告します。
目次
「BOLD INTERNSHIP 2017」とは
https://www.mercari.com/jp/recruit/boldinternship_2017/
「世界で戦うために、まずは、世界を見てきてください。」
このフレーズに表れているように、アメリカ/イギリスに学生を派遣するインターンです。
1週間、現地で暮らし、その場所ならではの発見から、「メルカリが世界で勝つためのアイデア」を考えてきます。
私自身、メルカリのVALUEは非常に好きで、失敗を恐れずに何事にもチャレンジする精神はとても大切だと思います。
メルカリのVALUE
- Go Bold – 大胆にやろう
- All for One – 全ては成功のために
- Be Professional – プロフェッショナルであれ
エンジニア職50名、企画職50名の採用です。
渡航に必要なお金はすべて負担していただける上に、1週間で12万円もの報酬。。。
おいしすぎるが、その分アイデアや企画など、何かしらのレスポンスがとても大切になってきます。しっかりと現地で調査してきて考えなくては。
ちなみに選考は、
- 書類選考
- 面接
の2ステップでした。
説明会
メルカリの本社で行われました。六本木ヒルズの森タワー、、すごいおしゃれ!
私は、アメリカのオレゴン州に派遣されることとなりました。
オレゴン州、、聞いたことあるけどどこだろ。。
アメリカに全然詳しくなかったのでいまいちピンとこなかったのですが、聞いたことある州だっただけ良かったっぽい(笑)
ミッションとしてはたった2つ。やり方、その他は本当に自由。
mission1
メルカリ及びCtoCサービスのユーザヒアリング
mission2
この単純さが逆に難しく、なんでもできちゃうところが楽しいなと感じています。
昨年度の参加者による具体的にどんな準備をしたかや、現地での活動に関してのお話があり、やはり人それぞれの考え方や着目ポイントがあるんだなと感じました。
実際1000人以上の応募があったらしいので10倍以上の倍率ですね。
感想
集まってた人たちは本当に優秀な人が多いなと感じました。やはり、エンジニアだと主にWeb系、アプリ系が多かったのかな。自分はWeb、アプリともにそんなに詳しくないので不安がいっぱい。
ペアの方が本当に優しく、意気投合できたのが結構良かったです。
後はもう、いかに楽しむかが重要なのかな?全力で楽しみます!!
同じ新潟大学の方がいて、結構嬉しかったです!企画職だったので、より深い討論?を帰りの新幹線でしてきました(笑)
おわりに
アメリカに行くという機会を与えてくれたメルカリさんにとても感謝しています。
よく、インターンシップとかの優勝者報酬としてアメリカに行けるとかいうものはあるのですが、インターンシップでアメリカに行くというのはなかなか斬新だと思いました。現地で生の声を聞き、採用してもらえるようなメルカリが世界で戦えるアイデアを出したいです。
このインターンシップは今後もっと有名になって行くと思います。今回合格できたのもなにかしらの縁だと思っているので、全力で頑張りたいです。
アメリカに行くまでが勝負だと思っているので、そこまでにありったけの準備、想定をして、当日を迎えることができるように準備していきます。
【SecHack365】 #3 @Hokkaido
10/14(土)〜10/15(日)に第3回のSecHack365が行われました。
今回の舞台は、北海道、定山渓です!
紅葉がきれいなこと。そして、ものすごく寒かった。
目次
day0(10/13,Fri)
10/14からと書いておきながら、この回を充実させるために前泊をさせていただきました。13:30集合だったのに、新潟からの直通便が9:00前に着くという。4時間以上空港で暇していました。新千歳空港が綺麗で広くて良かったです!なかなか楽しめました。
会場
会場は定山渓ビューホテル。
歓迎されてる‼︎笑
この日はホテルに着いてから夜まで何もすることがなく…
前泊仲間と共にホテルのプールに入りました!
なんやかんやで2時間ぐらいいたかも。屋内プールからの紅葉の眺めが最高でした。
福岡縁日revisit
任意参加イベントとして、福岡回で実施されたハンズオンワークショップがパワーアップして帰って来ました。
福岡回では45分のワークショップでしたが、今回は2時間も!
前回2つしか選べず、興味があったネットワークハッキングを取れなかったので、今回のrevisitで取らせていただきました。講師の方は、NICTの衛藤さんと石川さんです。
「ネットワークハッキング〜自由を手に入れよう!誰でもできるネットワークすり抜け術」
あまり詳しい内容はあげていいのか分からないので、端的にいうと、ネットワークのトンネリング技術を体験しました!
ネットワーク系の研究室にいるのですが、こういったことはやったことがなく…本当に勉強になりました。sshさえ通ればなんでもできちゃうというのがすごいですね…!
この技術は使い勝手が本当にいいので、うまくネットが繋がらない時に使えるようにしたいです!(倫理観は持ってw)自分用の踏み台サーバを持ちたいところです。
何か問題が発生した時に、原因をすぐに突き止められるところが、トレーナーの方々のすごさだなと実感しました。
day1(10/14,Sat)
この日は、主にハッカソンが行われる日でした。パラレルセクションとして、ハッカソンの合間合間にハンズオンワークショップが行われ、取りたいワークショップを取るといった感じで進めらました。
自慢会パート1
チームで研究を行っているので、チームで発表を行いました。
私たちのテーマは、
「車の情報×クラウドを使って安全・快適なカーライフをしたい!」
です。
大雑把にいうと、車のOBDコネクタにPiCANを積んだラズパイを接続し、リアルタイムでSORACOMに車の情報を流し、AWSにその情報を飛ばし、様々な処理をする。といった感じです。
ここら辺の知識はあまりなく、チームの方々がやってくれています。ありがとうございますm(_ _)m
私は、この先の集めた情報で何をするかというところ、最尤経路問題やCANへの攻撃の検知といったところをやっていく予定です。
ハンズオンワークショップ
「簡易無線(特定小電力)ハッキング(海外で多発しているReplay Attackを学ぼう!)」
私は、この講義を聴講させて頂きました。講師の方はPwCの神園さんです。
無線の免許を必要としない簡易無線を使ったハッキング技術を教えていただきました。
Replay Attackという言葉の通り、自分で周波数や振幅などを考えて波を作るのではなく、必要な無線を傍聴し、それを保存してしかるべきタイミングで再生するだけという、いたって簡単なハッキング手法でした。
アメリカで防災訓練の際の防災無線が傍受され、Replay Attackに使われ、深夜に町のスピーカーから警報がなるという…
こういった訓練までもが標的になっていることに驚きました。
今回のハンズオンでは、27MHz帯をつかっているラジコンを使い、リモコンから発せられる無線を傍受し、それを再生することでラジコンを動かすということをしました。
本当に簡単。
色々なところで簡易無線は使われており、どう頑張っても対応の策がないということ、、安易に安いからと簡易無線を使うのはよくなさそうですね。
ハッカソン
今回は、トレーナーの方々が借りていたレンタカーを使い、実際にOBDコネクタから情報が抜き取れるかをしました。
チームの方のすごさ。。。
一瞬で16進を見てこれが速度でこれが回転数だなどと…訳がわかりませんでした(笑)
普段新潟で運転していることもあり、北海道の紅葉の中を運転させてもらえたのはいい経験でした^^
夜の倫理セッション
美味しい夕食の後は (混んでいたのもあり全然食べる時間がなかったのですが…)、恒例の倫理についてのお勉強です。特別講師として、北海道大学大学院法学研究科の町村泰貴教授がいらっしゃってくれました。
まず、もし情報漏えいが起きてしまった場合に、どういった対応をするべきかというディスカッションを行いました。実際にシチュエーションがあり、それに沿って考えました。起きてはいけないことですが、もし起きた時のために、しっかりとした対応策をマニュアル化しておくといいかもしれません。
続いて、法の種類やなぜ人が法に従うのかといったことを考えました。(前回と少し似ていたような気もします。)
結論的に言うと、法律にはやはり限界があり、その先は「モラル」といった言葉や、周りの人間との関係でうまくやっていくしかないのではないかと思いました。法律やルールの実効性を高めるために、知識を増やすのはもちろんのこと、守るという意識をしっかり持っていくことが大切だと思いました。
自慢会パート2
やっと2日目のラストイベントです。朝からぶっ続けでなかなかハード。
この会も一人3分という制限を皆さんが普通にオーバーしていったので、なかなか時間がかかりました。トレー二ー皆さんの技術、やっている内容を分かりやすく3分で話さなくてはならないというのも、皆さんやっている内容がすごすぎて中々難しい話ですが…笑
私たちのチームは、実車で行なったリバースエンジニアリングの内容や、AWSにデータをあげ、その後何かをするといったところのアーキテクチャを発表しました。
day2(10/15,Sun)
この日は朝から、石狩の某所にあるさくらインターネットさんのデータセンターへ見学をしに行きました。
省電力、省エネのために北海道の涼しい気候を有効活用しているところが有名ですよね。
まだ5棟全部は完成していないのですが、3号棟までは完成しており、色々と見学させてもらいました。サーバ室の冷却方法として、天井から冷やす天井吹出方式や壁から冷やす、壁吹出方式の違いなども見れました。
実際に運用していく上で、どのようにしたらコストを抑えられるかといったことや、施工期間と発注との関係など、細かいお話が聞けたのが良かったです。
撮影や位置情報などの公開が禁止でした。大切なお客様の情報を守るためには納得できます。
感想
今回は体調を崩すことなく、全日程を楽しむことができました!
2日目の夜にはトレーナーの方とも楽しく飲むことができ、いい経験になりました。
3日目の解散後にも、友達と札幌市を観光できたので、少しは北海道に行った感が味わえました!
SecHack365は色々な分野の方が集まっているので、自分の知らない技術を知ることができ、知識を増やすことができます。また、トレーナーの方々が本当に優しく面白い人ばかりで、一つ質問すると十以上もの回答、アドバイスをしてくれるので、自分で考えていた以上のひらめきができます。
トレーニーの方々も本当に優秀な方々がいっぱいいて、このプロジェクトで研究していることもそうですが、色々なことを教えてくれるので、それだけでも勉強になります。 (たまに何を言っているか分からない時はありますが…w)
こういった人の繋がりもできましたし、自分の勉強のモチベーションとしても常に高めることができる環境ができ、本当に参加して良かったなと思います。2ヶ月に一回集まるのは、いいスパンなのではないでしょうか。
これからが本番なので、悔いのないようにもっと没頭していきたいです!
おわりに
ここからが僕の出番になってくるので、集めたデータをしっかりと活用できるよう、頑張って行きます。
次回は12/23・24に大阪での集合となります。それまでにはしっかりと進捗を出せるよう、頑張ります。それにしてもクリスマス前のすごい日程。クリスマスイブは予定あるって堂々と言える(笑)
LACのインターンに参加してきました
10/20(金)にLACのインターンシップに参加してきました!
今回のテーマは、「デジタルフォレンジック」。
感染後の事後処理、被害範囲の特定などはしたことがなかったため、とてもいい勉強になりました。
目次
会場
LACの本社で行われました。永田町駅を降りてすぐの平河町森タワーの2階です。このビルの屋上には足湯があり、皇居や国会議事堂を足湯に入ったまま見下ろすことができます。
疲れた時のリフレッシュに良さそう^^
デジタルフォレンジックとは
インシデント・レスポンスに対し、電磁的記録の証拠保全及び調査・分析を行うとともに、電磁的記録の改ざん・毀損などの分析、情報収集などを行う技術のこと。
警察で言うところの鑑識といったとこでしょう。フォレンジックエンジニアという職種もあるようです。(初めて聞いた…)
講義内容
講師の方は、サイバー救急センターの窪田さんでした。
主に、4つのことを行いました。
削除されたデータの復元
AccessData FTK Imagerを使い、削除されたデータの復元を行いました。
削除されたデータでも、痕跡が未割り当て領域に残っていたり、エントリが残っていれば復元することができます。
ファイル名などのメタ情報が取得できなくても、データが上書きされたいないのであれば、すぐに復元することができてしまいます。
完全に削除をしてしまっても、すぐであればデータが上書きされる可能性は低いので、復元が可能です。
フリーソフトですので、もしもの時のために…ぜひ入れておくといいかも!
プリフェッチファイルの確認
Windowsでは、プログラムを高速に起動するためにプリフェッチファイルというものが作成されます。
C:Windows¥Prefetch
というフォルダ配下に生成されます。
<プログラム名>-<ハッシュ値>.pf
こういった形でファイルが作られています。
起動するたびに更新されていくため、このフォルダ内のプリフェッチファイルを更新日時順にソートすると、いつプログラムが起動されたのかということと、プリグラムを起動した順番が分かります。
これだけだと、まだまだ情報が足りないため、
WinPrefetchViewというフリーのツールを使い、実行回数や最終実行日時、関連して読み込こまれたファイルの情報を表示できます。
レジストリの調査
システムの設定情報のデータベースとしてレジストリがあります。この情報を読むことで、自動実行の登録痕跡や、USBの挿入に関する情報を得ることができます。
今回は、自動実行登録調査ツールとして、Autorunsを使用しました。
これにより、自動実行に勝手に登録されたマルウェアを探すことができます。
実習として4問出され、マルウェアを実際に全て特定することはできたのですが、実際にどのような挙動をするかまではしっかりと特定することができませんでした。
マルウェアかどうかを見抜くポイントとしては、
- マルウェアが保存されやすいファイルパスが登録されていないかを見る
- プロパティの内容の矛盾を見つける
- プログラムの引数にも注意する
といった感じでした。
タイムスタンプについて
Windowsのファイル管理システムとしてNTFSが使われていますが、タイムスタンプが8種類もあることに驚きました。
プロパティを開くときに出てくるタイムスタンプは$SI属性のタイムスタンプで、
- 作成日時
- 最終更新日時
- 最終アクセス日時
- エントリ更新日時
の4つの種類があります。また、$FN属性として、同じ4種類があり、全部で8種類あります。
タイムスタンプの調査ツールとして、FTEを使いました。
また、時刻の改ざんをするツールとしてChange Timestampを使用しました。このツールを使うと、ファイルのプロパティに表示される時刻を変えることができます。
ただし、変えることができるのは$SI属性のみで、先ほど使ったFTEを使うと、$FN属性のタイムスタンプは変わっていないことが分かります。
フォレンジックをする上で、時系列の概念はとても大切なので、改ざんされていることを考え、前もって改ざんされていない情報を使うことが大切になってきます。
代替データストリームについて
ファイルに対して、通常目に見える部分のデータ領域とは別のデータ領域を持たせる技術のことで、マルウェアの潜伏先として利用されることもあります。
エクスプローラーや通常のdirコマンドでは見つけることはできず、dirにrオプションをつけることで見ることができます。
今回使ったツール
- AccessData FTK Imager
- WinPrefetchView
- Autoruns
- FTE
- Change Timestamp
感想
セキュリティキャンプやHardningなど、セキュリティのイベントにはいつも協賛や後援として名を連ねている企業のインターンシップに参加でき、とても楽しめたので、いい経験になったと思います。
JSOCというセキュリティ監視サービスの心臓を見ることが出来たのもとてもいい経験になったと思います。2交代制で24時間監視…大変そうだけどやりがいがありそう!
フォレンジックエンジニアという言葉があることすら知らなかったのですが、このお仕事は日々勉強という言葉が一番ピッタリくるなと思いました。OSからシステムファイル、言語の構造とロジックに関する知識、脆弱性診断に対する知識など、幅広い知識が求められます。私も普段MacかLinuxしか使っていないため、Windowsでの調査はなかなか苦戦しました。
知識だけでなく、経験がものもいう仕事でもあり、目grepではないですが、一瞬見ただけでここが怪しいと分かってくるとおっしゃられていました。
実際にハンズオン形式で実習ができたことが何よりも楽しかったです。最後に講義内容と全く関係のないミニCTFをやりましたが、なかなか解けず…悔しいです。
終わりに
地方に住んでいると、勉強会やインターンシップを含めこういった勉強はなかなかすることが出来ません。ましては、セキュリティを主体で頑張っている企業もあるのかどうか…
LACの関係者の皆様こういった機会を与えていただき、本当にありがとうございました。
これがマルウェアだ!と分かった時には、少し嬉しかったです^^
セキュリティミニキャンプinやまなし 参加してきました!
セキュリティミニキャンプinやまなしに参加してきましたのでご報告します!
今回、何が辛かったかって。
新潟大学から山梨大学までの片道362キロの運転ですよ…往復で700キロ越え。新潟から岡山までいける(笑)
日帰りはなかなか無謀な挑戦でした。
いつか、交通費が出るような大会になってほしいです(笑)
目次
セキュリティミニキャンプとは
趣旨は次のようです。
全国大会により多くの学生にチャレンジいただくため
若年層を対象とし情報セキュリティ人材育成に関心の高い地域で地方大会を開催しています。次回全国大会参加を目指している学生さんはぜひ応募して下さい。
なるほど、、、もう全国大会の年齢制限を超えてしまっているんだがな(笑)
全国大会行きたい〜〜!
inやまなし
会場は山梨大学の工学部でした。
富士山が見えない…
結構楽しみにしていたのに。。笑
講義内容
手作りパケットでWebサーバと通信しよう
講師は美濃さんでした。
実際に通信の仕組みやパケットについては学習していたのですが、WiresharkでTCPヘッダの中身を見てみたり、接続を確立してから切断するまでのことを考えたことがなかったため、本当に勉強になりました。
- 3-way handshake
- HTTP通信
- Close
といった手順でNetcatとPython、Scapyで作っていきました。
普通にSYNを投げてしまうと、SYN/ACKが返ってきて、端末は投げた記憶がないのにSYN/ACKが返ってきたため、RSTパケットが送信されてしまうため、iptablesでRSTパケットの送信を遮断する必要があります。
後は、Seq番号とAck番号の変化を考え、送るパケットの順番通りに書いていくといった感じです。
ローカルプロキシで遊ぼう
講師は庄司さんでした。
正直、プロキシは聴いたことあったけどそこまで詳しくはなかったのですが、150分という短い時間でしたが、だいぶ詳しくなれた気がします。
プロキシとは、簡単に言うと
- ブラウザからみたらサーバのふりをする
- サーバからみたらブラウザのふりをする
本当、これに尽きるなと思いました。
Node.jsとJavaScriptを使って実装していきました。雛形をもらい、そこから広げていく感じでハンズオンを行いました。
- 文字列の置換
- Basic認証の回避
頭では理解して、こうだ!って書くのですが、どうしても通らない、、、JavaScript分かりません(笑)書き方が問題で、なかなかできず。。悔しいです。
任意課題まで進めずに…
後で自分でやってみたいなと思いました。
感想
どちらの講義も本当に面白かったです!
パケット送信を実際に行うと、教科書で読んでいたSYNやACKがこうなってるのかというところまでよく分かりました。
また、ローカルプロキシもとっても楽しく、後で付け足したい機能をどんどんつけていき、自分だけのプロキシを作れたらいいなと思いました。
おわりに
講師の方、チューターの方を初め、協賛や後援の団体の方、本当にありがとうございました。
やっぱり、ハンズオン形式で学べるのは手が動かせるぶん、頭に入ってくる気がします。
地方に住む学生としては、なかなか勉強会に参加できる機会がないので、こういった勉強会に無料で参加できることは本当に嬉しいことです。
盛岡も応募してみたいが、交通の便が。。
地方大会、違う地方から参加しようとするととてつもなく大変です。
いつか新潟でも開催してほしい。2015年にはあったようですが。また、ぜひ!
記事
アピリッツのインターン行ってきました!
アピリッツのインターンシップに2週間行ってきましたので、ご報告します。
目次
(株)アピリッツについて
いわゆるWeb屋さんです。主にRuby on Railsを使ってWebサービスを提供しています。また、Unityを用いて独自のゲームタイトルを配信していたり、Webセキュリティに関する部門があったりと、ゲーム会社のような様々な側面を持っています。
様々な会社と取引があるようで、たくさんの受託開発をしてる印象を受けました。
会社自体はとてもホワイトだなという印象が強かったです。実際に2週間通いましたが、残業している人はほとんどいなかったように思います。私がアルバイトしている某N◯Kとは大違いだ…
本社は原宿にあり、従業員は200人ぐらいいるようです!
インターンシップについて
内容はいたってシンプルで、「参加者全員でWebサービスを制作する」というもので、Ruby on Rails を用いてWebサービスを作るといったものでした。
報酬は時給1000円、交通費は1日2000円まで支給といった大変嬉しいインターンシップでした。新しいMacBookでも買いたいな。
開発について
今回は4人のチームで2週間かけて開発を行なっていきました。
私たちのテーマはずばり「団体管理ツール」です。事前に自分が考えていた案をチームの方々がいいねといってくれたので、スムーズにテーマが決まりました。他の班ではテーマが決まるまでに2日かかったところもあるとか、、、
早い段階でテーマを決めることができたので、2日目の制作物発表の時にはもうすでにプロトタイプが作れ、デモを見せることまで出来ました。見せれたおかげで、元々は1つの団体を想定していましたが、ここで複数の団体用まで作れると見込まれて、複数団体の管理が目標となりました。
1週目の中間発表で1つの団体管理の大まかな機能は作り終わり、2週目で複数団体にシフトしていきました。元から複数想定で作った方が簡単だったような気も…笑
最終的に完成したアプリのスクリーンショットはこちらです。
主な機能は、
- ログイン機能
- カレンダー機能
- お知らせ機能(掲示板)
- コメント機能
といったところです。そのうちソースはGitHubにあげたいと考えています。
管理者に入団申請するとメールが届いたり、団体を検索できたり、カレンダーに投稿すると掲示板にも反映されたり、、、たくさんの機能をきちんと実装してあります!我ながらすごいよくできてると思う!
[GitHub]
私は、主にお知らせ機能とコメント機能を実装しました。また、チームのみんなが開発しやすいような環境設定や、画面推移などの設計を担当しました。もう少し綺麗に作れた気もします。。
主に使ったGemはdeviseのみで、優秀なチームメイトがGemを使わずにカレンダーを作成していました。
感想
Rubyは使えるのですが、Ruby on Rails はほとんど触ったことがないようなフレームワークでしたが、本当に使いやすいMVCフレームワークであるなと感じました。
ただ、コントローラーの使い方がまだいまいちわかっておらず、ビューの中で
<% @group = Group.where("id = ?", current_user.state_group_id).first %>
このようにDBを呼び出して書いてしまっている部分があるため、うまくコントローラーを使うことができたらなと思いました。
これからも修正を加えていきたいです。
最後に
アピリッツの方々には、いい体験をさせていただいて本当に感謝しています。4人でうるさく話し合ってしまったりなど、結構迷惑をかけたかもしれませんが、大変楽しく、濃い2週間が送れたと思います。
また、チームの方々にも大変感謝しています。初めてあったのに、本当に協調性が高く、役割分担もきっちり別け、2週間という間でしたが納得のいくものが作れたと思います。