シンプルで更新もはやい。手間もなく、すごく使いやすいです。

Dozens ユーザー事例#3 株式会社ビットフォレスト 取締役 CTO 佐藤匡様

クラウド型Webアプリケーションファイアウォール(WAF)サービス「Scutum(スキュータム)」を開発する株式会社ビットフォレストの取締役CTOの佐藤さん。今回は佐藤さんにサービス開発の経緯から、Dozensの導入理由、そして今後のサービスについてうかがいました。
(聴き手:吉田パクえ)

吉田

株式会社ビットフォレストのスタートはどういった経緯だったのでしょうか?

佐藤

設立当初はWebサイト構築全般の手伝いをやっていました。

例えばWebのことが全然分からない人が「自分の商売をWebでやってみたいんだけど」というときに、それをトータルで手伝うというような仕事ですね。

一方で、趣味でハッキングとかコンピュータに侵入する技術とか情報セキュリティの技術にすごい興味があって、今のScutumっていうサービスの元になったWebアプリケーションファイアウォール(WAF)のソフトウェアを2002年〜2003年位に作りました。

Scutumができるまで

吉田

アプリケーションの言語は何で書いていたのですか?

佐藤

Javaを使って書いていました。

もともとJavaしか書く事が出来なかったので、アプリケーション作る時には、全てJavaで作業をしています。

Javaの良い点はApacheとかOpenSSLに脆弱性があった場合でも、OpenSSLとかに比べると、脆弱性が少ないところです。パッチでパッチレースのようになったとしても、OpenSSLを使わず、代わりにJavaでSSLをハンドリングしてあげるだけで、対応する事ができます。

今ではWebアプリケーションファイアウォールというのはSQLインジェクションなどを防ぐ事が主な用途になっているのですが、当時は、PHPやWebサーバのApacheそのものに脆弱性が見つかったりする事が結構ありました。任意のコードを実行されてしまう形で一発で侵入されてしまうような脆弱性のあるものが非常に多くありましたね。

発生する脆弱性は大抵、人がみればすぐ何かおかしいとわかるリクエストだったりするのですが、Webサーバを動かしてると、Apacheはそのままが読み込んでしまい機械語として実行してしまうので、なかなか(脆弱性を突くリクエストだということが)分かりづらい事が多いです。

そこで、Apacheだけでなく、人がチェックする事ができれば、この手のハッキングを回避できるのではないかと思い、httpを1度全てJavaのアプリケーションで受けて、チェックして確認した後にApacheに渡すという形のリバースプロキシサーバとしてソフトフェアを作りました。

吉田

それは、WAFを自分達のサーバを守るためだけに作成していたという事ですか?

佐藤

そうです。僕が安心して利用できるようにしようと思ったからです。当時はそれでビジネスをやろうとは全く思っていませんでした。

その後、2005年くらいから商用のサービスを作ることを考え始めていたのですが、今までセキュリティのアプライアンスを作った事がなかったので、どこからビジネスに変えていけばいいのだろうと考えていました。

そんな事を考えていた時に出会ったのが、セキュアスカイ・テクノロジーっていう会社の当時取締役か副社長かやっていた若林さんです。若林さんに会い、相談したことがきっかけとなって、WAFのサービスを本格的なビジネスとして開始することになったのです。

最初は2、3社に入れてもらうところから始めました。それが2009年の事で、今年で約5年間運営しています。順調に導入数が増えていて今では約550サイトに導入して頂いています。当時目標にしてたビジネスレベルまで無事到達する事ができました。現在は会社をはじめた当初から行っていたWEBシステムの構築のビシネスとScutumのビジネスで、割合的には半々位になっています。

吉田

2005年当時は、アプライアンスで提供することを考えていたのですか?
当時はセキュリティのシステムというと、アプライアンスが主流だった記憶があります。

佐藤

いえ。
アプライアンスで事業をすることは非常に大変だと分かっていたので、当初から別の方法にしようと話をしていました。

ScutumというWAFサービスは世界初のSaaS型なのです。
僕らのデータセンターにWAFがあって、お客さんのところには何も入れません。お客さんには、DNSでWebサーバのIPアドレスをうちのデータセンターのものに替えてもらうようにします。そうすると、一般ユーザのブラウザっていうのは、先ず僕らのScutumにアクセスする事になります。

その形を思いついたのも、僕がプロキシサーバを作って遊んでいた時に、インターネット上での体感速度は意外と遅くならないという経験をしていたからです。そうするとSaaS型でスモールスタートもできるし、導入がDNSを切換えるだけでできるので、お客様としても楽に導入できます。

Dozensはすごくシンプル

吉田

そろそろDozensの話をしたいのですが、現在、Dozensはどのように使われているのですか?

佐藤

