カテゴリー
Computer Development PHP Security Programming

特定の処理を行うデータを渡すURLの作り方

Webアプリケーションを作っているとデータの完全性と機密性を保ちつつ「特定の処理を行うデータを渡すURL」を作りたくなる場合があります。

例えば、特定のURLをクリックすると特定ユーザーの連絡先にユーザーを登録する、などです。

カテゴリー
Computer Linux

gmailのメール送信のTLSエラーの修正

gmailの仕様が変更され自己署名証明書が使えなくなりgmail設定の「アカウントとインポート」で設定したメールアドレスからの送信が使えなくなったようです。結構困っている人が多いようですが判ってしまえば直す方法はそれ程難しくありません。

エラーメッセージで検索するとどうもこの4月くらいから仕様変更されているようです。qmailを使っているのでqmailでの修正方法です。postfixなどでもやる事はあまり変わりません。

カテゴリー
Computer Linux

Gnome Shell クラッシュの直し方

FedoraでGnomeを使っているのですが、幾つか前のFedoraメジャーバージョンアップ後からスクリーンロック後にGnome Shellがクラッシュするようになってしまいました。放っておけばそのうち直るだろう、と放置していたのですが直る気配がないので調べてみました。

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

データ型とセキュアコーディング

このブログではどのように”データ型”の概念とセキュアコーディングが関連しているのか、Webサーバーアプリを主体に説明します。

セキュアコーディングの基本を理解している必要がありますが、難しくはないです。原則を知っているだけで十分です。セキュアコーディングの10原則は次の通りです。

1番目の原則「入力をバリデーションする」がデータ型と関連します。

カテゴリー
Computer Development Programming Secure Coding Security

おかしなCWE-20の読み解き方(CWE-20入門)

徳丸さんが独自のCWE-20(≒入力バリデーション)解説を行っているので、CERT(1989年に米カーネギーメロン大学に設置された世界最古のコンピューターセキュリティ専門機関)が30年くらい前から提唱し、ISO 27000/NIST SP-800-171/PCI DSS等で要求されているCWE-20の解説を改めて書きます。

CWE-20(入力バリデーション)がなぜ重要なのか?それはCERT/MITRE/ISOが入力バリデーションをどのように解説しているかを見れば解ります。いずれも最も重要/一番最初の対策としています。(※ MITREはCWEを管理する組織で、CWEの本家と言える組織です)

徳丸さんのブログより前に、このブログでもCWE-20について以下のブログで既に書いています。CERT(≒米カーネギーメロン大学のコンピューターサイエンス学科)が提唱するセキュアコーディング/コンピューターサイエンスの基盤となる基礎概念の紹介では十分ではなかったかも知れません。

カテゴリー
Computer Development Programming Secure Coding

7PK – APIの乱用とは?

7PKとは「Seven pernicious kingdoms: a taxonomy of software security errors」の略でソフトウェアセキュリティ領域の分類の一つです。CWEのビューのCWE-700としても利用されています。CWE-700となっているので、ISO 27000などのセキュリティ標準で要求される「セキュアコーディング」の基礎知識として知っておくべき分類方法/概念です。

入力バリデーションの次に重要な領域である「APIの乱用/誤用」を紹介します。

※ 入力バリデーションが第一番目である理由は、入力データの妥当性が保証されていなとプログラムは絶対に正しく動作しないからです。不正な入力で動作しているように見えても、誤った出鱈目な結果を返しているだけです。プログラムが脆弱性なく正しく動作する為には入力バリデーションが欠かせません。

カテゴリー
Computer Misc Review

マグネット式のスマホホルダーは大丈夫/十分なのか?

車用にスマホホルダーを購入するにあたり、最近はマグネット式が多いと分かりました。そこで気になるのが「マグネット式のスマホホルダーは大丈夫なのか?」です。

  • 磁力が電子機器の塊であるスマホに悪影響を与えないか?
  • マグネットでしっかり固定できるか?

このあたりが気になるはずです。