wasbook reading #12 / 「体系的に学ぶ 安全なWebアプリケーションの作り方」を読み終えた

「体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践」を読了した。けっこう前に。
読み終えるのに半年以上掛かってしまった。それでも id:Kango と一緒に読めて、ひとりで読むよりずっと多くのことを学べた。そもそもひとりだったらいまでも読み終えていなかった気がする。積ん読になって。

というわけで、これは「体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践」読書会の第12回のエントリ。今回読んだのは以下の範囲。

  • 8章 Webサイトの安全性を高めるために
    • 8.1 Webサーバーへの攻撃経路と対策
    • 8.2 成りすまし対策
    • 8.3 盗聴・改ざん対策
    • 8.4 マルウェア対策
    • 8.5 まとめ
  • 第9章 安全なWebアプリケーションのための開発マネジメント
    • 9.1 開発マネジメントにおけるセキュリティ施策の全体像
    • 9.2 開発体制
    • 9.3 開発プロセス
    • 9.4 まとめ

8章 Webサイトの安全性を高めるために

8.1 Webサーバーへの攻撃経路と対策

この章に書いてあることが理解出来ない人は、WebサイトやWebアプリケーションを公開しないほうがいいと思う。でもそういうサーバはたくさんあって、ちょっと探せばすぐに見つかってしまうけど。
といってもすごく難しいことが書いてあるわけではない。

  • サービス提供に不要なソフトウェアは稼働させない
  • 脆弱性の対処をタイムリーに行う
  • 一般公開する必要のないポートやサービスはアクセス制限する
  • 認証の強度を高める

でもこれらを継続的に実施するのはけっこう大変。だからこそ注意するべきなんだけど。

8.2 成りすまし対策

ネットワーク的な成りすましとして「DNS に対する攻撃」と「ARP スプーフィング」について。
ARPスプーフィングの実例としては、これが有名だと思う。

あとはフィッシングとか、SSLとか。
この章を読んではじめて知ったんだけど、無料で証明書を作ってくれるところがあるみたい。自分でなにかを公開するときには使ってみたい。やっぱりSSLがあると、安心できるし。

サーバー証明書のうちドメイン認証証明書は比較的価格が安く、購入のハードルが低いものですが、ド メイン認証証明書には無料のものもあります。イスラエルStartComという企業は、無料のサーバー 証明書を発行しています。IEFirefoxGoogle ChromeSafariOperaの最新版で証明書エラー なく使用できます。IE6でもアップデートが当たっていれば使用できます。 ドメインの認証および暗号化の目的には支障なく使用できるので、証明書費用がネックでSSLを導入で きないケースや、正規でない証明書(自己署名証明書、いわゆるオレオレ証明書)を用いている場合は、無 料サーバー証明書の導入を検討するとよいでしょう。 StartCom社のサーバー証明書は、日本の携帯電話には対応しておらず、携帯電話のブラウザから接続 するとエラーになります。携帯電話からのHTTPSアクセスが必要な場合には、StartCom社のサーバー 証明書では対応できません(2010年12月1日確認)。

体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践
8.3 盗聴・改ざん対策

いろいろあるけど「中間者攻撃(Man in the Middle Attack)」で、去年のこれは衝撃的だった。

最近ではスマートデバイスのアプリケーションが、勝手に情報を送ってしまうケースが問題になっている。これも盗聴のひとつと言えるかもしれない。

8.4 マルウェア対策

Webサーバが感染しないように、Webサーバからマルウェアをばらまかないように気をつけよう。

8.5 まとめ

セキュアな状態を保つためには、継続的に対応していくことが大切だと思う。あと、常に対応し続けるのも難しいので、WAF(Web Application Firewall)を入れるなり、IDS(侵入検知システム)を入れるなりして、運用を楽にすることも大切だと思う。

第9章 安全なWebアプリケーションのための開発マネジメント

9.1 開発マネジメントにおけるセキュリティ施策の全体像

このあたりのことは、情処のセキュリティスペシャリストに出てくる内容に近い。上流からちゃんと考えましょう、という感じ。

9.2 開発体制

wasbookを読んだことのある人達でチームを組めたらいいな、と。

9.3 開発プロセス

発注側としてはこちらも参考になるかも。僕は読んでいないけど。

9.4 まとめ

セキュリティについて、しっかり考えてやりましょう。

まとめ

開発者としてのメインはやっぱり4章だったので、最後のほうは軽めに。
こんな本がでてくれて、ほんとうに助かる。僕は書籍版を買って、そのあと電子書籍版(PDF)も買った。それくらい価値があるし、よく使うと思った。家に書籍があって、普段使うMacBook AiriPadと会社のPCに電子書籍版がある。気になったらすぐに見れるし、PDFを検索できる。
これを読み終えるのは、正直けっこう大変だった。それでもエンジニアとして最低限知っておかなくてはいけないことばかりだった。
この本ではセキュリティを「体系的」に学べる。ま、読み終えてゴールでは全然なく、これを読み終えてある程度理解したところが、スタートなんだけど。セキュリティは難しい。でも避けては通れない。


wasbookに関するものは、こちらのタグで。


これまでののメモはこちら。



電子書籍版はこちら。