2009年 8月 28

system関数やパイプを使って外部プログラムを実行する時は
汚染チェックを必ずする。

エスケープするべき文字

& ; ` ' \ " | * ? ~ < > ^ ( ) [ ] { } $ \n \r

以下の置き換えで全てをエスケープすると良い。

s/([\&\;\`\'\\\"\|\*\?\~\<\>\^\(\)\[\]\{\}\$\n\r])/\\$1/g;

参考:http://www.stackasterisk.jp/tech/program/perl02_02.jsp

More from my site

  • use strict; でperl作成するべきuse strict; でperl作成するべき 宣言していない変数を使用不可にする Perl では C のように変数を宣言する必要がないので必要性がもうひとつはっきりしません。 use strict; が宣言されていると、変数がmy […]
  • ただ単にダミー画像をperlで表示するだけのルーチンただ単にダミー画像をperlで表示するだけのルーチン CGIでダミー画像(GIF)を表示するだけのスクリプト。画像データ必要なし。 my @dummy = […]
  • useでライブラリを重複呼び出した場合useでライブラリを重複呼び出した場合 package abc;use CGI;・・・略package def;use […]
  • sjisの罠sjisの罠 perlの正規表現などのマッチングを行うとエラーになる事がある。 エラーメッセージUnmatched [ in regex; marked […]
  • CGI標準入出力ライブラリ stdio.plCGI標準入出力ライブラリ stdio.pl perlスクリプトを作成する上で面倒なのがフォームのデコードやメール送信時に文字コードをエンコードする…など。 他にもよくつかうサブルーチンをいろいろ詰め込んだライブラリ「stdio.pl」を使えばフォームデータのデコード処理、クッキー入出力、ファイルロック等たった1行で書く事が出来ます。 使用するにはstdio.plを呼び出す必要があります。使用するスクリプトとstdi […]
  • CentOS 5.3 へPHP5.30をyumでインストールCentOS 5.3 へPHP5.30をyumでインストール phpmyadmin3.2xxでphp5.2以上が必要なのでインストール。CentOS5.3のデフォルトだとphp5.16がインストールされる。 こちらの手順にてhttp://centoshome.seesaa.net/article/117329591.html 確認 # php -vPHP 5.3.0 (cli) (built: Jul 19 2009 […]

Filed under: perl

Trackback Uri



コメントする