本連載の1回目および2回目では、Webアプリケーションの脆弱性について例を挙げて説明した。第1回にも書いたとおりWebアプリケーションの脆弱性を防御することができるのは、セキュアプログラミングとWebアプリケーションファイアウォール(WAF)である。 セキュアプログラミングが、アプリケーションプログラム自体の対策方法であるのに対して、WAFはアプリケーションからは独立した外付けの対策である。これら2つは排他的な関係にあるわけではなく、WAFはセキュアプログラミングを補完するものであるといえる。 プログラム自体をセキュアに作成していくことは、どのWebアプリケーションにおいても必要である。しかし、現実的にはWebアプリケーションのすべての脆弱性をセキュアプログラミングだけで防ぎきれるものではない。そこで必要となってくるのがWAFであり、セキュアプログラミングとの2重の防御によって脆弱性にさら
![WAFはどのように脆弱性を防御するのか](https://cdn-ak-scissors.b.st-hatena.com/image/square/3ad90a0da313c101b9a94db5bc3492e5af5aa7c6/height=288;version=1;width=512/https%3A%2F%2Fimage.itmedia.co.jp%2Fait%2Farticles%2F0603%2F02%2Fr1201.gif)