Dozensは開発環境で使っています。
あと、2013年の夏の選挙の時、議員さんの個人Webサイトの運営の案件で利用しました。選挙期間中、Scutumを導入して頂き、万が一Webサーバが落ちたときにSorryページを出して欲しいという要望があったのです。

基本的にはScutumにはそういった機能がなかったので、急遽DozensのAPIを使って、死活監視しながら、メインのサイトが落ちてたらDNSのIPアドレスをSorryサーバに替えて、復活したらまた元に戻すという形で作りました。

要するにScutumはScutumで全くDozensのこと気にせず動かす事ができるように、Dozens側で、死活監視されたら切り替えるという形で、Sorryページの要件を満たしたみたいな感じですね。そのとき多分、2ヶ月ほどはずっと死活管理していたので結構DozensのAPIを叩かせて頂きました。

吉田

なるほど。その死活監視して切り替えるサービスを見せて頂けませんか?

佐藤

オープンソースにしてGitHubに置いてます。 (編注: 「DozensHA」として公開されています)

吉田

すばらしい。あとで早速みてみます。どうしてDozensを導入する事になったのですか?

佐藤

Dozensがすごくシンプルだからです。
シンプルという事は何に対しても重要だと思っているので、Dozensは本当にシンプルで使いやすいと思っています。DNSをWebブラウザから変更できるサービスはたくさんあるのですが、大体訳が分からないものが多いです。それと比べるとDozensは分かりやすくて、使いやすいです。

APIもとてもシンプルで使いやすいです。
Amazon(Route53)のAPIは、ヘッダの操作などが必要で面倒なことが多いんですよね。あと、DNSレコードのIPアドレスを変える操作をしてから実際変わるまでの早さはDozensのほうが早いです。Amazon Route53の場合はすぐに反映されるというわけではなくDozensに比べると遅いです。Dozensを使えば、スムーズに対応できるのでとても使いやすいです。

吉田

レスポンスがすごくいいですよね。

佐藤

そうなんです。特化したサービスなので、とても使いやすいです。

他社のDNSサービスも、使っている時にコントロールパネルなどを使うときに手間がかかることもあります。Dozensの場合は、手間をかけずにできるのですごく使いやすいです。でも、最初にDozensを知った時にも、使うことができるか半信半疑だったんですよね。

吉田

誰が運営しているかを知っていると、そう思ってしまうのかもしれませんね。
(編注:佐藤さんはDozens代表松田とは大学時代のサークルの同級生でお互いよく知った仲とのことです)

佐藤

そうですね。でも、僕はどのクラウドサービスが出てきても、すぐに信用したりしないタイプなんです。本当に大丈夫かなと暫く様子をみてたら安定して動いているようだったので、このサービスは大丈夫だろうと思い、その後、ずっと利用しています。

吉田

Scutumは現在、約550サイトで導入されているというお話だったのですが、導入サイトをもっと増やしていく予定ですか?(編注:2015年5月現在、導入数は1,000サイトは超えているとのことです)

佐藤

増やしていく予定です。
利用者数は2009年から安定して増えてきています。安定し増えていっているのが僕らが上手くいった1つの理由です。

スタートアップ企業の場合、サービスがいきなりユーザー数が増えた時に、サーバの管理にエンジニアが追われてしまうという事がよくあると思います。僕らは幸いそれがなく、徐々にユーザ数を増やしてきました。そうすることで、少しずつトラブルに対応しながら、サービスの品質も少しずつ高めながら安定してユーザー数を増やしてきています。

あとScutumで利用しているソフトウェアは、構成を1種類にしています。

吉田

シンプルですね。

佐藤

昔は、お客さんの要望に応じてそれをそのまま作っていたのですが、後で確認すると、このお客さんだけソフトウェア構成違うんだよなみたいになることが多いんですね。それが後々メンテナンスが困難になる原因となってきます。

なので、そういったときは、お客様に丁寧に説明しながら、ご要望のなかで実現できるものとそうでないものをわかりやすく説明させて頂いています。

吉田

なるほど。そういった対応は今までの経験からきているのですか?

佐藤

はい。今までの経験を生かしています。
最初は1人でもお客さんを取りたくて。1人のお客さんにも喜んでもらいたかったんです。でも今は、550サイトのお客さんがいるので、それを作るべきなのかどうかとうことも大事にしています。

例えば、ある機能を作ったときに、その機能を使う人が1%しかいなければ、それはもう作らないと判断するようにしています。そこから10%、20%になってきたら、作るようにするんです。

吉田

御社の場合は12年もされ経験も豊富ですけど、どの機能を実装するかというのは、スタートアップでサービスをスタートする場合の1つ悩みでもあると思います。

