bash - 在bash中的反引号内进行变量扩展的Shell注入
问题描述
我正在寻找防止壳注入。我在 bash 的后端中有一些代码如下:
`cmd $user_input1 $user_input2`
我还没有找到利用此代码的方法。我在想如果
user_input1="| ls >/tmp/hi"
/tmp/hi
然后将创建一个名为的文件。情况并非如此,因为像这样的特殊字符|
似乎被忽略了,只是作为文字参数传递给cmd
. 有没有办法解释这些特殊的章程来做一些 shell 漏洞利用?
解决方案
推荐阅读
- python - 如何在另一个脚本中运行一个脚本?
- swift - 即使值不是 nil,也会发生 nil 崩溃
- android - 为什么我的 APK 下载会覆盖已安装的无关 apk 文件?
- c++ - .cpp 文件中未定义的引用错误
- android - Ionic 4-后台用户位置跟踪
- delphi - 当 TFormatSetting 设置为 en-US 时,如何解决“10,000.00”不是有效的浮点值
- javascript - Disqus Iframe 未在 AMP 安装时调整大小
- typescript - 强制执行可选类型打字稿
- sql-server - 访问表单无法传递视图的主键(到 SQL 服务器)
- c# - 使用变量作为资源名称的一部分