云来储存型XSS漏洞+越权修改应用封面
0x001.
今天本来想看看场景应用有什么新功能没,于是乎随便打开了一个场景应用,然后上传了一张图片修改下封面,结果我看到firefox 网络竟然有2个post,不由得勾起我的好奇心,好奇害死猫嘿嘿。(习惯性浏览网页开着firebug)
一般来说图片上传都是一个post解决呢,为何有2个post,经过我一番查看发现整个流程是这么来走的:
Post一张图片到服务器,然后get 到图片在服务器的路径,然后再通过最后的post 更新数据库,估计数据库中单独存在着一张表来保存这玩意。
表结构可能如下:
|
某表 |
||
|
字段名 |
类型 |
|
|
Id |
Int |
|
|
App_logo |
Varchar (50) |
|
先看看能不能越权什么的,这里我把id改为我另外一个号的的场景应用的id号15196看看能不能修改。

发现可以修改成功,所以说这个地方存在的越权操作。


再来玩玩sql注入,语句猜测:
update pic set app_logo = '{$src}' where id = {$id};
Id:15196'后面加个单引号,发现不报错,尼玛。
转16进制 0x3136393535 塞进去,提示案例不存在
摆明了。Id被引号给包起来了。
测试发现
在id后面加字母什么的不报错但是在之前加就报错,好吧,–》被转成整形了。
Id不做想法了。来看看app_logo 字段。
单引号被插入了数据库。
这里先来了解下:
<img src =" " > src 处可以导入一个js的脚本文件或者执行相关的js代码,或者通过src的可控性闭合img标签,再导入js代码来xss不同的浏览器处理不同。<img src="javascript:alert(/xss/)">这种语句已经不能在IE7.0以上和火狐运行,而旧版的遨游和其他的一些IE内核浏览器还可以,估计是被开发人员故意封掉的。随着浏览器的更新换代,这种语句的成功率越来越低。
由于json格式数据的标准是用双引号引起来。这个页面的源码是<img id="app-log" src="">
估计是没法插入双引号进行闭合,哪位基友有思路求科普。
我们这里直接插入js代码试一下:
Tengine 这玩意web服务器给禁止了,我们来绕过他一下
由于html的属性支持ASCII码特性,
<img src="javascript:alert(0);" >
我们传入到数据库来看看,
好吧&被转实体了,没办法了么?
Ok继续变形 js

我们把 "javascript:\u0061\u006c\u0065\u0072\u0074\u0028\u0030\u0029\u003b" 插入。
么么哒,成功绕过。

上xss平台创建一个项目
代码。。插进去。。。

