javascript伪协议

     2022-03-16     452

关键词:

 

javascript 伪协议

将javascript代码添加到客户端的方法是把它放置在伪协议说明符javascript:后的URL中。这个特殊的协议类型声明了URL的主体是任意的javascript代码,它由javascript的解释器运行。如果javascript:URL中的javascript代码含有多个语句,必须使用分号将这些语句分隔开。这样的URL如下所示:

1
javascript:var now = new Date(); "<h1>The time is:</h1>" + now;

当浏览器装载了这样的URL时,它将执行这个URL中包含的javascript代码,并把最后一条javascript语句的字符串值作为新文档的内容显示出来。这个字符串值可以含有HTML标记,并被格式化,其显示与其他装载进浏览器的文档完全相同。

javascript URL还可以含有只执行动作,但不返回值的javascript语句。例如:

1
javascript:alert("hello world!")

装载了这种URL时,浏览器仅执行其中的javascript代码,但由于没有作为新文档来显示的值,因此它并不改变当前显示的文档。

通常我们想用javascript:URL执行某些不改变当前显示的文档的javascript代码。要做到这一点,必须确保URL中的最后一条语句没有返回值。一种方法是用void运算符显式地把返回值指定为underfined,只需要在javascript:URL的结尾使用语句void 0;即可。例如:下面的URL将打开一个新的空浏览器窗口,而不改变当前窗口的内容:

1
javascript:window.open("about:blank"); void 0;

如果这个URL没有void运算符,window.open()方法的返回值将被转换成字符串并被显示出来,当前窗口将被如下所示的文档覆盖。


 

不是所有标记属性值都能产生xss,通常只有引用文件的属性才能触发xss

可用来测试的属性:

  href

  lowsrc

  bgsound

  background  

  value  

  action

  dynsrc

javascript伪协议!请教个问题,伪协议<ahref="javascript:xxxxx"

javascript伪协议!请教个问题,伪协议<ahref="javascript:xxxxx">xxxx</a>我怎么插平台地址打cookie,我javascript很渣,或者说怎么插一个外部js参考技术A定义函数,在函数里处理添加js逻辑,然后在a标签是调用追问求利用... 查看详情

鼎育教育成都java培训机构学习javascript注意的4个问题

鼎育教育成都java培训机构学习javascript注意的4个问题1.关于javascript伪协议:通过一个链接调用javascript函数,比如:linkexample作用:伪协议启用javascript,通过链接调用javascript函数缺点:需要支持javascirpt功能的浏览器 不支持javascript浏... 查看详情

php伪协议(代码片段)

0x01php伪协议php伪协议其实就是支持得协议与封装这种协议一共有12种file://访问本地文件系统http://访问http/https网址php://访问各个输入/输出流data://数据phar://php归档zlib://压缩liuftp://访问FTP(S)URLSssh2://Secureshell2rar://RARogg://音频流except... 查看详情

javascript:playvideo()啥意思

  javascript:playVideo()意思是使用JavaScript语法解析后面的playVideo(),在a标签的href中才是伪协议。  解释:playVideo()是一个javascript方法,这个方法完成视频播放动作。参考技术A这是一个伪脚本,是直接在浏览器url栏输入就可以... 查看详情

了解javascript中的伪数组

1.什么是伪数组JavaScript中存在有一种类数组,或者说伪数组。经常见到的伪数组有函数的arguments对象、dom.querySelectorAll等获取的NodeList类(NodeList本身具有forEach方法)等。伪数组并不是数组,它没有继承Array.prototype,但是它“看起... 查看详情

xsschallenges(代码片段)

文章目录Stage#11.标签风格2.JavaScript伪协议3.事件方法对DOM事件的补充:事件句柄 (EventHandlers)鼠标/键盘属性IE属性标准Event属性标准Event方法Stage#2Stage#3Stage#4Stage#5Stage#6Stage#7Stage#8Stage#9Stage#101.双写绕过2.编码绕过Stage#11提示࿱... 查看详情

xsschallenges(代码片段)

文章目录Stage#11.标签风格2.JavaScript伪协议3.事件方法对DOM事件的补充:事件句柄 (EventHandlers)鼠标/键盘属性IE属性标准Event属性标准Event方法Stage#2Stage#3Stage#4Stage#5Stage#6Stage#7Stage#8Stage#9Stage#101.双写绕过2.编码绕过Stage#11提示࿱... 查看详情

javascript伪经典类(代码片段)

查看详情

javascript使用javascript修改css伪元素属性。(代码片段)

查看详情

javascript闭包,伪api(代码片段)

查看详情

javascript插入排序算法伪码(代码片段)

查看详情

通过 JavaScript 更改 CSS 伪元素样式 [重复]

】通过JavaScript更改CSS伪元素样式[重复]【英文标题】:ChangingCSSpseudo-elementstylesviaJavaScript[duplicate]【发布时间】:2011-05-2718:13:01【问题描述】:是否可以通过JavaScript更改CSS伪元素样式?例如,我想像这样动态设置滚动条的颜色:d... 查看详情

javascript伪数组和转化为标准数组

1:什么是伪数组伪数组是一个含有length属性的json对象,它是按照索引的方式存储数据,它并不具有数组的一些方法,只能能通过Array.prototype.slice转换为真正的数组,并且带有length属性的对象。   varobj={0:‘a‘,1:‘b‘,length... 查看详情

文件包含与php伪协议实战演练(代码片段)

...个函数二、本地文件包含、远程文件包含的区别三、PHP伪协议测试代码目标文件常用协议1、目录遍历获取flag2、php://input、php://filter3、file://4、data://5、zip://一、PHP中造成文件包含的四个函数1、include()、require()当使用include()函数... 查看详情

通过伪经典实例化 (JavaScript) 掌握原型继承

】通过伪经典实例化(JavaScript)掌握原型继承【英文标题】:GraspingprototypicalInheritancethroughpseudoclassicalinstantiation(JavaScript)【发布时间】:2016-04-1007:31:00【问题描述】:我正在尝试通过JavaScript使用继承来通过测试套件。以下是我到... 查看详情

php伪协议(文件包含)

php支持多种封装协议一.实验环境dvwa平台low级别,phpstudy中设置为5.4.45版本*将php.ini中的allow_url_fopen和allow_url_include都改为On需要四个文件:1.index.php(默认有,在phpStudy\\PHPTutorial\\WWW\\DVWA-master\\vu 查看详情

javascript:获取伪元素的高度:before元素

】javascript:获取伪元素的高度:before元素【英文标题】:javascript:getheightofpseudo:beforeelement【发布时间】:2014-06-0812:54:49【问题描述】:我需要一个伪:before元素的高度。听起来很简单,但我无法让它工作。这是我尝试过的:$(\'.te... 查看详情

javascript使用js捕获伪元素(代码片段)

查看详情