リモートワークのセキュリティ強化のためにAkamai Enterprise Threat Protector(ETP)を導入した

SRE Group Managerをしている前田(@glidenote)です。最近SRE業務以外にOffice IT Security関連の業務を一部兼任しており、先日Akamai社の提供するOffice IT Security製品のAkamai Enterprise Threat Protector(以下 ETP)を導入したので、紹介したいと思います。

TL;DR

  • オフィス、リモートワークのセキュリティ強化のためにAkamai ETPを導入した
  • DNSクエリを識別し、マルウェア、ランサムウェア、フィッシングなど悪意のあるドメインとの通信を遮断することでセキュリティのリスクを緩和
  • どのネットワークにいてもAkamai ETPを利用すること悪意のあるドメインとの通信が遮断出来るので、リモートワークに最適なソリューションである

背景

  • 当社はリモートワークを採用しており、オフィスもありますが、多くの社員は自宅などからリモートで働いている
  • 社員に支給している全PCにはセキュリティソフトは導入済み
  • 社内でセキュリティ規定を設けており、これまでセキュリティに関して問題が発生したことはない

今回のAkamai ETPの話とは別の話ですが、自社で開発しているWEBサービスについても定期的に第三者のセキュリティ専門会社に依頼し外部脆弱性診断を実施しております。

導入のきっかけ

上にも書きましたが当社ではセキュリティに関してこれまで問題は発生していないのですが、リモートワークを採用しておりオフィスネットワーク外での活動が多く、どのような通信がされているのか管理出来ない関係上、万が一問題が発生しても被害を小さくとどめる方法を以前から漠然と模索しておりました。

そんなときに、Kaizen Platformの元同僚で現在SmartNews社のCorporate Engineering Teamで働いているyosudoさんからAkamai ETPの情報を入手し、調べてみたところ製品の特徴が求めているものと合致し、トライアルで期待通りの結果が出たため導入に至りました。 SmartNews社もAkamai ETPを導入済みで、導入の経緯をブログで公表されています。

Akamai ETPとは

公式サイト Enterprise Threat Protector | Akamai から引用すると

ドメイン・ネーム・システム(DNS)を悪用するマルウェア、ランサムウェア、フィッシング、データ窃盗など、標的型脅威を事前に特定してブロックし、緩和することができます。

とのことで、悪意ドメインとの通信をDNSを利用し遮断し、セキュリティのリスクを緩和するものになります。

f:id:kaizenplatform:20180711172646p:plain

公式の概要図から説明をすると

  1. Akamai ETPを利用することで、参照先のDNSサーバがAkamaiのものになる
  2. Akamai側ではエンドユーザーから送信されてきたDNSクエリをデータベースと照合し、問題があるドメインの場合には、IPアドレスを返さず、エンドユーザーと問題のあるドメインとの通信を遮断する

Akamai ETPの特徴

  • 導入の形式は2パターン
    • オフィスネットワークのGWの参照先DNSをAkamai ETPに向ける
    • 各PC端末にクライアントソフトの導入
  • CDNの会社のDNSサーバなので堅牢且つ高速
  • 他のセキュリティソフトと異なり、PCが重くなることがない

nslookup(1)でAkamai ETPの動作を見てみる

Akamai ETPのパケット解析やDNSサーバのベンチマークなどはSmartNewsさんのブログに記載してあるので、nslookup(1)を利用して、挙動を確認してみます。

挙動確認には、Akamai ETPの遮断対象であるcoinhiveのサイトを利用してみます。結果については一部マスクをしてます。

Google Public DNSを利用した挙動

⇒  nslookup
> set debug
> server 8.8.8.8
Default server: 8.8.8.8
Address: 8.8.8.8#53
> coinhive.com
Server:         8.8.8.8
Address:        8.8.8.8#53

------------
    QUESTIONS:
        coinhive.com, type = A, class = IN
    ANSWERS:
    ->  coinhive.com
        internet address = 104.20.xxx.xxx
        ttl = 299
    ->  coinhive.com
        internet address = 104.20.xxx.xxx
        ttl = 299
    AUTHORITY RECORDS:
    ADDITIONAL RECORDS:
------------
Non-authoritative answer:
Name:   coinhive.com
Address: 104.20.xxx.xxx
Name:   coinhive.com
Address: 104.20.xxx.xxx

