SQLインジェクションを・・・駆逐してやる!! この世から・・・一匹残らず!! (PHPカンファレンス2015) Read less
![【SQLインジェクション対策】徳丸先生に怒られない、動的SQLの安全な組み立て方](https://cdn-ak-scissors.b.st-hatena.com/image/square/53d454f039cc7a998e2a5ae86b8fb93ddcd17031/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Fbuildingdynamicsqlsafely-151007010937-lva1-app6892-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
Private content!This content has been marked as private by the uploader.
(Last Updated On: 2019年2月18日)入力バリデーションはセキュリティ対策として最も重要なセキュリティ対策です。なぜセキュリティ対策であるのか?を理解していない方も見かけますが「ほぼ全てのインジェクション攻撃を無効化/防止する入力バリデーション」の効果と拡張方法を見れば解るのではないでしょうか? ソフトウェア開発者が知っておくべきセキュリティの定義/標準/ガイドで紹介しているセキュリティガイドラインでは入力バリデーションが最も重要なセキュリティ対策であるとしています。 厳格な入力バリデーションを行うと、開発者が意識しなくても、非常に多くの脆弱性を利用した攻撃を防止できます。今回は比較的緩い入力バリデーション関数でも、ほとんどのインジェクション攻撃を防止できることを紹介します。 重要:セキュア/防御的プログラミングでは入力と出力のセキュリティ対策は”独立”した対策です。ど
プログラミングから脱線すると色々と言いたくなるという. 年金番号がウイルスにかかって流出してしまって,想定される被害は年金番号の成り済ましが怖いので,流出してしまった人たちに番号を再発行して郵送するとかニュースで言ってました. 実は,僕の学位論文の一部で,オープンシステムにおける名前付けの問題について議論しています.ちゃんと論文にもなっています.そのときの議論の延長線上に今回の年金番号流出もからんでいるので,その話をしましょう. 当時の話題の中心は,インターネットでした.世界のコンピュータにそれぞれ一意の番号をつけて(つまり,全部のコンピュータが違う番号をもっている),その上で,ある番号のコンピュータにメッセージを送りたければ,どうやってそのコンピュータを探すか(ルーティング)という問題を解けば良い,ということにしていました.その後に出てきたIPv6も色々と修正してますが同じです. ルーテ
谷藤賢一さんの著書『気づけばプロ並みPHP~ショッピングカート作りにチャレンジ! 』に、発売1周年の謝恩キャンペーンとして『副読本:お助け電子BOOK』が公開されました(*1)。私はこの副読本の中で、『第2章 【徳丸 浩氏 スペシャル寄稿】安全なWebアプリケーションのために』を寄稿しています。このエントリでは、寄稿の顛末を報告したいと思います。 動機 私が本書『気づけばプロ並みPHP』を購入したのは昨年の10月29日ですから、本書が出版されてまもなく、今から約1年前です。私は本書を一読して、セキュリティ上の多数の問題があることに気がつきました。 以前は、セキュリティ上の問題が多い本は書評をブログ記事として書くことも多かったのですが、この際は書評という形にするのはためらいがありました。その理由は以下の様なものです。 私のブログの読者層はセキュリティに関心の高い方たちであり、本書の読者とは重
This copy is for your personal, non-commercial use only. Distribution and use of this material are governed by our Subscriber Agreement and by copyright law. For non-personal use or to order multiple copies, please contact Dow Jones Reprints at 1-800-843-0008 or visit www.djreprints.com. http://jp.wsj.com/article/SB10001424052702303433504579501080000871574.html
「演算子のインジェクション」と「SSJI」:NoSQLを使うなら知っておきたいセキュリティの話(1)(1/2 ページ) ここ数年、大量データ処理時の高速性やデータ構造の柔軟性などから、「NoSQL」が注目を集めています。それと同時に、NoSQLを使うアプリケーションに対する攻撃手法も研究されるようになりました。この記事では、NoSQLを使ったアプリケーションの脆弱性と対策について解説します。 注目集める「NoSQL」 ここ数年、NoSQLと呼ばれる種類のデータベースが注目を集めています。NoSQLはSQL言語を使用しないデータベースの総称で、大量データ処理時の高速性やデータ構造の柔軟性などのメリットがあるため、従来のリレーショナルデータベース(RDB)を補完・代替するものとして、大規模なWebアプリケーションなどにおいてNoSQLを採用する事例が増えています。 このような新しい技術が普及し
go言語なんか import "http://github.com/mattn/xxx " だったりする。rubyもそういうの面白いかもしれない。require "http://github.com/mattn/xxx "みたいな。 mattn on Twitter: "go言語なんか import "http://t.co/9qiwho7OMZ" だったりする。rubyもそういうの面白いかもしれない。require "http://t.co/9qiwho7OMZ"みたいな。" @mattn_jp それコンパイル型言語なら許されるけどスクリプト型だとセキュリティホールとされるものでは? (e.g. PHP) Kazuho Oku on Twitter: "@mattn_jp それコンパイル型言語なら許されるけどスクリプト型だとセキュリティホールとされるものでは? (e.g. PHP)" と
このエントリでは、脆弱性対処における例外処理について、奥一穂氏(@kazuho)との会話から私が学んだことを共有いたします。セキュアプログラミングの心得として、異常が起これば直ちにプログラムを終了することが推奨される場合がありますが、必ずしもそうではないというのが結論です。 はじめに Webアプリケーションの脆弱性対策では、脆弱性が発生するのはデータを使うところであるので、データを使う際の適切なエスケープ処理などで対処するのがよいと言われます。しかし、処理内容によってはエスケープができない場合もあり、その場合の対処についてはまだ定説がないと考えます。 エスケープができない場合の例としては、以下があります。 SQLの数値リテラルを構成する際に、入力に数値以外の文字が入っていた メール送信しようとしたが、メールアドレスに改行文字が入っていた 入力されたURLにリダイレクトしようとしたところ、U
本連載では、セキュアコーディングスタンダード「CERT Oracle Secure Coding Standard for Java」の内容をベースに、Android特有の情報を交えつつ、堅牢なプログラムを開発するためのノウハウを具体的な事例とともに紹介していきます。第1回では、セキュアコーディングの意味と、その効果について解説します。 はじめに 昨年、C/C++に関してセキュアコーディングの連載があったことを御存じの方もいるかもしれません。今回始まる「Javaセキュアコーディング入門」は、Javaのプログラミングにおいて、入力値検査、引数の安全な渡し方、例外処理、整数演算といったソフトウェアの脆弱性に直結する問題に対して、コーディング上の注意点や脆弱性を作り込まない作法を解説するものです。具体的には、演算処理、文字列処理、ファイル操作などトピックごとに、よりセキュアなコーディングスタイル
更新: 2011年7月9日23時0分頃 とあるシステムで徳丸本のストレッチングを採用することにしたという話がありましたが、その実装が佳境に入ってきました。私は指示だけ出して、実装はお任せ……と思っていたのですが、基本的な部分を作ってもらったところでバトンタッチされ、私が引き継ぐ形で実際にコードを書くことになりました。 基本的には徳丸本 (www.amazon.co.jp)のオススメどおりの実装にするという方針なのですが、実際にコードを書いてみると、いろいろと気になったり迷ったりした事も出てきました。そのあたりを簡単にメモしておきます。 ※ちなみに、このシステムはRuby1.9.2 + Ruby on Rails3での実装なので、PHPのコードサンプルをそのまま使っているわけではありません。 ストレッチ回数をどう決めるのか徳丸本327ページにあるコード例を参考にして実装。アプリケーションごと
毎年恒例の診断前準備として開発者向けに、「初心者Webアプリケーション開発者がチェックすべき情報源」を集めているので、皆さんにもご紹介。他に追加した方が良い情報源があった場合はご指摘いただけると助かります。 上から重要な順。★がとりあえず読んどけ、の必須。必須のポイントは、短期間で大雑把に網羅的にポイントが整理されているもの。 徳丸本を必須に入れるか迷ったけど、あの厚さは、万人は読めないので、上位ランクだけど必須からははずした。 ★Webサイト構築 安全なウェブサイトの作り方 改訂第5版 http://www.ipa.go.jp/security/vuln/websecurity.html 携帯ウェブサイトの実装方法を追加 セキュリティ実装 チェックリスト(Excel形式、33KB) 安全なSQLの呼び出し方(全40ページ、714KB) ★発注仕様 発注者のためのWebシステム/Webアプ
■ ウイルス罪について法務省へ心からのお願いです (時間切れなので完成度がいまいちのまま公開。後で書き直すかも。) ウイルス罪法案の国会答弁でバグ放置が提供罪に該当する事態は「ある」とされた件について、多くの疑問の声があがっている。ただ、その声の多くは、どんなバグでも罪になると誤解している様子がある。議員の質問では「重大なバグ」と、状況を限定して尋ねたものだった点に注意が必要である。「重大なバグ」とは、たとえば、電子計算機が動かなくなってしまうような、そういう破壊的な結果をもたらすものなどを指すのだろう。 そうすると、法務省は今回の不安の声に対応してこう釈明するかもしれない。「どんなバグでも犯罪になるわけではありません。法務大臣の答弁は、重大な結果をもたらす場合について述べたものです。通常のバグであれば、『不正な』に該当しないことから罪には該当しませんので、ご安心ください」と。続く国会の法
■ ウイルス罪法案、バグ放置が提供罪に該当する事態は「ある」と法務省見解 いわゆる「ウイルス作成罪」の新設を含む刑法等改正法案の審議が、一昨日から始まっており、今日の午前中には、野党議員からのつっこんだ質疑があり、意外な答弁が出てきた。 第177回国会 衆議院法務委員会 平成23年5月25日 衆議院TV, 会議録 第177回国会 衆議院法務委員会 平成23年5月27日 衆議院TV, (会議録未公表) 特に注目に値するのは、今日の午前中の以下の部分。*1 大口善徳議員:(略)解釈上の疑義等問題点について明らかにしていきたいと思う。コンピュータウイルスについて、刑法168条の2に、1項1号でこのコンピュータウイルスの定義が書いてあるわけですが、「人が電子計算機を使用するに際してその意図に沿うべき動作をさせず、又はその意図に反する動作をさせるべき不正な指令を与える電磁的記録」と、こういう定義であ
Hiromitsu Takagi @HiromitsuTakagi 重大なバグで損失を生じさせたとして、民事での損害賠償責任があるという話なら普通だが、それを犯罪として刑事罰に処すというのは、まったく次元の異なる話。混同しないように。 RT @sayori27 重大なバグによって損失が生じているかどうかが問題なのでは? Tetsuro KITAJIMA@クラシック音楽方面用 @hcro_classic HDDを吹っ飛ばしたり周囲に感染を引き起こして他マシンのOSを狂わせるようなバグが放置されていいかというと、それも怪しいわけで。法務省側が想定してるバグはこういうバグだろうな。 / 高木浩光@自宅の日記 - ウイルス罪法案、バグ放置が提… http://htn.to/j1MAQb
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く