最后img xss 虽然有些过时,但是市面上还是存在部分ie内核浏览器支持,利用这个img xss 配合前面的越权,可以打任意用户cookie 。。。
安全盒子原创文章:转载请注明安全盒子SecBox.cn
云来储存型XSS漏洞+越权修改应用封面的更多相关文章
- PhpMyWind储存型XSS漏洞练习(CVE-2017-12984)
0x01 介绍 又是一款开源CMS内容管理系统PhpMyWind,在小于等于5.4版本中存在储存型XSS漏洞.如下图所示,这个就是发生储存型XSS漏洞的代码 0x02 演示 1.第一张图是客户留言时, ...
- 74CMS3.0储存型XSS漏洞代码审计
发现一个总结了乌云以前代码审计案例的宝藏网站:https://php.mengsec.com/ 希望自己能成为那个认真复现和学习前辈们思路的那个人,然后准备慢慢开始审计一些新的小型cms了 骑士cms ...
- [代码审计]:PhpMyWind储存型XSS漏洞(CVE-2017-12984)
简介 今天开启一下代码审计的篇章 python安全编程剩下的看起来没意思就结束了 ,现在规划每2周写一个爬虫练练手, 然后今天开启代码审计和Docker的学习 我个人感觉先看漏洞利用过程再看漏洞分析 ...
- 薄弱的交互页面之新浪微博到博客的储存型xss漏洞
首先分享一片博文到微博,然后 在微博评论xss code 最后回到博客点击举报就触发xss了 点击举报 Xss之2 首先还是分享一片博文到微博,然后评论xsscode 回到我的博客个人中心,查看评论 ...
- Java Web开发 - 持久型/存储型XSS漏洞
Java Web开发 - 持久型/存储型XSS漏洞 1.什么是XSS漏洞攻击? XSS是跨站脚本攻击(Cross Site Scripting)的简称,之所以叫XSS而不是CSS相比大家都能明白了吧, ...
- phpcms某处储存型XSS(demo+本地演示)
文章转载:http://www.myhack58.com/Article/html/3/7/2016/71726.htm 详细说明: demo+本地演示存在xss漏洞的地方在商务中心的商家资料的我的资 ...
- 【代码审计】大米CMS_V5.5.3 后台多处存储型XSS漏洞分析
0x00 环境准备 大米CMS官网:http://www.damicms.com 网站源码版本:大米CMS_V5.5.3试用版(更新时间:2017-04-15) 程序源码下载:http://www ...
- 【代码审计】iZhanCMS_v2.1 前台存储型XSS漏洞分析
0x00 环境准备 iZhanCMS官网:http://www.izhancms.com 网站源码版本:爱站CMS(zend6.0) V2.1 程序源码下载:http://www.izhancms ...
- 【代码审计】eduaskcms_v1.0.7前台存储型XSS漏洞分析
0x00 环境准备 eduaskcms官网:https://www.eduaskcms.xin 网站源码版本:eduaskcms-1.0.7 程序源码下载:https://www.eduaskcm ...
随机推荐
- 在W3C SCHOOL网站上发现一个关于Schema的错误
原地址是http://www.w3school.com.cn/schema/schema_complex_empty.asp 下面这个例子是不正确的 xmlspy报错. 因为<xs:restri ...
- Android Gson解析复杂Json
JSON原数据 {"total":1,"rows":[{"ID":1,"Title":"台州初级中学招收初一年 ...
- unity换装系统+网格合并
这里的做法是模型把所有衣服全部穿上作为一个资源 然后还有一个只有骨骼信息的骨架资源 将这2个制作好了Prefab 模型部件数据 资源数据 [代码] using System.Collections; ...
- WPF中的快捷键(累积中)
1. 显示可选属性, ctrl + J 如上图,当不知道Background的可选择时,可以输入 ctrl + J,系统就会显示所有可选属性
- 《c++primer》疑惑记录
第4章 96页,数组维数为变量 第8章 246. IO对象不可复制.赋值原因是类设计时复制构造函数.赋值函数是私有的,为什么这么设计呢? 251. tie举例 第15章 484 派生类可以恢复,但不可 ...
- OAuth2.0 微信授权机制
我在了解设计Restful接口的时候,发现涉及到接口验证,可以利用OAuth2.0机制来验证. 我开发的微信端Web网页通过微信授权的时候,微信端也是用OAuth2.0机制来获取用户基本信息. OAu ...
- python-爬虫之re模块
re模块中常用功能函数 1.compile() 编译正则表达式模式,返回一个对象的模式.(可以把那些常用的正则表达式编译成正则表达式对象,这样可以提高一点效率.) 格式: re.compile(pat ...
- bzoj 4942: [Noi2017]整数
Description Solution 加法减法可以分开考虑,如果只有加法的话,直接暴力进位复杂度是对的 询问的时候就是把两个二进制数做差,判断第 \(k\) 位的取值 实际上我们只需要判断 \(1 ...
- bootstrap-select在angular上的应用
1.bootstrap-select 依赖bootstrap.js ,又依赖jQuery,这些都可以用requirejs来处理. 2.一般bootstrap-select 都放在具体的模块上,而是动态 ...
- FastReport打印table
经过验证是对的. table第一行添加标题,也就是拖过来的文本label,第二行开始绑定数据源的字段. 先设计报表的静态部分,再用代码注册数据源,然后设计,添加注册的数据源,绑定字段. var rep ...