代码之家  ›  专栏  ›  技术社区  ›  Tim Reddy

保护脚本不受错误的攻击

  •  0
  • Tim Reddy  · 技术社区  · 8 年前

    我花了一些时间构建了这个方便的bash脚本,它通过 stdin . 我从这个问题的第一个答案中得到了这个想法: Pipe input into a script

    不过,我做了件很蠢的事。我在终端输入了以下内容:

    echo '{"test": 1}' > ./myscript.sh

    我本来打算用管道 | 到我的脚本而不是重定向 > 的输出 echo .

    在我生命中的这一刻之前,我从来没有以这种方式无意中把任何文件都砍掉过。我真的很惊讶,直到今天我才犯了这个错误。D

    无论如何,现在我已经让自己变得多疑了,我会再这样做的。除了将脚本标记为只读或对其进行备份之外,我还能做些什么来保护自己吗?首先编写一个接受来自 小精灵 ?

    2 回复  |  直到 8 年前
        1
  •  2
  •   Siguza    8 年前

    这是一个非常开放的问题,但我通常将脚本放在全局bin文件夹中。( ~/.bin 大约如此)。这让我调用它们 myscript 而不是 path/to/myscript.sh 如果我不小心用了 > 而不是 | ,它只会在当前目录中用该名称创建一个文件-实际上从来没有 输入/输出箱 .

        2
  •  3
  •   Jeremy Friesner    8 年前

    是的,您可以做一件事——将脚本检查到源代码控制存储库(Git、SVN等)中。

    bash脚本是代码,您编写的任何重要代码都应该签入到源代码控制(以及定期提交的更改),这样,当发生这种情况时,您只需恢复文件的最新提交版本,然后继续。

    推荐文章