客户端技术

服务器端应用程序要接收用户输入与操作,并向用户返回其结果,它必须提供一个客户端用户界面

1. HTML

HTML是建立Web界面所需的最核心技术;这是一种用于描述浏览器所显示的文档结构的基于标签的语言;

2. CSS(层叠样式表)

在web应用程序中, 用于指定HTML内容在屏幕上的呈现方式;

现代的Web标准力求将文档的内容与其表示形式尽可能地区分开来;

今天,CSS本身正不断成为安全漏洞的来源,并且被攻击者作为传送针对其他类型的漏洞的人侵程序的有效手段;

3. JavaScript

4. 超链接

web应用程序中的超链接通常包含预先设定的请求参数,这些数据项不需由用户输人,而是由服务器将其插人用户单击的超链接
的目标URL中,以这种方式提交。

5. 表单

接收用户输入;

6. 文档对象模型DOM

7. Ajax(Asynchronous JavaScript and XML,异步的 JavaScript 和 XML)

AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下;

最早的Web应用程序基于完整的页面,每个用户操作,如单击链接或提交表单,都会启动窗口级别的导航亊件,导致服务器加载新页面(就像是新打开了一个页面,整个页面都会重新加载);

使用Ajax,一些用户操作将由客户端脚本代码进行处理,并且不需要重新加载整个页面。相反,脚本会“在后台”执行请求,并且通常会收到较小的响应,用于动态更新一部分用户界面。

Ajax使用的核心技术XML Http Request,经过一定程度的标准整合之后,这种技术现在已转化为一个本地JavaScript对象,客户端脚本可以通过该对象提出“后台”请求,而无须窗口级别的导航事件。(虽然许多应用程序确实使用XML对消息数据进行格式化,但越来越多的Ajax倾向于使用其他表示方法来交换数据)

8. JSON(JavaScript Object Notation,JavaScript 对象表示法)

用于存储和交换文本信息,是轻量级的文本数据交换格式;

Ajax应用程序经常使用JSON,以替换最初用于数据传输的XML格式,JSON 比 XML 更小、更快,更易解析;

通常,如果用户执行某个操作,客户端JavaScript将使用XML Http Request将该操作传送到服务器。服务器则返回一个包含JSON格式的数据的轻量级响应。然后,客户端脚本将处理这些数据,并对用户界面进行相应地更新。

9. 同源策略

核心:防止不同来源的内容相互干扰,只允许相同来源的内容进行交互

从一个网站收到的内容可以读取并修改从该站点收到的其他内容,但不得访问从其他站点收到的内容。如果不使用同源策略,那么,当不知情的用户浏览到某个恶意网站时,在该网站上运行的脚本代码将能够访问这名用户同时访问的任何其他网站的数据和功能。


关于同源策略,需要了解的一些主要特点如下:

  • 位于一个域中的页面可以向另一个域提出任意数量的请求(例如,通过提交表单或加载图像), 但该页面本身无法处理上述请求返回的数据。(比如使用qq登录某个网站,会跳转到qq登录界面,但访问的网站不会对qq登录界面提交的表单进行处理)
  • 位于一个域中的页面可以加载来自其他域的脚本并在自己的域中执行这个脚本。这是因为脚本被假定为包含代码,而非数据,因此跨域访问并不会泄露任何敏感信息。
  • 位于一个域中的页面无法读取或修改属于另一个域的cookie或其他DOM数据。

这些特点可能导致各种跨域攻击,如诱使用户执行操作和捕获数据。

 

你可能感兴趣的:(黑客攻防技术宝典web实战,计算机网络)