Linux下无空格执行命令以及环境变量等问题小折腾

Linux 2016-06-09

忘了是什么时候了,反正有一天碰到了一个站可以执行命令,但是不能有空格,就开始瞎折腾了...

先在群里问的时候一个平安的大牛说了$IFS,先看看$IFS是什么东西。

IFS:用于设置指定shell域分隔符,默认情况下为空格。

默认情况下是空格...

比如说ls ../命令中间有个空格,这里可以用ls$IFS../

111.png

linux系统环境变量,使用set命令查看
set.png

在某些特殊环境下过滤了某些命令时或许可以用内置环境变量来绕过
比如过滤了whoami的时候你又很想知道当前用户是谁...虽然这种几率为0.000000001,但是既然去折腾这个了就总结一下吧。

可以用USER内置环境变量来查看当前用户
echo $USER
user.png

$符号在linux中是获取变量的时候,当该变量不存在的时候返回空

某些情况下过滤了某些东西,比如说过滤了$IFS,正则是ls\s../

这个时候想执行该命令可以用shell的$绕过,比如说ls$XXOOSSS ../

$1.png

Ps:有更好的想法可以说说,接受一切对的教育。


本文由 Mosuan 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

只有地板了

  1. 学习了~~

添加新评论