WEB前端安全-XSS与CSRF小结--沙窝里的王

前端的核心技术

HTML:

超文本标记语言 (Hyper Text Markup Language),用来显示文字、图片等内容。

CSS:

层叠样式表 (Cascading Style Sheet),可以使人更能有效地控制网页外观

JavaScript:

面向对象的动态类型的客户端脚本语言,用来给HTML网页增加动态功能。

HTML基本语法

HTML是一种标记语言,HTML 标记标签通常被称为 HTML 标签
HTML 标签是由尖括号包围的关键词,比如
HTML 标签通常是成对出现的,比如
标签对中的第一个标签是开始标签,第二个标签是结束标签
开始和结束标签也被称为开放标签和闭合标签

我是文章标题

我是2号标题

## CSS基本语法 CSS可以嵌套在HTML中,也可移出 HTML 文档,移入一个独立的样式表。CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明。 我是文章标题

我是2号标题

JavaScript基本语法:

在 HTML 中,JavaScript 代码必须位于 标签之间。

我是文章标题
</head>
<body>
	<h2>我是2号标题</h2>
	<input type='text' name='input' placeholder="我是文本输入框">
	<input type='submit' value='我是确定按钮'>
</body>

XSS

XSS,Cross Site Script,即跨站脚本攻击,本来缩写是CSS,但是为了和层叠样式表(Cascading Style Sheet ,CSS)有所区别,所以在安全领域叫做“XSS”

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

XSS长期以来被列为客户端Web安全中的头号大敌。因为XSS破坏力强大,且产生的场景复杂;针对各种不同场景产生的XSS,需要区分情景对待

XSS根据效果的不同可以分为以下三类:

反射型XSS,也叫做“非持久型XSS”,只是简单的把用户输入的数据“反射”给浏览器;

存储型XSS,也叫做“持久型XSS”,会把用户输入的数据“存储在”服务器端。常见的场景是,黑客写下一篇含有恶意JavaScript代码的博客文章,文章发表后,所有访问该博客文章的用户,都会在他们的浏览器中执行这段恶意的JavaScript代码;

DOM Based XSS,从效果来说也是反射型XSS,单独划分出了是因为DOM Based XSS的形成原因比较特殊,通过修改页面的DOM节点形成的XSS

DOM

在这里插入图片描述在这里插入图片描述

XSS

常见危害:
劫持用户会话
盗取cookie
钓鱼欺骗
强制弹出广告
提升用户权限
传播跨站脚本蠕虫
……
XSS测试平台:http://www.l31.cc/index.php

CSRF

CSRF,Cross Site Request Forgery,即跨站点请求伪造

它是一种常见的Web攻击,也是Web安全中最容易被忽略的一种攻击方式
它与XSS非常不同,XSS利用站点内的信任用户,而CSRF则通过伪装成受信任用户的请求来利用受信任的网站。

一般攻击方式为攻击者诱使用户访问了一个页面,就以该用户身份在第三方站点里执行了一次操作

CSRF攻击的两个重点

CSRF的攻击建立在浏览器与Web服务器的会话中
欺骗用户访问URL

CSRF防御机制

二次确认:删除用户、转账、更改密码时,要求用户输入二次密码;

Referer:在接收请求的服务端判断请求的Referer头是否为正常的发送请求的页面,如果不是,则进行拦截;

Token认证:Token类似于“验证码”,但是这种验证码不需要输入。当用户登录登录后,服务器端会随机产生一段字符串分配给用户,并存储在Session中,当用户进入某些页面时,直接传递在用户界面或者Cookie中

实战

xss:

脚本:<?php

$input = $_GET[‘param’];
echo $input;
?>
将以上代码编辑为后缀名为php的文件,假设文件名为1.php。然后到放置到PhpStudy文件夹中的www文件夹目录下
打开phpstudy.exe程序,启动运行,在浏览器输入网址127.0.0.1进入,在点击下方的1.php,进入后再在上方目标栏里改为
在这里插入图片描述,点击旁边的更新键,就会发现跳转界面,内容为1。

但是如果提交如下一段JavaScript代码:

	<script>alert(1)</script>

可以发现,这段代码在当前页面执行了;如果用户的输入提交后触发了弹窗,那么就说明存在XSS

在这里插入图片描述2.
在这里插入图片描述直接在地址框注入JavaScript脚本,点击更新出现过关:

在这里插入图片描述
3.接下来试一下木马上传:在自己的DVWA中先把难度调为低

在这里插入图片描述选择“file upload”,就进入了文件上传界面,如下图:

在这里插入图片描述再点击 浏览,进入选择文件弹窗,选择想要上传的木马文件:

在这里插入图片描述
我上传到木马文件是一句话木马,木马名设为 hh,可以看到一行红色小字,表明上传成功且上传路径为…/…/hackable/uploads/hh .复制 hackable/uploads/hh,再将上方标签栏里的红色线圈内的部分更替为hackable/uploads/hh,

在这里插入图片描述 进入页面:页面为空,没有提示错误,说明可以通过此路径运行木马。
在这里插入图片描述
复制整串路径,打开中国菜刀或者蚁剑,我这里打开菜刀,右键选择 添加,将路径复制进去,右边写上密码,下方脚本类型为 php,点击添加:在这里插入图片描述这就链接上了此网页,可以通过菜刀随意控制它了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值