Akamai ETPを利用した挙動

  • PCにクライアントソフトを導入している状態だと、参照先DNSが 127.0.0.1 になる
  • 返ってくるIPアドレス 2.21.xxx.xxx はAkamaiの管理するものになる
  • ADDITIONAL RECORDS にtext = "ETPB" が入ってくる
⇒  nslookup
> set debug
> coinhive.com
Server:         127.0.0.1
Address:        127.0.0.1#53

------------
    QUESTIONS:
        coinhive.com, type = A, class = IN
    ANSWERS:
    ->  coinhive.com
        internet address = 2.21.xxx.xxx
        ttl = 10
    AUTHORITY RECORDS:
    ADDITIONAL RECORDS:
    ->  coinhive.com
        text = "ETPB"
        ttl = 1
------------
Non-authoritative answer:
Name:   coinhive.com
Address: 2.21.xxx.xxx

curl(1)だとAkamaiのerrorページに飛ばされるようになっているのが確認出来ます。

⇒  curl -I --verbose coinhive.com
* Rebuilt URL to: coinhive.com/
*   Trying 204.237.xxx.xxx...
* TCP_NODELAY set
* Connected to coinhive.com (204.237.xxx.xxx) port 80 (#0)
> HEAD / HTTP/1.1
> Host: coinhive.com
> User-Agent: curl/7.60.0
> Accept: */*
>
< HTTP/1.1 302 Found
HTTP/1.1 302 Found
< Cache-Control: no-store
Cache-Control: no-store
< Location: http://error.etp.akamai.com/error.html?lang=en&host=coinhive.com&uri=%2F&source=219.98.xxx.xxx:63350
Location: http://error.etp.akamai.com/error.html?lang=en&host=coinhive.com&uri=%2F&source=219.98.xxx.xxx:63350
< Date: Wed, 11 Jul 2018 08:00:42 GMT
Date: Wed, 11 Jul 2018 08:00:42 GMT
< Content-Type: text/plain; charset=utf-8
Content-Type: text/plain; charset=utf-8

<
* Connection #0 to host coinhive.com left intact

DNSクエリ、脅威の可視化

下記は当社の実際のAkamai ETP管理画面のキャプチャですが、従来から利用しているセキュリティソフトだと分からなかった脅威が、Akamai ETPだと可視化出来、普段どれくらい脅威にさらされているのか分かるようになりました。 こういうデータがあるとセキュリティの啓蒙活動がしやすいで助かります。

f:id:kaizenplatform:20180711173930p:plain

f:id:kaizenplatform:20180711174107p:plain

導入前後で変わったこと

PCにインストールするセキュリティソフトだと、どうしてもPC自体の動作が重くなりがちです。Akamai ETPはクライアントソフトを導入してもやっていることは参照DNSサーバを変更しているだけなので、PC側の負荷も無く良い意味で導入前後で変化がありませんでした。

参考

Datadog Log ManagementでNginxのエラーを監視する

SRE Group Managerをしている前田 (@glidenote)です。 弊社では先日監視システムを刷新し、Datadogを全サーバに導入し、今年3月にDatadogから正式リリースされたDatadog Log Managementを利用しNginxのエラー監視をするようにしました。今回はその件について紹介します。

続きを読む

人事(非エンジニア)が Git を使ってエンジニアとデザイナーと採用サイトを作った話

Kaizen Platformで人事(HR)をしている nanayu です。 今回は、採用サイトを社内のエンジニアとデザイナーと一緒に開発したよ、という話を書かせていただきます。

f:id:kaizenplatform:20180622102559p:plain

続きを読む

エンジニアリングによる 4 つの育児支援で育児も KAIZEN する

Kaizen Platformのアプリケーションエンジニアの大迫です。

Kaizen Platformは「21世紀の新しい雇用と働き方を創出する」プラットフォームを作る事をビジョンとして揚げています。 そういった新しい働き方を作っていくため、まずは我々自身がそのような新しい働き方をドッグフーディングしようということで、創業期から様々な努力を積み重ね「自由と責任」をもった上で、一人一人が最大限にパフォーマンスを出せるような新しい働き方に挑戦しています

私自身も3歳と0歳の子育てをしながら子育てをしている妻を支援しながら働いていますが、リモートワークなどによって、柔軟に働くことができるKaizen Platformの環境のおかげでとても助かっています。 本ブログでは会社で取り組んでる内容に関することが多いですが、たまには趣旨を変えて、この投稿では、新しい働き方に挑戦するかたわらで、我が家でやっている妻の子育て支援のうちエンジニアリング的な要素があるものを4つ紹介していきます。

続きを読む