徳丸浩のtumblrこの考え方、つまり「脆弱性対策はミクロな範囲で確認できることが望ましい」という考え方(以下「ミクロ派」)に、ぼくは共感します。徳丸さんが記事の最後でまとめられているとおり、「入力値検証による脆弱性対策は、検証と脆弱性発生箇所が離れるので、確認がしにくい」ためです。冒頭に引用した「ファイル名の確認」の例においては、「確認の第一歩として文字エンコーディングの妥当性検証が必要になる」というのがミクロ派、「そんなの入口でやればいいじゃん」というのがマクロ派です。少なくともぼくの理解ではそう。2009-09-10に、以前のブログで書いた「不正な文字列をどこでチェックすべきか」でも、ぼくはミクロ派の立場に立っていました。当時いただいたはてブコメントは、マクロ派のご意見ばかりだったんですよ。ぼくが省力化したくなったら、入口以外では「validな文字列型」や「フォルダ名型」で扱うと思います。不正なバイト列であれば、インスタンス化できなくすればよいわけです。これなら、ミクロ派のぼくでも安心です。型のない言語は使いません。Iwamoto@iwamotENECHANGE株式会社VPoT兼CTO室マネージャー。Operations)。CODT2024/CNDW2024運営委員。Japan技術サポート。AWS認定とIPA試験の全区分に合格。