XSS注入学习
引贴:
http://mp.weixin.qq.com/s?__biz=MzIyMDEzMTA2MQ==&mid=2651148212&idx=1&sn=cd4dfda0b92ab6a88cc9e4ee9feea32d&chksm=8c21542ebb56dd38ac073112df40dfd2e76e824be33b5045cf63b35e74578a53ae909111d844&scene=1&srcid=0913HLl2cBggRZa1jldZPE8t#rd
一定使用firefox来学习
首先开启apche和mysql,我的虚拟机安装的是lampp集成环境
然后到WEB根目录创建一个测试的php文件
然后键入以下代码
http://192.168.30.208/xsstest.php/?title=Hello%20World%20Mululu Test
其中 ?title=Hello%20World%20Mululu Test 这一段是传入一串参数
看看效果:
看看抓取的源代码:
注意Title部分和正文content......的上面,我们不管给GET参数title赋值什么,这两处都是相同的。
如果假设我们输入了一个<p>a</p>会发生什么呢?
我们看到title变成了<p>a</p>,正文的标题也成了<p>a</p>,但是为什么我们的HTML没有执行呢?
我们来看下源代码就懂了:
在title标签之间的<p>a</p>确实是<p>a</p>,但是在正文的h1标签之间的<p>a</p>却是:<p>a</p>
这个正文处的<p>a</p>没被浏览器渲染,我们也就认了吧,因为在源代码里根本就不是<p>a</p>。但是这个title标签之间的<p>a</p>没被渲染是怎么一回事呢?
原因很简单,这是因为title标签之间的内容会被显示在浏览器的tab页内,<p>标签在title标签之间没法执行怎么办?
我们闭合</title>这样再在后面写代码就可以了
这个就理解为 我们通过参数注入进去的代码 被执行了
这一点很简单 但是却很重要
因为如果这样子注入的代码可以被执行 那就意味着我们还可以注入更坏的东西
比方说这样:
http://192.168.30.208/xsstest.php/?title=test%3C/title%3E%3Cscript%3Ealert(/XSS/);%3C/script%3E
效果如下:
于是我们就一步一步控制了这个页面的行为 那我们还可以更坏
比方说我们可以钓个鱼:
http://192.168.30.208/xsstest.php?title=TITLE%3C/title%3E%3Cscript%3Evar%20a%20=%20prompt%28%27%E5%AF%86%E7%A0%81%E5%B7%B2%E7%BB%8F%E8%BF%87%E6%9C%9F%EF%BC%8C%E8%AF%B7%E9%87%8D%E6%96%B0%E8%BE%93%E5%85%A5%E5%AF%86%E7%A0%81%27%29;alert%28a%29;%3C/script%3E
太可怕了。。。。。。。
其实XSS是属于Code Injection的一种。就和SQL注射一样都是属于Code Injection漏洞,只是Injection的代码不同,SQL注射注射的是SQL语句,XSS则是注射的HTML和JS的语句。
XSS注入学习的更多相关文章
- XSS漏洞学习笔记
XSS漏洞学习 简介 xss漏洞,英文名为cross site scripting. xss最大的特点就是能注入恶意的代码到用户浏览器的网页上,从而达到劫持用户会话的目的. 说白了就是想尽办法让你加载 ...
- XSS基础学习
XSS基础学习 By:Mirror王宇阳 什么是XSS XSS攻击是指在网页中嵌入一段恶意的客户端Js脚本代码片段,JS脚本恶意代码可以获取用户的Cookie.URL跳转.内容篡改.会话劫持--等. ...
- MySQL手工注入学习-1
MySQL手工注入学习 SQLi-labs 手工注入学习 以下是通过SLQi-labs平台的部分简单例题的手工注入过程 Less-1:union联合查询注入 页面提示:Please input the ...
- 富文本编辑器防止xss注入javascript版
富文本编辑器:ueditor 其实富文本编辑器已经有防止xss注入功能,但是你服务端程序在接收的时候在做一次转义,否则有可能然后前端验证直接提交数据导致被xss攻击. 为了节省后端程序开销则在前端 显 ...
- 基于DOM的XSS注入漏洞简单解析
基于DOM的XSS注入漏洞简单解析http://automationqa.com/forum.php?mod=viewthread&tid=2956&fromuid=21
- 【web安全】第一弹:利用xss注入获取cookie
首先一定要先来吐槽一下tipask系统.这是一枚开源的类似百度知道的系统,但是漏洞多多,最基本的XSS注入都无法防御. 言归正传: [准备1] cookie接收服务器. 平时喜欢用sae,所以在sae ...
- 中间人攻击工具mitmf(另类的XSS注入攻击)
中间人攻击工具mitmf(另类的XSS注入攻击) (一)简介 (二)安装 (三)结合beef使用 (一)简介 Mitmf 是一款用来进行中间人攻击的工具.它可以结合 beef 一起来使用,并利用 be ...
- 初级安全入门——XSS注入的原理与利用
XSS的简单介绍 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶意攻击者 ...
- web安全之XSS注入
之前在做项目的时候有遇到一些安全问题,XSS注入就是其中之一 那么,什么是XSS注入呢? XSS又叫CSS (Cross Site Script) ,跨站脚本攻击.它指的是恶意攻击者往Web页面里插入 ...
随机推荐
- repcached与mysql缓存測试
使用gem安装mysql引擎 gem install mysql(假设安装失败.请查找一些依赖组建是否安装,比如mysql-devel) 编写ruby脚本,先获取mysql数据,之后从memcache ...
- js 刷新后不提示并保留控件状态
保存后,想提示一下并保留查询条件的状态,发现可以用document.forms[0].submit();继续提交达到刷新的目的 代码如下: ScriptManager.RegisterStartupS ...
- mysql_windows解压包安装
WIN下安装64位的解压版mysql-5.6.24-winx64 参考如下安装步骤: 1.将解压缩后的文件放到自己想要的地方 并配置环境变量. 示例中存放的目录为:D:\Program Files\m ...
- librtmp将本地FLV文件发布到RTMP流媒体服务器
没有用到ffmpeg库 可以将本地FLV文件发布到RTMP流媒体服务器 使用librtmp发布RTMP流可以使用两种API:RTMP_SendPacket()和RTMP_Write(). 使用RTMP ...
- TF和SD
TF卡又称T-Flash卡,全名:TransFLash,又名:Micro SD SD卡(Secure Digital Memory Card,安全数码卡)
- 出错的方法有可能是JDK,也可能是程序员写的程序,无论谁写的,抛出一定用throw
应对未检查异常就是养成良好的检查习惯. 已检查异常是不可避免的,对于已检查异常必须实现定义好应对的方法. 已检查异常肯定跨越出了虚拟机的范围.(比如“未找到文件”) 如何处理已检查异常(对于所有的已检 ...
- 【BZOJ】1016: [JSOI2008]最小生成树计数(kruskal+特殊的技巧)
http://www.lydsy.com/JudgeOnline/problem.php?id=1016 想也想不到QAQ 首先想不到的是:题目有说,具有相同权值的边不会超过10条. 其次:老是去想组 ...
- 传参方法:sharedApplication, NSUserDefaults, protocol 和 delegate(实例)
本文转载至 http://blog.csdn.net/learnios/article/details/8442201 分类: 功能模块2012-12-27 10:22 109人阅读 评论(0) 收 ...
- zoj3696(泊松分布)
p(k)=(y^k) / (k!) * e^(-y) 其中的y就是平均值 k就是我们要求的大小. Alien's Organ Time Limit: 2 Seconds Memory Lim ...
- python基础之1-安装
author:headsen chen date :2018-03-22 17:16:14 notice :This article created by headsen chen and no ...