Web安全基础知识 1

发布时间:2024-01-31 12:00

Web安全基础知识 (一)

1. Web请求流程概览

Web安全基础知识 1_第1张图片

2. Web中间件

中间件 (Middleware) 是一种连接软件组件和应用的计算机软件,它包括一切服务,一边运行在一台或多台机器上的软件通过网络进行交互,该技术所提供的互操作性推动了一致分布式体系架构的演进,该架构通常用于支持简化那些复杂的分布式程序,它包括Web服务器、事物监控器和消息队列软件。中间件是基础软件的一大类,属于可复用软件的范畴,顾名思义,中间件处于操作系统软件和用户的应用软件的中间。

Web中间件上运行着由Web脚本语言编写的系统。
Web安全基础知识 1_第2张图片

3. Web编程语言

Web编程语言,根据解释执行的位置可以分为前端语言和后端语言。Web前段语言是指在浏览器上解释执行的Web编程语言,包括HTML和JavaScript等。Web后端语言是指在Web服务器上解释执行的Web编程语言,包括JSP、PHP、ASP、ASP.Net等。
Web安全基础知识 1_第3张图片

3.1. PHP简介

PHP是“PHP Hypertext Preprocessor”的缩写,它是一门用来使得服务器产生动态输出的语言,输出的结果根据每次浏览器请求页面响应的结果而不同。通常,PHP文件的扩展名为.php。当Web服务器在请求的文件中遇到这个扩展名时,他将自动地将该文件传递给PHP处理器。当然,Web服务器是可以惊醒高配置的,一些Web开发者选择把文件强制命名为.htm或者.html,但还交给PHP处理器进行解析,通常这样做的目的是为了隐藏开发者正在使用PHP语言这一事实。

为了触发PHP命令,需要一个新的标记,这个标记由 ?> 组成,前者开始一段PHP代码,代码内容放置在两个标记中间,最后由后者结束标记,整个PHP代码结束。这个标记的使用方法很灵活,一些开发者把标记的开始部分放在文档的开始点,在整个文档结束处放置结束标记,直接由PHP命令输出HTML结果;但是,还有一些人只是在需要动态叫本事将最少的PHP片段放入标记之间,剩下的文档保留在标准的HTML中。

3.2. JavaScript简介

JavaScript是完全在网页浏览器上运行的客户端脚本,它的用途是为了实现以脚本的方式来访问HTML文档中的所有元素。换句话说,JavaScript提供了一种和用户动态交互的途径,结合CSS,JavaScript能够改变眼前动态网页的样式,而不是让服务器返回一个新的页面。要把JavaScript代码放在以结尾的HTML标记之间才能调用它;除了在HTML文档中直接编写JavaScript代码之外,还可以包含自己网站或因特网上的任何JavaScript代码文件,其语法为:

或从因特网上获取文件:

4. MySQL数据库的特点

MySQL是一个可以通过强大和快速的类英语命令管理数据并支持大型数据库的开源数据库管理系统,它采用标准的SQL数据库语言形式,可以运行在到各系统上并支持多种语言。一个MySQL数据库包含一个或多个表,每个表又包含多条记录(行),在这些行中有多种包括数据本身的属性(列)。

5. 常见的数据库和编程语言组合

Web安全基础知识 1_第4张图片

6. B/S机制和C/S机制介绍

B/S结构(Browser/Server)即浏览器和服务器结构,他是随着因特网技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面时通过www浏览器来实现的,极少部分是无逻辑在前端(浏览器)实现,但是主要食物逻辑在服务端实现,形成所谓的三层结构。

C/S结构(Client/Server)中,服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或SQL Server。客户端需要用户安装专门的客户端软件。

7. HTTP介绍

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于万维网服务器传输文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据的,它属于应用层的面向对象协议,适用于分布式超媒体信息系统。HTTP于1990年被踢出,经过几年的发展和使用得到不断的完善和扩展。B/S架构的系统使用协议为HTTP协议,浏览器作为HTTP客户端通过URL向HTTP服务器即Web服务器发送所有请求;Web服务器根据接收到的请求,向客户端发送响应消息。HTTP常用的端口号包括80、8080、3128、8081、9080等。
Web安全基础知识 1_第5张图片
HTTP具备简单快捷、灵活、无连接、无状态等特点,并支持B/S和C/S模式。其中,HTTP的无状态特点是指,与FTP或者telnet不同,HTTP协议无法记忆客户端的当前状态,这种特性被称为HTTP的无状态性,因此,状态的记忆需要凭借响应(HTML)中的hidden参数。

URL全称Uniform Resource Location,即统一资源定位符,是互联网上用来表示某一处资源的地址,其基本结构格式如下所示:
Web安全基础知识 1_第6张图片
[注]
需要区分URL和URI。
URL中描述了协议,该URL用于检索资源和资源名称。如果资源是Web类型资源,则URL在开头包含http / https。同样,如果资源是文件,则以ftp开头,如果资源是电子邮件地址,则以mailto开头。
URI(统一资源标识符)是标识逻辑或物理资源的字符序列,与URL类似,也是一串字符。通过使用位置,名称或两者来标识Internet上的资源;它允许统一识别资源。

Web安全基础知识 1_第7张图片
URL主要用于链接网页,网页组件或网页上的程序,借助访问方法(http,ftp,mailto等协议)来检索位置资源;URI用于定义项目的标识,此处单词标识符表示无论使用的方法是什么(URL或URN),都要将一个资源与其他资源区分开来。另外,URL指定要使用的协议类型,而URI不涉及协议规范。

8. HTTP请求

用户和Web服务器之间的基本通信会话通过用户浏览器发送HTTP和接收HTTP响应实现的,下图反映了完整的HTTP请求过程
Web安全基础知识 1_第8张图片

8.1. HTTP请求消息

在浏览器发送给Web服务器的请求消息中,请求消息的第一行(示例如下所示)被称作请求行,相当于浏览器下打给服务器的指令。请求行由请求方法 (GET)、URL (/31/31-001.PHP)和版本协议 (HTTP/1.1)组成,他们之间以空格相隔:
GET /31/31-001.PHP HTTP/1.1
请求方法除了GET(获取)以外,还有POST和HEAD等。GET和POST于HTML中form元素的method属性指定的值相同。
HTTP请求的第二行及以后的内容被称作请求头信息(Header),其格式为名称与值以冒号相隔。请求头信息,但其中只有HOST是必须的。HOST是表示接受信息的主机名(FQDN)和端口号(80时可以省略)。请求头部之后是请求数据,二者通过一个空行隔开。

8.2. HTTP请求方法

Web安全基础知识 1_第9张图片
GET方法使用的是URL后紧跟查询字符串的形式来传递参数的,但由于浏览器和服务器能够处理的URL长度有限,所以当传递的信息量很大时,使用POST方法哼安全;另外,敏感信息应该使用POST发送,这是因为POST有下列风险:

  • URL中指定的参数经由Refer泄露;
  • URL中指定的参数残留在访问日志中。

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号