![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
文章平均质量分 92
未知百分百
对网络安全比较感兴趣,熟悉计算机网络和Linux操作系统、Python程序设计相关的知识和技能,目前正在持续学习网络安全中
展开
-
Nodejs沙箱绕过
Node.js沙箱逃逸是指攻击者通过利用Node.js沙箱中的漏洞,成功地从沙箱环境中逃脱,并在主机上执行恶意代码。这种攻击方式通常是通过利用Node.js沙箱中的一些不安全的API或者漏洞来实现的。例如,攻击者可以通过在Node.js沙箱中使用eval()函数来执行任意的JavaScript代码,从而逃脱沙箱环境。另外,攻击者还可以利用Node.js沙箱中的child_process模块来执行系统命令,从而获取系统权限。为了防止Node.js沙箱逃逸攻击,开发人员应该遵循安全编程规范,并使用最新版本原创 2023-11-10 12:10:31 · 1273 阅读 · 1 评论 -
原型链污染攻击
在 JavaScript 中,每个对象都有一个 __proto__ 属性,它指向该对象的原型对象。原型对象是一个普通的 JavaScript 对象,它包含了一些属性和方法,可以被该对象所继承。当我们访问一个对象的属性或方法时,如果该对象本身没有这个属性或方法,JavaScript 引擎会沿着该对象的原型链向上查找,直到找到该属性或方法或者到达原型链的顶端为止。而 prototype 是函数对象特有的属性,它指向该函数的原型对象。原型污染是指攻击者通过修改目标对象的原型对象从而影响到该对象及其所有实例的行为原创 2023-11-09 17:54:45 · 2139 阅读 · 8 评论 -
Javascript知识点详解:对象的继承、原型对象、原型链
对象的继承是 JavaScript 中一个重要的概念,它通过原型链来实现。在 JavaScript 中,每个对象都有一个原型对象,而这个原型对象又有自己的原型,形成了一个原型链。当我们访问一个对象的属性或方法时,如果在当前对象中找不到,JavaScript 就会沿着原型链向上查找,直到找到为止。原型对象是一个普通的对象,它包含可以被其他对象共享的属性和方法。当我们创建一个新对象时,这个对象会自动继承其原型对象上的属性和方法。原创 2023-11-08 18:53:05 · 1639 阅读 · 0 评论 -
Javascript知识点详解:对象、New命令、Object对象的相关方法
JavaScript 中的对象是一种复合值:它是属性的无序集合,其中每个属性都包含一个键和一个值。JavaScript 中的对象可以通过多种方式创建,比如使用对象字面量、构造函数、Object.create() 等。在 JavaScript 中,我们可以使用关键字 `new` 来创建一个对象实例,这通常与构造函数一起使用。当使用 `new` 关键字调用构造函数时,会创建一个新的对象实例,并且构造函数中的 `this` 关键字会指向这个新创建的对象。原创 2023-11-08 18:16:04 · 1861 阅读 · 1 评论 -
Javascript知识点详解:this关键字的指向问题
在JavaScript中,指向问题通常指的是关于this关键字的使用。this关键字指向当前执行代码的上下文对象。在全局作用域中,this指向全局对象(通常是window对象)。在函数中,this的值取决于函数的调用方式:如果函数作为对象的方法被调用,this指向该对象。如果函数作为普通函数被调用,this指向全局对象(在严格模式下为undefined)。如果函数作为构造函数被调用,this指向新创建的对象。如果使用call、apply或bind方法显式地改变this的指向。原创 2023-11-06 18:08:31 · 2959 阅读 · 6 评论 -
Javascript知识点详解:正则表达式
正则表达式(regular expression)是一种表达文本模式(即字符串结构)的方法,有点像字符串的模板,常常用来按照“给定模式”匹配文本。比如,正则表达式给出一个 Email 地址的模式,然后用它来确定一个字符串是否为 Email 地址。JavaScript 的正则表达式体系是参照 Perl 5 建立的。新建正则表达式有两种方法。第一种:使用字面量,以斜杠表示开始和结束。另一种是使用RegExp构造函数。上面两种写法是等价的,都新建了一个内容为xyz的正则表达式对象。原创 2023-11-05 21:26:51 · 2544 阅读 · 1 评论 -
Javascript知识点详解:数组、Array 对象
avaScript数组是一种特殊的对象,用于存储多个值。它可以包含不同类型的数据,如字符串、数字、布尔值、对象和其他数组。JavaScript数组是有序的,可以通过索引访问和修改数组中的元素。在JavaScript中,可以使用Array对象来创建和操作数组。Array对象提供了许多方法来操作数组,如添加、删除、修改和搜索数组中的元素。以下是一些常用的Array方法:avaScript数组可以包含不同类型的数据,如字符串、数字、布尔值、对象和其他数组。数组的元素可以通过索引来访问和修改。原创 2023-11-05 17:49:15 · 1224 阅读 · 1 评论 -
探究JavaScript:Array方法、原型链继承和JSON
型链继承指的是通过在原型链上查找属性和方法,实现对象之间的继承关系。JavaScript中所有的对象都拥有一个原型对象,而原型对象又拥有自己的原型对象,由此构成了原型链。利用原型链的特性,我们可以很方便地实现对象之间的继承关系,使得代码更加简洁高效。其次,Array方法是JavaScript提供的一些对数组进行操作的函数。这些方法包括排序、过滤、遍历等,能够让我们更加方便地操作数组。使用这些方法不仅可以提高代码的可读性和可维护性,还可以大大减少编写代码的时间和空间复杂度原创 2023-06-08 17:35:28 · 895 阅读 · 10 评论 -
从Referer到XMLHttpRequest:探究Web安全中的重要知识点
Referrer指的是HTTP请求头中的一个字段,用于记录用户在访问当前网页之前所在的页面的URL地址。通俗的说,就是记录用户的来源页面,可以为网站优化分析用户流量,了解用户来源,进而改进网站内容和推广策略。一般情况下,referrer字段会被浏览器自动发送给服务器端,但也有些用户会在浏览器中禁用这个功能,因此在使用referrer时需要注意这个问题。XML(可扩展标记语言)是一种标记语言,用于定义文档的结构。与HTML类似,XML也使用尖括号来标识标签,但与HTML不同的是,XML的标记是自定义的原创 2023-06-07 17:24:46 · 2048 阅读 · 12 评论 -
JavaScript-内置对象
也就是说,从 0(包括 0)往上,但是不包括 1(排除 1),然后您可以缩放到所需的范围。var arr = ['安徽队', '大面积科技', '我去看do', '网段,去咯,1', '按时发你的几万', '请客吗窝气']就是指JS语言自带的一些对象,这些对象供开发者使用,并且提供了一些最基本的而非必要的功能(属性和方法)(3)unshift结束后,返回的是新数组的长度。replace(被替换的字符,替换为的字符)(1)push是可以在数组末尾追加新的元素。(3)push结束后,返回的是新数组的长度。...原创 2022-08-12 00:03:37 · 199 阅读 · 4 评论 -
JavaScript-作用域、预解析、对象
1)预解析js引擎会吧js里面的var、function 提升到当前作用域的最前面;(函数作用域):在函数内部起作用的、这个代码只在函数内部起效果和作用;构造函数就是把对象里面相同的代码和方式抽象出来封装到函数里面去。(4)返回这个新对象(所以构造函数里面不需要return)(3)执行构造函数里面的代码,给这个新对象添加属性和方法。1、概念:代码名字(变量)在某个范围内起作用和效果。(1)new构造函数可以在内存中创建一个空的对象。相关属性和方法的集合,例如:字符串、数组、数值。new 构造函数名();..原创 2022-08-08 12:00:00 · 767 阅读 · 0 评论 -
JavaScript-数组、函数
当我们不确定有多少个参数传递的时候,可以用arguments来获取,在JavaScript中,arguments实际上它是当前函数的一个内置对象,所有函数都内置了一个arguments对象,arguments对象中存储了传递的所有实参。function函数名(形参1,形参2){//实参个数多于形参,会取到形参个数。//2.按照索引的方式进行存储的。不同变量里面存的是值,函数表达式里边存的是函数。1.5统计数组长度(元素的个数)length。索引(下标)用来访问数组元素的序号(...原创 2022-07-31 14:13:12 · 261 阅读 · 2 评论 -
JavaScript-三大结构
varscore=prompt('请输入第'+i+'个学生的成绩');console.log('第'+i+'个学生的成绩为'+score);case'苹果'console.log('这是苹果');case'香蕉'console.log('这是香蕉');case'橘子'console.log('这是橘子');case'西瓜'console.log('这是西瓜');case'桃子'console.log('这是桃子');......原创 2022-07-27 14:28:19 · 239 阅读 · 0 评论 -
JavaScript-基础知识
浏览器本身并不会执行js代码,而是通过内置ja引擎(解释器)来执行js代码,js引擎执行代码时逐行解释每一句源码(转换为机器语言),然后由机器去执行,所以js语言归于脚本语言,会逐行解释执行。是js中的一个关键字,用来声明变量(variable变量),使用该关键字声明变量后,计算机会自动分配内存。由数字、变量、运算符等以求得数值的有意义排列方法所得的组合(由数字、运算符、变量等组成的式子)varage=prompt('我是prompt我是字符串类型的')alert('您的年龄是'+age);........原创 2022-07-26 22:31:12 · 362 阅读 · 2 评论