【发布时间】:2020-06-25 13:14:29
【问题描述】:
如何防止 bash 脚本中的目录遍历攻击,其中参数包含目录名称?
例子:
$STAGE=$1
$APP=$2
deploy.sh dist/ /opt/apps/"$STAGE"/"$APP"
$STAGE 和 $APP 变量是从外部设置的。攻击者可以使用".." 将其更改为任意路径。
我知道通常的解决方案是将目录字符串与返回绝对路径的函数的结果进行比较。但我找不到现成的解决方案,也不想提出自己的解决方案。
【问题讨论】: