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漏洞+越权修改应用封面的更多相关文章

  1. PhpMyWind储存型XSS漏洞练习(CVE-2017-12984)

    0x01 介绍 又是一款开源CMS内容管理系统PhpMyWind,在小于等于5.4版本中存在储存型XSS漏洞.如下图所示,这个就是发生储存型XSS漏洞的代码 0x02 演示 1.第一张图是客户留言时, ...

  2. 74CMS3.0储存型XSS漏洞代码审计

    发现一个总结了乌云以前代码审计案例的宝藏网站:https://php.mengsec.com/ 希望自己能成为那个认真复现和学习前辈们思路的那个人,然后准备慢慢开始审计一些新的小型cms了 骑士cms ...

  3. [代码审计]:PhpMyWind储存型XSS漏洞(CVE-2017-12984)

    简介 今天开启一下代码审计的篇章  python安全编程剩下的看起来没意思就结束了 ,现在规划每2周写一个爬虫练练手, 然后今天开启代码审计和Docker的学习 我个人感觉先看漏洞利用过程再看漏洞分析 ...

  4. 薄弱的交互页面之新浪微博到博客的储存型xss漏洞

    首先分享一片博文到微博,然后 在微博评论xss code 最后回到博客点击举报就触发xss了 点击举报 Xss之2 首先还是分享一片博文到微博,然后评论xsscode 回到我的博客个人中心,查看评论 ...

  5. Java Web开发 - 持久型/存储型XSS漏洞

    Java Web开发 - 持久型/存储型XSS漏洞 1.什么是XSS漏洞攻击? XSS是跨站脚本攻击(Cross Site Scripting)的简称,之所以叫XSS而不是CSS相比大家都能明白了吧, ...

  6. phpcms某处储存型XSS(demo+本地演示)

    文章转载:http://www.myhack58.com/Article/html/3/7/2016/71726.htm 详细说明: demo+本地演示存在xss漏洞的地方在商务中心的商家资料的我的资 ...

  7. 【代码审计】大米CMS_V5.5.3 后台多处存储型XSS漏洞分析

      0x00 环境准备 大米CMS官网:http://www.damicms.com 网站源码版本:大米CMS_V5.5.3试用版(更新时间:2017-04-15) 程序源码下载:http://www ...

  8. 【代码审计】iZhanCMS_v2.1 前台存储型XSS漏洞分析

      0x00 环境准备 iZhanCMS官网:http://www.izhancms.com 网站源码版本:爱站CMS(zend6.0) V2.1 程序源码下载:http://www.izhancms ...

  9. 【代码审计】eduaskcms_v1.0.7前台存储型XSS漏洞分析

      0x00 环境准备 eduaskcms官网:https://www.eduaskcms.xin 网站源码版本:eduaskcms-1.0.7 程序源码下载:https://www.eduaskcm ...

随机推荐

  1. synchronized的可见性理解

    之前的时候看<并发编程的艺术>,书中提到dcl写法的单例模式是有问题的,有可能会导致调用者得到一个创建了一半的对象,从而导致报错.修复办法是将单例对象的引用添加volatile进行修饰,禁 ...

  2. java ee的map

  3. find ip from hostname or find hostname from ip

    1. find ip from hostname ping <hostname> 2.fin hostname from ip nslookup <ip>

  4. sqlite、mysql 将时间戳转换成本地时间语句

    sqlite:SELECT datetime(createdTime, 'unixepoch', 'localtime'); mysql:SELECT FROM_UNIXTIME( 124948800 ...

  5. MySQL之函数

    了解编程的人一般都会知道函数的重要性,丰富的函数有的时候可以给我们带来事半功倍的效果,在MySQL中提供了许多的内置函数,能够帮助开发人员编写简单快捷的SQL语句,除了这些内置的函数之外,用户也可以自 ...

  6. 标准webservice调用

    现代定义的webservice一般都倾向于restfull风格的http请求,但工作中还是会遇到前辈们写的时代代码. 我们更倾向于封装代码来调用,而不是服务引用.请看: Service.asmx服务的 ...

  7. 阿里云 maven 地址

    http://maven.aliyun.com/nexus/content/groups/public/ 阿里云的 maven 地址

  8. [转]asp.net5中使用NLog进行日志记录

    本文转自:http://www.cnblogs.com/sguozeng/articles/4861303.html asp.net5中使用NLog进行日志记录 asp.net5中提供了性能强大的日志 ...

  9. shiro权限控制入门

    一:权限控制两种主要方式 粗粒度 URL 级别权限控制和细粒度方法级别权限控制 1.粗粒度 URL 级别权限控制 可以基于 Filter 实现在数据库中存放 用户.权限.访问 URL 对应关系, 当前 ...

  10. 流畅的python和cookbook学习笔记(七)

    1.读写压缩数据文件 使用 gzip 和 bz2 模块来读写压缩文件,不过需要注意文件的模式,默认格式为二进制. # 读取压缩文件 import gzip with gzip.open('somefi ...