我试图访问,redis-cli
但因为我太懒了,所以我输入red
并按了两次 Tab,但我注意到有一个实际调用的二进制文件red
位于/bin/
.
当我做
cat /bin/red
Run Code Online (Sandbox Code Playgroud)
这显示了
#! /bin/sh
bindir=`echo "$0" | sed -e 's,[^/]*$,,'`
exec "${bindir}"ed --restricted "$@"
Run Code Online (Sandbox Code Playgroud)
知道那是什么吗?
笔记。当我执行时red
,它只是等待一个输入,无论我输入什么,它要么保存它并等待另一个提示或返回?
,请注意只有在点击q
它时才会退出。同样,当插入 0-9 的数字并保持输入时,它会显示您在保存您之前输入的内容时插入的每个输入
例子:
a <<<-- input
bsa <<< input taken without ?
^C <<<--- hitting ctrl-c
? <<<--- output
Run Code Online (Sandbox Code Playgroud)
例子2:
v
?
b
?
a
qwrefdf <<-- saved because it didn't output ? after typing "a" up
^C
?
<<- waiting for input
Run Code Online (Sandbox Code Playgroud)
所以“h”在“无效地址”中输出,只有“a”、“x”、“c”和“i”接受输入。除了数字之外的所有其他结果?
pLu*_*umo 28
red
是ed
在限制模式。
$ whatis red
red (1) - line-oriented text editor
$ man red
shows `ed` man page.
Run Code Online (Sandbox Code Playgroud)
此外,代码显示,它ed --restricted
从bindir
所有参数 ( "$@"
) 开始执行。
有关手册ed
及其命令,请运行info Ed
.
在章节中Invoking ed
:
运行“ed”的格式是:
Run Code Online (Sandbox Code Playgroud)ed [OPTIONS] [FILE] red [OPTIONS] [FILE]
[...]
'-r' '--restricted' 在受限模式下运行。此模式禁用当前目录之外的文件编辑和 shell 命令的执行。
归档时间: |
|
查看次数: |
3124 次 |
最近记录: |