PHP Security
Memcachedのプロトコル仕様とセキュリティ – Memcachedでもインジェクションが可能
Memcachedはテキストプロトコルとバイナリプロトコルの二種類を持っています。デフォルトはテキストプロトコルです。テキストプロトコルを利用している場合、テキストインターフェース処理の基本を理解した上で利用しないとセキュリティ問題が発生します。こういった処理のセキュリティ対策を行う、確認するには実は標準の方が簡単で明解 – セキュリティ対策の評価方法も参考…
実は標準の方が簡単で明解 – セキュリティ対策の評価方法
なぜセキュリティ対策の区別が異なるのか?長年疑問だったのですが、その理由の一つが判りました。
IoT時代のセキュリティ対策に必須 – ISOでも定義する入力バリデーションの方法
項目を切り出して独立したブログエントリにしておく方が良いとおもい書きました。IoT時代(IoT時代でなくてもですが)に最も必要なセキュリティ対策は厳格な入力バリデーションです。 IoTソフトウェアのバージョンアップは非常に困難、不可能である場合も多い ソフトウェアには未知の危険性が存在している セキュリティ対策としの入力バリデーションはIoTでは更に厳格に行…
ニュートン力学と相対性理論 – エンジニアに見られるセキュリティ対策理解の壁
以前からセキュリティ対策の本質や定義について何度かブログを書いたり、講演もしてきましたがなかなか理解できない方も多かったです。その構造は ニュートン力学と相対性理論の理解の壁 これと似ているのでは?と思い書き始めました。「エンジニアのセキュリティ対策理解の壁」は「ニュートン力学と相対性理論の理解の壁」と同類ではないでしょうか? 特に入力バリデーションはセキュ…
ホスト名バリデーションのやり方
徳丸さんのブログで私のブログ「GHOSTを使って攻撃できるケース」にコメントがあったようなので、ホスト名バリデーションの方法を書いておきます。
Software Design 2015年2月号とインフラエンジニア教本
久しぶりのSoftware Design (ソフトウェア デザイン) 2015年 02月号 [雑誌] に寄稿させていただきました。テーマは「開発者は、セキュリティ問題を自己解決できるのか?」です。Software Designの見本と一緒に別冊の「インフラエンジニア教本 ~ネットワーク構築技術解説 (Software Design 別冊)」も頂きました。こち…
SQLiteデータ型の仕様とセキュリティ問題
SQLiteはファイルベースのオープンソースRDBMSです。オープンソースとしては珍しいパブリックドメインライセンスを採用しています。SQLiteはファイルベースなのでデータベースサーバーが必要なく手軽に利用できます。SQLiteは組み込みデバイスで広く利用され、Android/iOSなどでは標準的なデータベースとして利用されています。モバイルデバイス以外で…
安全なAPI過信症候群 – 普通のRDBMS編
昨日書いた安全なAPI症候群の処方箋 – execv/SQLite3編はSQLiteの仕様がRDBMSとしてエキゾチック過ぎ、さらっと書いたよくあるRDBMSでの「安全なAPI症候群」を全く理解して頂けなかったケースもあるようなのでもう一度書きます。 プリペアードクエリには色々問題もあり、セキュリティ対策としてそれだけ教えるのはNG、と考えている方はプリペ…
安全なAPI過信症候群の処方箋 – execv/SQLite3編
またプリペアードクエリなど、安全とされるAPI万能と考えている方に会ったのでエントリを書きました。広く病気として治療すべき、と思いエントリを書きました。 安全なAPI過信症候群(同類にプリペアードクエリ過信症候群):「安全」とされるAPIを使えば安全と、盲目的に信用し考慮すべきリスクを考えない症候群。ITエンジニアが発症し最も重要なセキュリティ対策である入力…
PHP/Apache httpdのファイルアップロード/ダウンロード処理
最近、ファイルアップロード対策に関する検索が増えているようなので書きました。PHPの場合、スクリプトがアップロードされ実行されてしまうと致命的です。アップロードされたファイルを公開ディレクトリに保存することは好ましくありあせん。しかし、既にそうなっているアプリケーションの場合、改修が困難な場合もあります。