サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは本日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。
htmlspecialchars はタグをサニタイズしてくれる非常に便利な関数ですが、この関数は配列にかけることは出来ません。 そこで、array_mapです $array = array("<b>a</b>","<span>name</span>"); $array2 = array_map('htmlspecialchars', $array); (注意) このままでは問題があります。ページ下部を参照。 これにより、$array で渡されたデータに対してすべて htmlspecialchars をかけた配列を $array2 に入れることができます。 array_mapの引数に使えるのは htmlspecialchars だけでなく、自分で定義した関数なども適用できます。 htmlspecialchars では、普通に使った場合はシングルクオートをエスケープしてくれないので、次のように
画面1●SQLインジェクション用の攻撃ツール<BR>中国系サイトで出回っている攻撃ツールの一つ。 SQLインジェクションの脆弱性が存在するサイトの URLを入力すると,テーブル名やカラム名,実際のデータなどを容易に取得できてしまう 図10●なぜSQLインジェクションの脆弱性が生まれるのか?<BR>アプリケーションでSQL文を組み立てる仕組みの場合,Webブラウザで受け取ったデータから不正な文字を取り除くような仕組み(無害化)を実装していないと,予期しないSQL文を実行される恐れがある。これにより認証を不正に通過されたり,個人情報を不正に取得されたりする 図11●準備済みSQL文を使う<BR>準備済みSQL文を使うと, SQL文の検索条件部分を変数としてデータベースで解析しておき,変数に値をセットする。不正な文字を受け取ったとしても,SQL文が改ざんされる危険性はない。Java(JDBC),
DoRuby! (ドルビー!) は現場のエンジニアによる、主にRubyなどの技術に関する様々な実践ノウハウを集めた技術情報サイトです。 ■プレースホルダ SQL文作成時に、 実行時に値が決まる部分を「?」に置き換えて、「?」に当てはめたい値を変数とか配列で指定します。そうすると、SQLインジェクション対策のためのエスケープ処理を自動で行ってくれます。 ------------------------------------ $id = 6; $sql = select * from t_bbs where id = ?; query($sql, $id); ------------------------------------ 「?」のところに「6」が入ります。 プレースホルダの使い方はこんな感じです。さくっといきます。 さて本題はここからですが、 プレースホルダは代入する数だ
FreeBSD、MacOSX、Webアプリ系、RDBMS(PostgreSQL)などの話題が中心になるかと思います。 まぁ、いままでereg多用しとったわけです。 ereg関数はPHP6.0でコアから消える予定【PHP】 - Programming Magic そんなわけでereg厨の俺涙目状態、なわけです。 というか、実はeregにはさらにヤバい問題がありまして。 23. 関数とバイナリセーフ - PHP TIPS:ITpro こちらの説明がわかりやすいので読んでいただければ、どういうことかは理解できると思います。 Cから入ってる人はひっかかりやすい部分だと思います。 とりあえず、実際にコードかいてみました。 <?php header( "Content-type: text/html ; charset=utf-8" ) ; ?> <HTML> <TITLE>TEST</TITLE>
string mysql_real_escape_string ( string $unescaped_string [, resource $link_identifier = NULL ] ) 現在の接続の文字セットで unescaped_string の特殊文字をエスケープし、 mysql_query() で安全に利用できる形式に変換します。バイナリデータを挿入しようとしている場合、 必ずこの関数を利用しなければなりません。 mysql_real_escape_string() は、MySQL のライブラリ関数 mysql_real_escape_string をコールしています。 これは以下の文字について先頭にバックスラッシュを付加します。 \x00, \n, \r, \, ', " そして \x1a. データの安全性を確保するため、MySQL へクエリを送信する場合には (わずか
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く