この機能を提供すると、これ位の人は喜んでくれるだろうっという判断はどのように決めているのですか?

佐藤

チーム内で判断していますね。
ソフトウェアやサービスは全部そうなんですが、機能は増え続けていきます。肥大化してしまうと、サービスが複雑なってしまい、新しいユーザが使い始めた時に、ごちゃごちゃしていて分かりづらくなってしまいます。だから、何を増やすかっていうのと同じ位に、何を減らすかっていうのも考えていこうと思っています。

脆弱性診断サービス「VAddy」のリリース

吉田

現在、新しいサービスを開発されていると伺いました。

佐藤

今度Scutumに続く、新しい情報セキュリティ系の新サービス「VAddy」を来週ぐらいに発表してα版をリリースしようと思ってます(編注:インタビューは2014年8月に行われました。VAddyは2015年5月現在既に公開されています)。それはJenkinsなどCIの中で、インジェクション系やXSS系など色々なセキュリティのテストをそのCIのサークルの中でやろうよっていう発想のサービスです。

通常、脆弱性検査をやる資金のある会社さんは、全部出来上がったあとに、本当のリリース前に検査を行うことが多いですよね。でもそれは資金のある会社の場合で、一般的なシステム開発では、そのやり方だとなかなか上手くいかないです。なので、普段からのサイクルの中で、セキュリティのチェックができるものを作りました。

吉田

そのサービスはすごくいいですね。

佐藤

ありがとうございます。
このアイデアは、僕と一緒に開発しているプログラマの市川(@cakephper)のものなのですが、彼が元々CIの中で脆弱性検査できたら面白いねって話をしてたんです。1年ほど前からその話自体はあったのですが、やっと今年になって実際にサービス作り始めました。

僕は実際に脆弱性診断を行う部分のコードをJavaで書いていました。市川はAPIサーバとかユーザがログインする管理画面側などをPHPで開発してくれています。

吉田

楽しみですね。いつリリースされるのですか?

佐藤

2014年内には間違いなく出ると思いますけど、α版のユーザのみなさんの評価次第でリリースのスケジュールも変わってくると思います。(編注:上の編注の通り既にリリースされています)

 

「Scutum」は、SQLインジェクションやクロスサイトスクリプティングなど、サイト改ざんや個人情報流出をもたらす悪質な攻撃からWebサイトを守る、世界初のクラウド型Webアプリケーションファイアウォール(WAF)サービスです。
2009年6月にサービス提供を開始。2010年より、クラウド型(SaaS型)国内WAF製品市場において4年連続シェア連続NO.1 * を獲得。2015年5月現在、国内1000サイト以上に導入されています。
https://www.scutum.jp/

 

「VAddy(バディ)」は継続的なセキュリティテストを実現するクラウド型Web脆弱性検査サービスです。JenkinsやCircleCI、TravisCIなどのCIツールと連携することで、開発の初期段階からリリース後まで何度でもセキュリティテストを実行することが可能です。
2014年10月に日本国内向けベータ版を、2015年5月には全世界向けベータ版をリリースしました。
http://vaddy.net/

株式会社ビットフォレスト 取締役 CTO

佐藤 匡 / 話し手

1998年よりネットワークやセキュリティ関連情報を提供するJUMPERZ.NETを運営。Guardian@JUMPERZ.NET(Web Application Firewall), MonjaDB(MongoDBのGUIクライアント)などのオープンソースのツールを開発している。DNS Rebinding(あるいはAnti-DNS Pinning)の分野では、Martin Johnsの原理をFLASHに応用しSocketインターフェースでの攻撃が可能であることを示したほか、http://www.jumperz.net/上では各種のDNS Rebinding攻撃を体験することができる、オンラインデモンストレーションを公開していたことでも知られている。さらに、スタンフォード大学のホワイトペーパーでも、彼のサイトをリファレンスとして引用。(http://crypto.stanford.edu/dns/)
著書に「ウェブアプリケーションセキュリティ(データハウス)」など。 2009年に、世界初となるSaaS型のWAFサービス、Scutum(スキュータム)をサービスイン。以後、日本国内のサイトのセキュリティレベルを上げるべく活動している。

株式会社co-meeting 取締役 CTO

吉田 パクえ / 聴き手

「パブリック クラウド えばんじぇりすと(略してパクえ)」を自称し、SIer/企業内情報システム部門/SaaSビジネスの立上げなどの職歴を活かしたベンダーにとらわれないクラウド活用の講演やセミナーをする傍ら、執筆活動、企業のクラウドアドバイザ、商品開発支援、マーケティング支援を行う。他にCompTIAの教育パートナーとしてクラウド時代の人材育成トレーニングの提供、IT系人材による地域活性活動、起業支援活動の支援で全国を駆け巡る日々。