Ran*_*ser 3 security perl protection code-injection
我已经读过带有2个参数的open()命令容易被注入,而带有3个参数的open()命令不能注入.
SAy我有一个目录,我的所有文件都有一个共同的前缀,即"file-"所以文件名为file-SomeSourceCode.txt
怎么样open(FILEHANDLE, "some/random/dir/file-" . $fileextension)容易受到伤害?
其中,$fileextension可以是任何类型的每说"文件名"的.据我所知,这不会受到像| shutdown -r |执行命令到服务器的文件名的影响.
open(my $fh, "some/random/dir/file-" . $user_text)
Run Code Online (Sandbox Code Playgroud)
是完全脆弱的.不正确的注入不仅无法打开名为的文件
some/random/dir/file-foo|
Run Code Online (Sandbox Code Playgroud)
它可以用来执行任意命令
$ perl -e'open(my $fh, "file-".$ARGV[0])' ' ; echo 0wned >&2 |'
sh: 1: file-: not found
0wned
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7420 次 |
| 最近记录: |