专栏首页FreeBuf经验分享 | XSS手工利用方式

经验分享 | XSS手工利用方式

前言

在面对xss漏洞的时候,笔者通常会简单的找个xss平台,插入一段平台的xss代码,盗取个cookie,就自以为是的认为自己掌握了xss漏洞。这篇文章旨在抛开xss漏洞平台,从简单利用源代码的角度,分享一下如何利用xss获取用户的cookie信息。在实际渗透中,笔者通过自己写利用代码的方式,先后运用xss实现了挖矿、简单的DDOS攻击测试、获取cookie、内网端口、截屏等。

声明:本文仅涉及技术讨论,请勿用于任何非法用途!

0x00 vps

当我们在插入的xss,在客户端成功执行了相关的操作后,需要将获取的内容传递出来,可以选择购买VPS或者免费的dnslog平台通过get请求来接受数据。

在vps端有很多接受客户端传递数据的方式,包括自己写代码等,现提供以下两种方案作为参考:

1.利用netcat

在命令行运行

2.利用python

0x01获取cookie

img标签

目标页面:

在vps上获取的cookie信息:

script标签

body标签

0x02 DOS攻击

主要用到websocket,websocket是HTML5一种新的协议,它实现了浏览器与服务器全双工通信(full-duple),目前主流的浏览器都能很好地支持websocket,攻击者将精心构造的恶意代码插入到目标网站,当受害者浏览到该页面的时候,受害者的浏览器会自动去请求连接要攻击的IP地址。

如上所示,不停的向受害者发包,直到进程数满为止。不过这种DOS攻击,也会大大影响浏览器客户端的性能,但是可以通过控制发包数量,当有多个浏览器访问该js时,可以达到单个客户端性能损失很小,受害者目标系统性能损失很大,来实现DOS攻击。

0x03js挖矿

coinhive(https://coin-hive.com/)该网站专门提供一个用来挖矿的 js 引擎,可以用来挖门罗币( XMR)。这个网站提供了丰富的设置,可以调整挖矿时限制CPU使用率,如果调低一些CPU使用率,人们在访问网站时不查看网站代码访问者很难发现。

要想使用该网站,首先需要在该网站上进行注册,利用它的js引擎在受害者的浏览器上挖矿,同时该网站也会自动扣除一部分算力作为费用。

主要代码如下:

代码中的key值,可以通过在网站注册,免费获得。>

0x04探测内网端口

WebRTC实现了基于网页的视频会议,标准是WHATWG 协议,目的是通过浏览器提供简单的javascript就可以达到实时通讯(Real-Time Communications (RTC))能力。攻击者可以利用webrtc来获取受害者的内网IP地址。获取到内网IP地址之后,可以进一步有针对性的进行内网开放HTTP协议的端口进行探测。

获取受害者内网IP

将以上的代码插入到目标网站中,可以获取到受害者的内网IP,然后在通过ajax等方式传递到vps 上,方便进行下一步的利用。

(ps:本人是在chrome下测试的)

2.内网http协议端口探测

//这段代码意思是当src后面的地址及端口开放的时候,会加载onload事件,可以将探测到的内网地址发送到VPS

在vps端,可以检测到受害者内网端口开放情况:

本文分享自微信公众号 - FreeBuf(freebuf),作者:m09046105

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-01-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 花生壳黑吃黑之一:Web练手基地

    作为我这样的新手,看网上的渗透社工教程,看的我热血沸腾,但是我怎么找那种脆弱网站练手啊,现在网站一个比一个保护强,什么弱口令,什么注入到哪里去找啊?菜鸟们是否有...

    FB客服
  • 揭秘Agent Tesla间谍木马攻击活动

    近日,亚信安全截获多个垃圾邮件的攻击活动,这些攻击活动使用的邮件附件通常是伪装成系统镜像ISO文件(亚信安全检测为Mal_GENISO)以及RAR和LZH压缩文...

    FB客服
  • 「无文件」攻击方式渗透实验

    前几天看了一个文章《全球上百家银行和金融机构感染了一种“无文件”恶意程序,几乎无法检测》,觉得powershell很是神奇,自己希望亲手实验一下,以最大程度还原...

    FB客服
  • Spring Boot 整合 elk

    进入容器后,修改 /etc/logstash/conf.d/02-beats-input.conf

    程序员果果
  • riot.js教程【五】标签嵌套、命名元素、事件、标签条件

    前文回顾 riot.js教程【四】Mixins、HTML内嵌表达式 riot.js教程【三】访问DOM元素、使用jquery、mount输入参数、riotjs...

    liulun
  • 基于VGG19的识别中国人、韩国人、日本人分类器

    这是本学期机器学习课程的项目。通过这个项目了解了不少东西,希望通过博客记录下整个项目过程。 ---- 国外有一个网站 http://www.alllooksam...

    机器学习AI算法工程
  • 如何把custom form 7添加到wordpress每个页面

      我们已经知道wordpress如何添加contact form 7了,也知道[contact-form-7 id="xx" title="mytitle"]...

    ytkah
  • php运行生命周期--脚本执行阶段 php_execute

    第1步:词法分析将PHP代码转换为有意义的标识Token。该步骤的词法分析器使用Re2c实现的。

    程序员小饭
  • SQL Server 2017 安装过程中的一点说明(有点意思)

    偶尔冒个泡吧 会提到:“安装程序无法与下载服务器联系。请提供 Microsoft 机器学习服务器安装文件的位置,然后单击“下一步”。可从以下位置下载安装文件” ...

    逸鹏
  • 我是买Jetson TX2开发套件还是买TX2模组+载板?

    GPUS Lady

扫码关注云+社区

领取腾讯云代金券