XSS-labs和JS基础语法
一、JS基础语法
我通过XSS进行攻击,我们要对于JS语法有一个初步的了解。
首先,JS的用法是通过<script>
和</script>
来分割html和js语句,
之后,我们将JS语法输入之后即可运行。通常情况下我们加入该标签不止可以在<body>
中,还可以在<head>
和外部带有.js后缀的文件中,我们可以从外部文件调用来实现。
以下是一些的基础语法:
document.write() 方法将内容写到 HTML 文档中
使用 innerHTML 写入到 HTML 元素。
使用 console.log() 写入到浏览器的控制台。
二、XSS-labs 1-4题
1、第一题
进入界面,我们看到:
在上方的输入框中,找到了输入取:
通过修改name中输入的内容实现XSS攻击:
随后进入下一题
2、
到了下一题中,我们见到输入框,我们通过输入框进行XSS的语句输入,进行常规的语句输入之后,我们看到并没有什么显示:
查看源码我们发现是input没有闭合,即输入的语句并没有在input中起到有效作用,进入了value中不会运行,此时我们就需要让value失效,并且把我们的代码运行起来,将input语句闭合之后,即可:
未闭合:
闭合后:
3、
我们首先进行常规输入,我们看到:
没有效果,闭合一下试试:
查看源码,我们发现字符被实体化了
所以使用这种方式不行,所以我们将执行语句通过注入到input中让输入时在执行以(就是用onfocus事件绕过)避免:
随后我们点击输入框以出发事件:
4、
同理,我们先尝试常规输入:
发现依旧被实体化
我们看到此时的value用的是双引号,所以我们依旧采用刚刚的方法:
题目通过。