XSS进阶三

实验来源:合天网安实验室

实例七、和实例六好像木有区别

      关键代码:

分析:htmlentities函数把字符转换为 HTML 实体(具体如下)。

显示结果描述实体名称实体编号
 空格  
<小于号&lt;&#60;
>大于号&gt;&#62;
&和号&amp;&#38;
"引号&quot;&#34;
'撇号 &apos; (IE不支持)&#39;
&cent;&#162;
£&pound;&#163;
¥日圆&yen;&#165;
欧元&euro;&#8364;
§小节&sect;&#167;
©版权&copy;&#169;
®注册商标&reg;&#174;
商标&trade;&#8482;
×乘号&times;&#215;
÷除号&divide;&#247;
举个简单的例子吧,见下图(要查看源代码哦),多动手真的挺重要的,很多时候就是懒

我们看一下表格,单引号是没被转换的,那个撇号好像单引号,测试一下你就知道单引号没转换,而且关键源代码中用了单引号,实验设计师绝对是故意的,实例六是双引号的那把实例六的代码改为单引号就可以了,看下图,源代码中的



根据实例七的代码提示,下面哪个语句能成功:  【单选题】  题目已完成,2 

【A】直接输入alert(1)【B】输入alert(1)//【C】输入alert(1);//【D】输入a';alert($a);$a='A:肯定不行啦,alert(1)被当做字符串了;B,C:前面‘没闭合,B还没分号,后面的注释没问题

实例八、有时候你要跳出你的思维

      关键代码:


分析:$_SERVER 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。$_SERVER['PHP_SELF']就是当前执行脚本的文件名,如下:(更详细的信息请看:http://php.net/reserved.variables.server


那么这里我们也要用到闭合双引号啦,表单的话有个onsubmit事件

先在地址栏这样输入,回车后看一下源代码,form里面的属性被改了吧

然后在按一下提交不就触发onsubmit事件了吗


任务二

根据实例八的代码提示,下面哪种方式能成功:  【单选题】  题目已完成,2 

【A】直接在输入框输入alert(1)【B】直接在输入框输入javascript:alert(1)【C】在地址栏输入/"onsubmit=javascript:alert(1)%20name="a【D】在地址栏输入/"onfocus=javascript:alert(1)%20name="aA,B:肯定是不行,直接放在双引号里里面了,完全发挥不了任何作用C,D:唯一的不同是事件属性不同,其中%20是 空格的html编码,onsubmit可以了,onfocus无法触发

实例九、将xss进行到底

      关键代码:


分析:location是JavaScript管理地址栏的内置对象,比如location.href用来管理页面的URL,用location.href=url就可以直接将页面重定向URL,而location.hash则可以用来获取或设置页面的标签值。比如http://domain/#admin的location.hash="#admin",substring() 方法用于提取字符串中介于两个指定下标之间的字符。他有两个参数,分别是始末位置,末位置可省略(那默认就是字符串的最后咯),那么location.hash.substring(1)的意思是首先获取#后面的内容(不包括#,简单来说就是去掉#),然后完完全全写在网页上,注意不是写在script标签里的 然后截取#后面的内容,所以我们的代码可以下载#后面了




任务三

根据实例九的代码提示,下面哪种方式能成功:  【单选题】  题目已完成,2 

【A】#<img src=1 onerror=alert(1)>【B】#alert(1)【C】#javascript:alert(1)【D】###alert(1)A:经过上面的测试可以的啦B,C的话是直接将alert(1)或 javascript:alert(1)戒指写在网页上,没有script标签就没卵用了 D的话连两个#都写上网页上了,更加不行
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值