【合天】XSS进阶三

最近看了一些类似佛教or玄学or外星人的vlog,虽然对神秘的东方力量及外星文化没法眼见为实地去验证,但其中讲到“引力法则”有一句话我还是挺赞同:如果想要获得某种能力,那就帮助别人去获得这种能力,回过头来发现自己也一定具备了这种能力并且会认识更加深刻;每天给自己积极的心理暗示以及输出正能量给周围的人(据“引力法则”将这样的心态会导致磁场巴拉巴拉变得正能量,从而事事顺心?)…其中的科学原理有待考证,但这样的心态的确是我急需的。毕竟现在的时间段也算是在一个人生的低点了,保持向上并相信自己,继续乐观并乐善好施。
so我继续写日记hhhhh今天做了xss进阶三。


实例7:和做实例6的思路差不多,中间的var …;这一串东西我们不想要,我们想要弹框,所以我们需要通过闭合来使得能够直接弹框。但是hemlentities()函数是个考点,百度一下这个函数的作用是将字符串heml实体化,有一些设置参数的用法。但是我们可以看到这个函数里面是没有设置多余参数的,只有一个$_GET[“name”],所以这个时候我们需要搞清楚htmlentities()这个参数在默认情况下是对哪些字符串进行html实体化,对哪些字符串不进行实体化的。
PS:对php一无所知,希望大佬看到了可以纠正我思路的错误。
【合天】XSS进阶三_第1张图片
在下面这张图我们可以看到这个函数对英文的单引号是不会进行转化的。所以我们就用单引号来进行闭合。
【合天】XSS进阶三_第2张图片
闭合语句见下面这张图。
【合天】XSS进阶三_第3张图片


实例8:
【合天】XSS进阶三_第4张图片
构造如下:
【合天】XSS进阶三_第5张图片
查看构造语句后的源码如下:添加了onsubmit事件之后,点击提交按钮,则可触发alert(1)语句。
【合天】XSS进阶三_第6张图片


实例9:【合天】XSS进阶三_第7张图片
关于document.write()请见https://blog.csdn.net/wei_ke_zhi/article/details/82153778

关于Location.hash()请见https://www.runoob.com/jsref/prop-loc-hash.html
【合天】XSS进阶三_第8张图片
关于substring()请见https://www.w3school.com.cn/js/jsref_substring.asp添加链接描述
关于substring()我有一些自己的想法, 从下面这张图可以看到substring()的起始读取位置是0,比如下面这个例子1里面substring(0)就是H。
【合天】XSS进阶三_第9张图片
所以题目中的substring(1)是从位置1开始往后的所有字符。而location.hash.substring(1)是指将location.hash()获得的字符串传递给substring()函数,然后从位置1开始读取。所以构造下面语句。
【合天】XSS进阶三_第10张图片
我有个疑惑点是:
【合天】XSS进阶三_第11张图片
#后面直接跟script语句,也可以直接弹框。
后面我发现是我粗心了,location.hash()函数返回的是#后面字符串并且包括#。所以substring(1)返回就是#后面的字符串,但不包括#。所以,#就是substring(0),location.hash(substring(1))返回的是紧跟在#后的script语句。
所以#后面不需要再进行字符填充。

你可能感兴趣的:(【合天】XSS进阶三)