セキュリティー知恵袋 > Apache Struts(あぱっちすとらっつ)って何?

Apache Struts(あぱっちすとらっつ)って何?

ここはとある中小企業。
今月からECサイトに携わることになった、ひらのちゃん。
WEBの知識はさっぱりな彼女がECサイトのセキュリティーに立ち向かう!ストーリーです。
気合と根性で乗り切れる…のか。
初心者の方でも簡単にわかる、かつ大事なセキュリティー知識をお届けします。
 
※この話はフィクションです。物語にでてくる会社はISAOではありません。

~とある中小企業の会議室~

結構えらい人:
最近ある会社のクレジットカード支払サイトで、第三者の不正アクセスがあったかもしれないというニュースを見たな。
なんでもApache Strutsの脆弱性を突かれたそうで…我が社のECサイトも気をつけないといけないな。
ひらのさん、うちのは大丈夫だよね?もちろん対策してるよね?
ひらの:
(あぱっち・・すとらっつ・・・?( ^ω^)・・・???)
は、はい!もちろんです。あぱっちすとらっつなんて全く問題ありません!!!
そこそこえらい人:
そうか、そうか。それは安心だな。うちみたいな中小のサイトが攻撃されたら一発で会社が潰れちゃうから、そのくらいは当たり前にやっているか。はっはっは^^
ひらの:
(やばー…全然わからないのにとりあえず大丈夫って言っちゃった。とりあえず後で誰かに聞けばいいか。)
任せてください。はっはっは…はは(´・ω・`)

~社内~

ひらの:
すがわらさーん!!!助けてください。一大事です!私適当過ぎて首になるかもしれあまんすえうsjdめrjれlk;。
すがわら:
えっと、一旦落ち着いてもらえますか。訳が分からないので。
ひらの:
すみません(´・ω・`)
すがわら:
で、何が一体一大事なんですか?
ひらの:
あのですね、さっきWEBの会議であぱっちすとらっつの脆弱性についてAさんから尋ねられて対応問題ありませんって言っちゃったんですけど、何のことだかさっぱりでして。うちのWEBってあぱっちすとらっつの対策くらいしていますよね?そもそも何を言っているんですか?
すがわら:
…。君は事の重大さを全く分かっていないね。そもそも馬鹿みたいに「あぱっちすとらっつ」って日本語で書くことはやめた方がいいと思うよ。正しくは「Apache Struts
ひらの:
(発音すれば同じなのに厭味ったらしい人。)
そうですね、すみませんでした♡
それで、Apache Strutsって何ですか?脆弱性ってなんですか?脆弱性があったらどうなりますか?どうやって対応したらいいのですかーーーー!このまま何もしないと私クビになっちゃうかもしれません><
すがわら:
(面倒くさい・・・)
一度にそんなにたくさん言われても答えられません。一つ一つあなたでもわかるように答えていくので、ちゃんと頭に叩き込んでください。
まずApache StrutsとはオープンソースのJava Webアプリケーションフレームワークです。
ひらの:
へー…そうですか(´・ω・`)で、それって何ですか?
すがわら:
…本当に何も知らない人ですね。よくそれでWEBサイトを担当できますね。
 
まず、フレームワークとは、様々なWebシステムの開発を行う際、開発作業を効率化してくれる機能やプログラムの骨格がまとめられたものです。
だからプログラムを書く際に、一から作るよりも少ない行数で済むんです。その反面、独自の決まりがあるため、学習コストはかかります。
 
そしてJavaはプログラム言語の一種です。
特徴としてプログラムを直接コンピュータが動かすのではなく、JVMという仮想マシンがコンピュータとプログラムの間を取り持つので、様々な種類のコンピュータに対応しやすい。
プログラム言語の中ではメジャーなものなので、採用されているシステムが多く、エンジニアの数も比較的多いです。
 
ということで、Apache Struts2はWeb上でサービスする様々なシステムをJavaで効率よく開発できるしくみということです。
料理に例えると、あらかじめ下ごしらえしておいた材料を使って、効率よく料理をつくるようなもの。
これだけかみ砕いて説明したら、ひらのさんでもわかりますよね?
ひらの:
なるほど!よくわかりました。
さすが、すがわらさんですね。
すがわら:
ま、このくらいの説明朝飯前ですよ。
それで、最近狙われているApache Struts2の脆弱性というのは、第三者が勝手にシステムを動かす事ができちゃうというもので、それが原因でWebサイトを書き換えられてしまったり、個人情報やクレジットカード情報などが盗み取られてしまったりするんですね。
先月もクレジットカードの情報流出する出来事があったと思いますが、この脆弱性をつかれたことが分かっています。
ひらの:
あわわわ。その脆弱性すっごくまずくないですか!?
第三者がシステム動かせるって何でもできちゃうじゃないですか!
脆弱性を修正さえすればいいんですかね?
すがわら:
それが簡単にはいかないのですよ。
根本的な対策は、「パッチファイル」という脆弱性の穴を塞ぐプログラムを適用し、Apache Struts2を最新の状態にすること
でも、それを適用すると他の部分に影響が出る可能性もあるので要注意ですね。

まあ今回はすぐに適用しないと攻撃に合う可能性が高いので、影響があってサービスが止まってしまうかもしれなくても最新の状態に適用すべきですね。
ひらの:
別の場所に弊害がでるかもしれないのですね。それでも今回は対応しなきゃいけない重要な脆弱性だということが理解できました。
勉強になります!
すがわら:
もし、脆弱性や不具合などのソフトウェアを修復するためのパッチファイルを適用して止まってしまった場合どう対処するべきなのかもあらかじめ決めておくとよいでしょう。
さらにテスト環境を用意し、迅速にテストができるよう、できればテストも自動化できるようにしておければなおよいけどそこまでできるかは会社の判断次第かな。
ひらの:
うちの会社だとテストの自動化までできるかな…担当の人に聞いてみよう。
今から対応することはわかりましたけど、その対応をする前に攻撃されちゃったら終わりですよね。
すがわら:
万一対処前に脆弱性を突かれて攻撃を受けたとしても、影響が広がらないようにするために、WAF・ウィルスチェック・サンドボックス等で攻撃に気付く仕組み、防ぐ仕組みを導入することも合わせて考えたい。
多分うちの会社でも何かしらの対応はしているから、後で聞いてみるといいよ。
ひらの:
攻撃受けても影響を最小限にできるように、色々対策はできるし会社でも対応しているんですね!
セキュリティー担当者のいわきりさんに、今どんな対策をとっているのか確認しなきゃ。
 
わふ?とかさんどぼっくす?とかまだまだ知らない単語がいっぱいで、頭がパンクしそうです。
今日はここら辺にしておきます。
すがわら:
先ほど述べた単語はWEBサイトのセキュリティー対策ではメジャーだし、必要なものだから勉強しておいた方がいいね。
ひらの:
(勉強ばっかりだけど仕方ないか。)わかりました!今日は色々ありがとうございました。
本当すがわらさんに聞いてよかったです。
すがわら:
べ、べつにこれくらいわけないですよ。君が何も対応しないでうちのサイトが攻撃されて被害に遭うのが嫌なだけだし。
ひらの:
(ツンデレか!)

次回に続く…のかも?

Tweet @mamoru_secureをフォローする
このエントリーをはてなブックマークに追加

その他のセキュリティー知恵袋