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

SQLインジェクション対策 総”習”編 – 第五回関西DB勉強会

第五回 関西DB勉強会でお話しさせて頂いた SQLインジェクション対策 総”習”編 の公開用資料をSlideShareにアップロードしました。私のセッションを気に入って頂けた方が多かったようで何よりです。

関西DB勉強会、面白かったです。久々にお会いできた方もいました。超満員でもう少しで入りきれないほどでした。また参加できれば、と思っています。

PDFはこちらからダウンロードできます。

SQLインジェクション総”習”編 from Yasuo Ohgaki

 

勉強会で使ったスライドは、面白おかしく柔らかい(?)スライドでした。あまり公開用には向いていません。実際に勉強会で使った資料が欲しい方はFacebookかメールで連絡してください。個別にお送りします。

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

プログラム・コードが正しく動作する為の必要条件と十分条件

プログラム・コードが正しく動作する為の必要条件と十分条件を考えたことがあるでしょうか?

プログラム・コードが正しく動作する為の必要条件と十分条件とは何でしょうか?

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

コンピュータは数値さえ正確に扱えない

コンピュータで数値を正確に扱うのは「実は結構難しい」です。つまり「コンピューターは数値を正確に扱えない」という事です。「コンピューターが数値を正確に扱えない?!何を言ってるんだ?!」と思った方は是非読んでみてください。

カテゴリー
PHP Security

APIとエスケープ/バリデーションとセキュリティ

今回はセキュリティ対策におけるAPIとエスケープ/バリデーションをどう考えるかの話です。

Cプログラマになろうとしているプログラマにメモリ管理を教えないことは考えられません。メモリ管理を考えなくても文字列の処理をしたりするライブラリなどもありますが、メモリ管理をあまり考えなくても良いAPIさえ使っていればOK、メモリリークもValgrindでチェックしてレポートされなければOK、と考えているプログラマが作ったプログラムが安全である可能性は低いでしょう。

言語やプラットフォームの基本中の基本を避けて通っては安全なプログラムの構築が難しくなるだけです。

安全なプログラムを作るために「プログラマに何を教えるべきか?」が今日のテーマです。

カテゴリー
PHP Security

出力先のシステムが同じでも、出力先が異なる、を意識する

出力先のシステムが同じでも、出力先が異なる場合はよくあります。これを意識していないとセキュリティ問題の原因になります。

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

エンジニア必須の概念 – 契約による設計と信頼境界線

少し設計よりの話を書くとそれに関連する話を書きたくなったので出力の話は後日書きます。

契約による設計(契約プログラミング)(Design by Contract – DbC)は優れた設計・プログラミング手法です。契約による設計と信頼境界線について解説します。