gpt4 book ai didi

bash - 是否可以通过读取和/或中断引号来执行 shell 注入(inject)?

转载 作者:行者123 更新时间:2023-11-29 09:29:54 25 4
gpt4 key购买 nike

考虑这个(尝试的)shell 注入(inject)的例子:

测试1.sh:

#!/bin/sh
read FOO
echo ${FOO}

z.dat:

foo && sleep 1 && echo 'exploited'

然后运行:

cat z.dat | ./test.sh 

在我的机器(带有 bash 的 Ubuntu)上,有效负载总是(正确地)被视为单个字符串,并且从不执​​行恶意的 sleep 和回显命令。

问题一:是否可以修改z.dat,使test.sh容易被注入(inject)?特别是是否存在可能易受攻击的特定 shell?

问题 2:如果是这样,更改测试脚本以引用变量(如下所示)是绝对防御吗?

测试2.sh:

#!/bin/sh
read FOO
echo "${FOO}"

谢谢!

最佳答案

关于bash - 是否可以通过读取和/或中断引号来执行 shell 注入(inject)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34640504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com