タグ

エスケープとphpに関するiwwのブックマーク (7)

  • PHPの脆弱性への攻撃名称と対策メモ - Qiita

    自分用メモ。ごちゃごちゃすると忘れるので、なるべくシンプルにまとめたい。 誤り、不備などあれば、随時追加修正します(ご指摘ありがとうございます)。 クロスサイトスクリプティング(cross site scripting、XSS) 概要 訪問者に目的のサイトとは別の罠サイトを踏ませて不正な処理を実行させる行為。 原因 フォームから受け取った値を、エスケープせずに画面に出力するために発生 (偽のフォームを作成する手法も有るので、JavaScriptの対策だけでは不足) HTMLの実体参照を用い、& を &amp; に、< を &lt; に、> を &gt; に、" を &quot; に、それぞれ置換する。 PHPではhtmlspecialchars関数を用いれば、一括で対策できる (ただしENT_QUOTESを設定しないとシングルクォーテーションはエスケープされない)

    PHPの脆弱性への攻撃名称と対策メモ - Qiita
  • PHPで¥(円マーク)を正規表現でマッチさせる時の注意点 - アンバランスな日々に

    phpで¥(円マーク)を正規表現でマッチさせるときに、\\と\マークをエスケープさせたんですがエラーになりました。何が起こったのかよく分からなかったのですが適当に\マークを3つ、\\\と書いてみたらマッチしました。腑に落ちなかったので詳しく調べてみるとマニュアルに以下の記述が 注意: シングルクォートあるいはダブルクォートで囲まれた PHP の 文字列 の中では、バックスラッシュは特別な意味を表します。 そのため、正規表現 \\ を使用して \ とマッチさせたい場合は PHP のコード内では "\\\\" あるいは '\\\\' と記述する必要があります。 PHP: エスケープシーケンス - Manual なにやら特別なようです。とく・・べつ? とりあえず正規表現で使うときには\\\\と\マーク4つ使わないといけないみたいです。3つでもマッチしてくれるようですが。(ちなみに5つはエラーだよ

    PHPで¥(円マーク)を正規表現でマッチさせる時の注意点 - アンバランスな日々に
  • htmlspecialchars関数を簡単に扱えるようにする

    特殊文字を HTML エンティティに変換してくれるhtmlspecialchars関数。 PHPでは基中の基である関数でありながら、名前の長さやオプションの設定などが面倒で困ったものです。「htmlspecialchars」は覚えられても、オプションの「ENT_QUOTES」まで覚えるのはなかなか大変だったりします。でも、ここで手を抜くと簡単に脆弱なアプリケーションができあがってしまう危険性があります。特にユーザーからの入力には、手軽にがっちり入力保険をかけておくべきです。 そんなわけで、htmlspecialcharsを簡単に扱えるようにする方法を考えてみました。 お知らせ:PHP5.4にて、htmlspecialchars()関数に互換性の問題が出てきましたので、当ページでも第三引数に文字コードを指定するコードに変更しました。以下、第三引数の"UTF-8"の部分は、利用中の文字コー

    htmlspecialchars関数を簡単に扱えるようにする
    iww
    iww 2013/12/23
    array_map つかって配列も華麗になんとかするやつ
  • PHP: 文字列 - Manual

    文字列 string は、文字が連結されたものです。PHP では、 文字は 1 バイトと同じです。つまり、256 個の異なる文字を使用可能です。 これは、PHP が Unicode をネイティブにサポートしていないことも意味します。 文字列型の詳細を参照ください。 注意: 32bit ビルドでは、 文字列の最大長は 2GB (2147483647 バイト) です。 引用符 文字列を指定する最も簡単な方法は、引用符 (文字 ') で括ることです。 引用符をリテラルとして指定するには、バックスラッシュ (\) でエスケープする必要があります。 バックスラッシュをリテラルとして指定するには、二重 (\\) にします。 それ以外の場面で登場するバックスラッシュは、すべてバックスラッシュそのものとして扱われます。 つまり、\r や \n といったおなじみのエスケープシーケンスを書いても特別な効果は得

    iww
    iww 2013/01/23
    ヒアドキュメントの書き方
  • mapee.jp

    This domain may be for sale!

  • magic_quotes_gpc = On の対策 - [PHP + PHP] ぺんたん info

    [参考]GPC(GET/POST/cookie)以外の情報を送るアラワザ php.iniで以下の設定があるとき magic_quotes_gpc = On クライアントより<form>フォームで送られた文字列データが全てエスケープされ、 「" → ¥"」「¥ → ¥¥」など変換処理が行われます。 またクッキーも同様です。 ここで問題になってくるのが、Shift-JISを扱うときです。5C文字化けに遭遇します。 『ソ』、『噂』、『圭介』、『能』という字も、エスケープされます。 エスケープしないようにするためには、Magic quotesの設定をOffにするのが単純な方法ですが、 設定変更できない場合などあります。 またこれが設定されているかされていないかで、いちいち意識するのも面倒であったりします。 たとえば開発環境のサーバーではできてたのに、番環境のサーバーではできなかったり。 そんなと

    iww
    iww 2010/04/16
    バックスラッシュがついたりつかなかったりするときの話
  • サービス終了のお知らせ

    平素より「PHPプロ!」をご愛顧いただき、誠にありがとうございます。 2006年より運営してまいりました「PHPプロ!」ですが、サービスの利用状況を鑑みまして、2018年9月25日(火曜日)をもちましてサービスを終了させていただくことになりました。 サービス終了に伴いまして、2018年8月28日(火曜日)を持ちまして、新規会員登録ならびにQ&A掲示板への新たな質問、回答の投稿を停止させていただきます。 なお、ご登録いただいた皆様の個人情報につきましては、サービス終了後、弊社が責任をもって消去いたします。 これまで多くの皆様にご利用をいただきまして、誠にありがとうございました。 サービス終了に伴い、皆様にはご不便をおかけいたしますこと、心よりお詫び申し上げます。 件に関するお問い合わせはこちらよりお願いいたします。

  • 1