カテゴリー
Computer Development PHP Security Security

なぜセキュアなシステムが作れないのか?

なぜセキュアなシステムが作れないのか?この問いは

なぜバグフリーのシステムが作れないのか?1

と同類の問いです。一定規模を超えると完全にバグ/問題がないシステムを作るのは非常に困難です。どのような状況でも正常に動作する完全にバグ/問題がないシステムは簡単には作れません。しかし、バグ/問題がないシステムが容易に作れないからといって「体系的な対策を行わない」のは賢明なアプローチではありません。

このエントリではよりセキュリティ問題が少くなるアプローチを紹介します。これはセキュリティ標準やガイドラインに記載されている考え方をまとめたモノです。

ポイントは

  • 構造化が大事
  • 基礎が大事
  • 目的が大事

です。

カテゴリー
Computer Security

WordPressをできるだけ安全に使うプラグイン

このブログで利用しているセキュリティ関係のプラグインを紹介します。こういう情報はあまり公開しない方が良いのですが、本気の攻撃者の場合はプラグインファイルの存在を総当たりで検出すれば判ってしまいます。

カテゴリー
Computer Development PHP Security Security

ソフトウェア開発環境のセキュリティ対策

ソフトウェアの開発環境は通常の環境と違う対策が必要です。その理由は開発環境には

  • 他人が書いた未検証のモノ
  • 自分が書いた実験用のモノ
  • 他人または自分が書いた作りかけのモノ
  • 制御された環境での利用を前提としたモノ
  • 意図的に利用している新しいモノ(リリース前のソフトウェアなど)
  • 意図的に利用している古いモノ(古いシステムサポートためなど)

※モノにはコード/ライブラリ/ツール/アプリ/システム などがあります。

などがある為です。開発環境はその他の環境に比べ「とにかく危険なモノがいっぱい」です。

更に最近ではソーシャルコーディングが当たり前になり、他人が書いた未検証のコードがどんどん実行される状態も当たり前です。それも1つ2つのライブラリではなく、依存性から何百、場合によっては何千というライブラリなどが自動的にダウンロードされ実行されています。

これがどういう状況かというと「PCがやっと使えるくらいのユーザーが、インターネットからプログラムをダウンロードしまくって実行している状況」とあまり変わりません。

参考: SOHO・家庭の安全なネットワーク環境2018

カテゴリー
Computer Development PHP Security Programming Security

OWASPに対して失礼な誤解 – 入力バリデーションは重要なセキュリティ対策

OWASPに対して大変失礼な誤解をしている意見を見かけたのでブログに書いておきます。

ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~ from Hiroshi Tokumaru

OWASPは「入力バリデーション」とても重要な「セキュリティ対策」として考えていますが、OWASP的にはセキュリティ対策ではない、少なくとも重要なセキュリティ対策ではない、というとんでもない誤解はOWASPに対して大変失礼な誤解と言えます。

カテゴリー
Computer PHP Security Programming Security

「黒い」セキュリティだのみは捨て去る

「黒い」セキュリティとはブラックリスト型セキュリティのことです。

ブラックリスト型セキュリティとは「ブラックリスト型対策でセキュリティを維持しよう」とする概念です。セキュリティ対策では、ブラックリスト型対策はできる限り使わず、可能な限りホワイトリスト型対策を使う、が基本です。しかし、ブラックリスト型の「黒いセキュリティ」対策が理想的な対策である、と考えている人が少くないようです。

「黒いセキュリティ」に頼ったITセキュリティは基本的に捨て去るべきです。

カテゴリー
Computer Development PHP Security Programming Secure Coding Security

個々の脆弱性に対応する効果的な方法

全体的なセキュリティ対策やセキュリティ対策の基本的概念の話が続いたので、個々の脆弱性に対応するための効果的な方法を紹介します。前提知識なく、個々の脆弱性に対応するには、個々の脆弱性全て知る必要があります。

カテゴリー
Computer Development PHP Security Programming Security

IT以外のセキュリティ対策から学ぶITセキュリティ 〜害虫駆除より防虫〜

セキュリティ対策の基本はどの分野でもあまり変わりません。全体対策と個別対策、これらを総合的に駆使して安全性を維持します。全体対策、個別対策は両方とも”必要条件”です。全体対策だけ、個別対策だけ、では思ったような安全性を得ることは困難です。

ITセキュリティ以外の対策からITセキュリティについて考えてみます。