一个典型的XSS盲打漏洞可导致全网用户cookie被盗取

偶平时在做安全测试时,一般是以发现问题为主,点到为止,但做安全的同学可能也遇到过这样的问题,当你尝试向开发的同学描述一个漏洞危害怎么怎么样的时候,双方经常会有一种鸡同鸭讲的感觉,甚至他们觉得我们在夸大其词去影响他们去修复,其实面对开发的同学的质疑,我也觉得合理,毕竟你用XSS去弹个框,能说明什么呢?因此,本案例着偏重渗透的过程,目的是通过一个案例来解决以后鸡同鸭讲的局面,同时也能树立安全部的权威。

YS OMM在记录日志时未对输入数据进行过滤,易导致存储型XSS攻击【高】

问题描述:

         OMM模块在日志中记录了用户对设备等资源的相关操作,但是有些操作日志的内容是用户可控制的,故可以通过特定的接口往OMM日志写入可产生攻击的特殊字符,比如当向日志写入恶意JS脚本,当OMM管理员登录OMM系统查看用户日志时,恶意脚本执行,此时,我们可以下载一段更加强大的JS脚本作为产生一个XSS代理,在外围和内网之间搭建一个通信的“桥梁”,然后利用OMM的公告管理功能向所有YS用户发送带恶意JS脚本的系统公告,一旦用户登录上线,公告的恶意代码自动执行,用户的cookie即被盗取。

注:为了向开发的同志们说明此漏洞的真正危害所在,我们决定在测试平台上进行实战演习,即盗取所有测试账号的cookie,也便于澄清XSS不再是弹一个框的问题。

测试步骤:

1、  启动burp,并开启http拦截代理功能:

2、  登录YS,选择 配置管理> 设备管理> 设备详情> 修改名称,输入合法名称并提交,,如下所示:

3、  在burp拦截到的请求中改为带攻击性的名称,并提交,如下图:

4、  登录OMM数据查看日志,可以看到脚本语句已被写入日志,如下图:

5、  等待OMM管理员登录查看日志。

6、  等待一段时间过后,在xss shell工具的控制界面看到,我们的代码被成功执行了,有浏览器上线,这也说明OMM管理员中招了:

7、  启动xss tunnel工具,配置代理监听端口,这里设置为本地的8079,如图:

8、  设置浏览器使用该代理进行访问,如图:

9、  可以看到,以及成功的访问到YS的OMM控制台,各种强大功能(比如:公告管理)在浏览器上展现出来,如下图所示:

10、              我们模拟攻击者向测试平台推送了一条含有xss代码的系统公告,该xss的代码作用是收集登录用户的cookie,如图:

11、              过了一段时间,我们成功收集到了一些同事的cookie,并且成功登录。

问题扩展:

         可能还有其它接口(比如手机API,PC客户端API)存在同样类似问题,所以对于用户能够控制日志内容的接口都应该应仔细排查。

解决建议:

1、  对写入日志的内容进行html编码(可参考ESAPI的encodeForHTML方法),以确保读取日志时不会产生有害攻击。

2、  对输入的数据使用白名单做过滤。

时间: 2024-10-05 11:17:36

一个典型的XSS盲打漏洞可导致全网用户cookie被盗取的相关文章

XSS攻击:SOHU视频XSS漏洞导致其用户成为DDOS肉鸡

XSS又叫CSS (Cross Site Script) ,跨站脚本攻击.恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的. from:http://www.incapsula.com/blog/world-largest-site-xss-ddos-zombies.html incapsula发现其一个客户遭受了应用层的DDos攻击. 大概有22000的互联网用户对其网站发起了2000万的GET请求. 

一个典型的参数型跨站脚本漏洞

拿百度主页曾经的一个XSS做个演示,这个漏洞是由于百度主页tn和bar参数过滤不严导致的参数型XSS: http://www.baidu.com/index.php?tn="/**/style=xss:expression(alert(‘xss‘));  http://www.baidu.com/index.php?bar="/**/style=xss:expression(alert(‘xss‘)); tn和bar两个参数对应在页面的输出是两个input表单值,可以使用”(双引号)闭

