タグ

XSSに関するmasapon49のブックマーク (5)

  • WordPressでエスケープ処理が必要な関数と処理方法

    ワードプレスに限らず、すべての Web アプリケーションには脆弱性が少なからずあります。ワードプレステーマ制作をするのであればエスケープは必須の知識です。 このページでは POCO の制作を通じてわかったエスケープ処理の考え方と具体的な方法についてまとめました。 WordPressのエスケープ処理とは何かワードプレスではブラウザを介したデータ入出力の安全性を確保するために、サニタイズ処理とエスケープ処理をそれぞれ定義しています。 サニタイズ (sanitize) :入力データをデータベースに保存する前に不必要なコードを取り除く(無害化)する。 エスケープ (escape) :ブラウザが予期しない動作(表示崩れや求めていないスクリプトの実行)をしないように、ブラウザに出力する文字やコードを置換(回避)する。外部リンク:Data Sanitization/Escaping | Theme De

    WordPressでエスケープ処理が必要な関数と処理方法
    masapon49
    masapon49 2020/02/29
    メモ_φ(・_・
  • PHPのフィルタ関数を使ったバリデーション&サニタイジング | バシャログ。

    こんにちは、春が来て嬉しいsagaraです。 フレームワークを使っていると、フレームワークに用意されている独自のバリデーション(入力検証)機能を用います。 例えばCakePHPでメールアドレスのバリデーションを行うメソッドは、 がっつり正規表現でやっています。 比較的単純なバリデーションであれば、今回紹介するPHPのフィルタ関数filter_var()で実現できます。 また、サニタイジング(コード無害化)向けの定数もあります。 というわけで、今回はPHPのフィルタ関数を使ったバリデーション&サニタイジングについてお話します。 フィルタとは フィルタはPHPの拡張モジュールであり、PHP5.2以降デフォルトで有効になっています。 メールアドレス、IPアドレス、URLなどが適切な書式になっているかを判断するのに使えます。 バリデーションを行う検証フィルタと、不適切な文字列を消去したりエンコード

    PHPのフィルタ関数を使ったバリデーション&サニタイジング | バシャログ。
    masapon49
    masapon49 2018/03/17
    メモφ(..)
  • jQuery(JavaScript)でHTMLエスケープするときの注意点と対処法

    HTMLエスケープの注意点 昨日、このような記事がはてブに上がっていた。 innerText(textContent)/innerHTMLを使ったHTMLエスケープは充分でないので今すぐやめろ、お前たちはもう終わりだ 要約するとreturn $('<div />').text(content).html()を使用したやり方だと「"」などをエスケープしないので.replaceで置き換えたものを使いましょうという話。 ただし、元記事のコードだと`(グレイヴアクセント)の置換処理が入っていなかったので下記のように書き換えるほうが良さそうだ。 var str = '& < > ` " ' + "'"; var escapeHtml = (function (String) { var escapeMap = { '&': '&amp;', "'": '&#x27;', '`': '&#x60;',

    jQuery(JavaScript)でHTMLエスケープするときの注意点と対処法
    masapon49
    masapon49 2016/01/25
    作ってる人居た
  • ほぼ全てのインジェクション攻撃を無効化/防止する入力バリデーション 〜 ただし出力対策も必須です 〜

    (Last Updated On: )入力バリデーションはセキュリティ対策として最も重要なセキュリティ対策です。なぜセキュリティ対策であるのか?を理解していない方も見かけますが「ほぼ全てのインジェクション攻撃を無効化/防止する入力バリデーション」の効果と拡張方法を見れば解るのではないでしょうか? ソフトウェア開発者が知っておくべきセキュリティの定義/標準/ガイドで紹介しているセキュリティガイドラインでは入力バリデーションが最も重要なセキュリティ対策であるとしています。 厳格な入力バリデーションを行うと、開発者が意識しなくても、非常に多くの脆弱性を利用した攻撃を防止できます。今回は比較的緩い入力バリデーション関数でも、ほとんどのインジェクション攻撃を防止できることを紹介します。 重要:セキュア/防御的プログラミングでは入力と出力のセキュリティ対策は”独立”した対策です。どちらかをすれば良い、

    ほぼ全てのインジェクション攻撃を無効化/防止する入力バリデーション 〜 ただし出力対策も必須です 〜
    masapon49
    masapon49 2015/06/18
    覚えておこう
  • XSSとSQLインジェクションの両方が可能なRFC5322適合のメールアドレス

    メールアドレスの「ルール」に関する話題が盛り上がっていますね。 「メールアドレスのルール」系まとめがそろって間違ってるのでご注意を 「メールアドレスのルール」なんて使ってはいけない3つの理由 これらのエントリに異論があるわけでありません。メールアドレスに関するルールというとRFC5322などがあるものの、現実の運用では簡易的な仕様を用いている場合が大半である…という事情は、私も以前ブログに書きました。、 稿では、「空前のメールアドレスのルールブーム(?)」に便乗する形で、RFC5322に準拠したメールアドレスで、XSSやSQLインジェクションの攻撃ができることを紹介します。と言っても、SQLインジェクションについては、過去に書きましたので、稿では、RFC5322バリッドなメールアドレスでSQLインジェクションとXSSの両方ができるメールアドレスを紹介します。 まず、攻撃対象として、以下

    XSSとSQLインジェクションの両方が可能なRFC5322適合のメールアドレス
    masapon49
    masapon49 2013/11/29
    φ(`д´)メモメモ...
  • 1