病毒攻击与防治实验报告.docx
- 文档编号:9799545
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:14
- 大小:663.82KB
病毒攻击与防治实验报告.docx
《病毒攻击与防治实验报告.docx》由会员分享,可在线阅读,更多相关《病毒攻击与防治实验报告.docx(14页珍藏版)》请在冰点文库上搜索。
病毒攻击与防治实验报告
中南大学
《病毒攻击与防治》
实验报告
题目网络浏览器访问控制实验
姓名学号
指导教师
学院
专业班级
完成时间
一,实验简介
现在的web浏览器的安全模型是基于同源策略,并提供一些基于Web应用程序的保护功能;这个实验的目的是帮助大家对同源策略有一个很好的理解,这将对我们学习跨站脚步攻击和跨站请求伪造有很大帮助。
二,实验背景
Web浏览器本质上是与sites/webapplications1代表其用户进行交互的用户代理。
通常,用户访问一个网站使用Web浏览器-Web浏览器将HTTP请求转发到网站上代表其用户,并反过来显示由该网站的响应返回的网页。
Web浏览器使用的安全模型被称为同源策略(SOP)用于执行对Web应用程序的一些访问限制。
SOP的标识每个网站使用它的起源,这是hprotocol,域PORTI的一个独特的组合,并创建一个上下文为每个原点。
对于每个源,所述web浏览器生成的上下文,并将该web应用程序的资源,从上下文中的原点。
从一个出身JavaScript程序不得从其他产地访问资源。
cookie和文档对象模型(DOM)对象是为哪SOP施加的web应用资源的例子。
此外,JavaScript程序可以使用XMLHttpRequestAPIHTTP请求发送到Web应用程序。
SOP的也扩展到使用的XMLHttpRequestAPI。
首先,我们将提供cookie,DOM对象和XMLHttpRequestAPI一些背景。
然后,我们描述了实验室的任务,这将导致学生调查SOP以及它如何影响使用cookies,DOM对象和XMLHttpRequestAPI
三,预备知识
1、什么是同源策略
同源:
如果两个页面使用相同的协议(protocol),端口和主机(域名),那么这两个页面就属于同一个源。
同源策略:
限制了一个源(origin)中加载文本或脚本与来自其他源中资源的交互方式;是客户端脚本(尤其是Javascript)的重要的安全度量标准。
重点:
同源策略认为来自任何站点装载的信赖内容是不安全的。
当被浏览器半信半疑的脚本运行在沙箱时,它们应该只被允许访问来自同一站点的资源,而不是那些来自其它站点可能怀有恶意的资源;
拓展:
单源策略(SingleOriginPolicy),它是一种用于Web浏览器编程语言(如JavaScript和Ajax)的安全措施,以保护信息的保密性和完整性。
同源策略能阻止网站脚本访问其他站点使用的脚本,同时也阻止它与其他站点脚本交互。
2、什么是DOM&Cookie?
DOM:
文档对象模型(DocumentObjectModule),是处理可扩展标志语言的标准编程接口。
Cookie:
为了辨别用户身份,进行session跟踪而存储在用户本地终端上的数据(通常经常加密)。
3、什么是XMLHttpRequest
XmlHttpRequest,中文可以解释为可扩展超文本传输请求。
Xml可扩展标记语言,Http超文本传输协议,Request请求。
XMLHttpRequest对象可以在不向服务器提交整个页面的情况下,实现局部更新网页。
当页面全部加载完毕后,客户端通过该对象向服务器请求数据,服务器端接受数据并处理后,向客户端反馈数据。
XMLHttpRequest对象提供了对HTTP协议的完全的访问,包括做出POST和HEAD请求以及普通的GET请求的能力。
XMLHttpRequest可以同步或异步返回Web服务器的响应,并且能以文本或者一个DOM文档形式返回内容。
尽管名为XMLHttpRequest,它并不限于和XML文档一起使用:
它可以接收任何形式的文本文档。
XMLHttpRequest对象是名为AJAX的Web应用程序架构的一项关键功能。
应用对象:
后台与服务器交换数据;
作用:
在不重新加载页面的情况下更新网页
在页面已加载后从服务器请求数据
在页面已加载后从服务器接收数据
在后台向服务器发送数据
四,实验步骤及其意义
1,理解DOM和Cookies
1.1使用DOMAPI来显示html的子节点h1的内容
源码:
sudovim/var/www/SOP/first.html
functionappendp()//添加h1内容
{
varh1_node=document.createElement("h1");
h1_node.innerHTML="Self-modifyingHTMLDocument";
document.childNodes[0].childNodes[2].appendChild(h1_node);
varp_node=document.createElement("p");
p_node.innerHTML="ThiswebpageillustrateshowDOMAPIcanbeusedtomodifyawebpage";
document.childNodes[0].childNodes[2].appendChild(p_node);
}
functiongethtmlchildren()//获取节点
{
varentiredoc=document.childNodes[0];
vardocnodes=entiredoc.childNodes;
for(i=0;i alert(docnodes[i].nodeName); } onclick=gethtmlchildren()>