一个利用“永恒之蓝”漏洞传播的挖矿程序分析

背景介绍 近日,渔村安全团队追踪到一个利用永恒之蓝漏洞传播的挖矿程序,其具备高度的模块化和较强的传播能力,在短短数日就感染了数万台用户电脑.针对该突发情况,渔村安全团队迅速组织应急工作,最终使得目前的感染情况受到控制,下文为样本分析. 感染量 从微软发布ms17-010(永恒之蓝漏洞) 的修复补丁到现在已经过去四个月了,相继爆发的利用该漏洞传播的WannaCry,Petya 勒索病毒更是给 我们 上了一课.但目前来看,还是有不少用户没有及时更新补丁或者做相应的缓解措施,同时 Shadow Bro

代码审计中的XSS反射型漏洞

XSS反射型漏洞 一 XSS漏洞总共分三总 XSS反射型漏洞,XSS保存型漏洞,基于DOM的XSS漏洞 这次主要分享XSS反射型漏洞 基本原理:就是通过给别人发送带有恶意脚本代码参数的URL,当URL地址被打开时,特定的代码参数会被HTML解析,执行,如此就可以获取用户的COOIKE,进而盗号登陆. 特点是:非持久化,必须用户点击带有特定参数的链接才能引起. 比如hack甲构造好修改密码的URL并把密码修改成123,但是修改密码只有在登陆方乙才能修改,乙在登陆的情况下点击甲构造好的url将直接在

监督学习 - 一个典型的工作流程

参考:https://blog.csdn.net/oucpowerman/article/details/50390239 现今,当在"数据科学"领域开始引入各种概念的时候,著名的"鸢尾花(Iris)"花数据集可能是最常用的一个例子.1936年,R.A.Fisher在他的判别分析中创建和使用了Iris数据集.Iris现在可以从UCI机器学习库中免费得到. 在一个监督分类任务中,它将会是一个很好的例子.Iris中的花被分为了三类:Setosa , Virginica

C++多态性的一个典型例子(转)

本文摘录自C++多态性的一个典型例子. 例题:先建立一个Point(点)类,包含数据成员x,y(坐标点).以它为基类,派生出一个Circle(圆)类,增加数据成员r(半径),再以Circle类为直接基类,派生出一个Cylinder(圆柱体)类,再增加数据成员h(高).要求编写程序,重载运算符“<<”和“>>”,使之能用于输出以上类对象. 这个例题难度不大,但程序很长.对于一个比较大的程序,应当分成若干步骤进行.先声明基类,再声明派生类,逐级进行,分步调试. 1. 声明基类Point

什么是xss盲打

什么是xss盲打? 盲打只是一种惯称的说法,就是不知道后台不知道有没有xss存在的情况下,不顾一切的输入xss代码在留言啊,feedback啊之类的地方,尽可能多的尝试xss的语句与语句的存在方式,就叫盲打. "xss盲打"是指在攻击者对数据提交后展现的后台未知的情况下,网站采用了攻击者插入了带真实攻击功能的xss攻击代码(通常是使用script标签引入远程的js)的数据.当未知后台在展现时没有对这些提交的数据进行过滤,那么后台管理人员在操作时就会触发xss来实现攻击者预定好的&quo

1.3—一个典型的JAVA程序的编写和运行过程

JAVA语言应用范围 桌面应用编程 WEB客户端编程 WEB服务器编程 手机编程 机器人编程 第一个JAVA程序 JAVA开发环境搭建 下载:Download J2SDK (Java  2 Software  Development Kit) from http://java.sun.com 安装:run the executable(跟普通软件安装一样,点击下一步就OK!)  环境变量配置: 环境变量(就是为相关命令提供一个路径信息,告诉他到哪里去找相关文件信息): 设置: 新增系统环境变量J

一个典型的PHP分页实例代码分享

一个典型的PHP分页实例代码分享,学习php的朋友肯定用得到,主要是了解思路. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <hea