2

私はこれを適切な方法で言及していないかもしれないので、事前にお詫び申し上げます。私たちのサーバー ログは、エンコードされたスタイルの攻撃を常に示しています。例を以下に示します....

http://somecompany.com/script.pl?var=%20%D1%EB........ (etc etc)

Perl (HTML::Entities を使用) を使用した HTML エンティティのエンコードとデコードには精通していますが、このスタイルのデコードをどのように参照すればよいかさえわかりません。これらの URI エンコーディング (?) をデコードするスクリプトを書きたいと思っています。正しい方向に私を向けることができる、誰かが知っているモジュールはありますか?

ニッキ

4

2 に答える 2

6

URI::Escapeモジュールを使用して、 URIでエンコードされた文字列をエスケープおよびアンエスケープします。

例:

use strict;
use warnings;

use URI::Escape;

my $uri = "http://somecompany.com/script.pl?var=%20%D1%EB";
my $decoded = uri_unescape( $uri );
print $decoded, "\n";
于 2009-12-23T19:07:28.270 に答える
6

文字列の迅速なエンコード/デコードを行うためのhttp://www.albionresearch.com/misc/urlencode.phpなどのオンライン リソースがあります。

プログラムで、これを行うことができます:

use URI::Escape;
my $str  = uri_unescape("%20%D1%EB");
print $str . "\n";

または単に:

perl -MURI::Escape -wle'print uri_unescape("%20%D1%EB");'
于 2009-12-23T19:14:36.420 に答える