最近有很多网友在了解web安全方面的知识,但是因为没有好的老师带,针对这个情况小猿圈web安全每天会分享一个web安全的知识点,今天分享的是Web安全学习笔记,希望对你学习web安全有所帮助。

一、 Web安全时代
1.0时代:针对服务器进行攻击,主要包括SQL注入,上传漏洞,命令链接等攻击方式
2.0时代:针对服务器以及用户,新增XSS、CSRF等攻击方式
二、 Web工作流程
Web工作方式类似餐厅点餐,点餐-上菜。这是用户能看到的部分。而服务员接到点餐后,会把菜单拿给厨师,然后厨师做好菜后会给服务员说,然后服务员就拿到做好的菜品就上菜给客人。
而Web工作流程与上面相似,用户通过浏览器输入网址,比如baidu.com,浏览器会通过DNS服务器找到baidu.com对应的服务器IP地址,服务器接到请求后与数据库交互,然后得到结果,并返回给用户。
浏览器并不能直接通过我们输入的网址直接与服务器通讯。当我们输入需要访问的网址后,浏览器会把我们的网址通过DNS服务器查询,得到服务器的IP地址,然后服务器直接与这个IP地址进行通讯的。
三、 URL协议
浏览器与服务器通讯也需要一种方法,这个方法就是URL协议,它的中文翻译是“统一资源定位符”,它的作用是以简洁的方式从互
联网上得到资源,并且让每个文件都有一个唯一的URL地址。
URL格式大致为:
协议://用户名:密码@域名:端口号/目录/文件名.文件后缀?参数=值#锚点
协议:URL支持许多协议,我们常见的协议有HTTP、FTP、MAILTO、HTTPS协议,而协议的作用就是告诉浏览器将如何处理要打开的文件。
用户名和密码:如果服务器需要授权才能访问就在这里输入
域名:这里填写你需要访问的网站域名,比如www.baidu.com或者image.baidu.com
端口号:如果是http协议,默认的80端口是不需要填写的,其他的协议根据相应的协议端口进行填写
目录以及文件名、后缀:这里是访问服务器中的文件路径。
参数:这里是需要传递给服务器的一些值,服务器会根据这些传递的值作出响应。
锚点:锚点的作用是定位当前文件中的哪一个位置。
四、 HTTP协议
HTTP协议就是web中最重要的协议,也是使用应用最广泛的协议,每次我们我们访问网页都进行了http请求。
4.1.1. 一个完整的http请求包含三部分:
请求行
包含请求的方法以及URL、协议版本,比如:GET /test/xx.php?id=123444 HTTP/1.1
请求头
常见内容包含:
HOST:主机地址(域名)比如:www.xsscript.com。
User-Agent:让服务器能够识别用户的包含操作系统及版本、CPU、浏览器、语言等信息。
Cookie:代表用户凭证,服务器可以根据这个用户凭证来识别你是谁。
Referer:服务器可以通过Referer来判断用户的来源,也就是你从什么地方过来的。
请求正文
GET请求没有请求正文,所有的参数均含在请求行和头中,POST有请求正文
4.1.2. 一个完整的http响应包含三部分:
状态行包含协议和版本、以及服务器状态的响应编码。比如HTTP/1.1 200 OK表示服务器响应成功响应头
常见内容包含:
Server:HTTP服务器的版本
Content-Type:响应正文类型,让浏览器根据类型进行处理然后显示给用户
Set-Cookie:如果用户没有Cookie或者Cookie需要更新,服务器会在响应包中含此内容,提示浏览器设置或更新Cookie。
Content-Language:响应正文的语言
Content-Length:响应正文的长度。
Location:当用户访问www.baidu.com然后响应包中包含了此内容的时候,会跳转到相应的网址。
响应正文
发送给用户浏览器处理的正文内容。
以上就是小猿圈web安全讲师分享Web安全学习笔记,小猿圈web安全讲师认为学习就是不断坚持,不断进步的过程,只有不断地学习才能赶上时代的脚步,这样才不会脱轨,如果你学习遇到问题可以到小猿圈找答案,里面有更全面的知识,你能在里面找到从基础到实战所需要的所有内容。如果感觉本篇文章你对你有帮助,记得评论,转发,收藏呦。
网友评论