【笔记】网易微专业-Web安全工程师-01.WEB基础知识
课程概述:
本课是基础中的基础,通俗易懂的讲解了Web的本质和Web开发的基础知识。对于Web小白,建议从头开始抓紧学习;对于已经有一定Web基础知识的同学,建议快速的过一遍,夯实基础。
课程大纲:
第一章 Web简介
第一节.Web介绍
第二节.Web通信
第二章 Web开发基础知识
第一节.前端开发基础——HTML
第二节.前端开发基础——JavaScript
第三节.Web服务端环境
第四节.后端开发基础——SQL
第五节.后端开发基础——PHP
笔记心得:
1.1.1 www是什么?
www是环球信息网(world wide web)的缩写,中文称为万维网,著名的w3cschool中的w3c即表示“万维网联盟”。www的作用是让web客户端(浏览器)访问web服务器上的内容。在万维网系统中,每个有用的事物,称为“资源(Resource)”,并且由一个“全局统一资源标识符(URI:Uniform Resource Identifier)”标识,用户通过点击链接来定位和获得资源,这称为“URL协议(Uniform Resource Locator)”,而这些资源通过“超文本传输协议(HyperText Transfer Protocol)”传输给用户。
1.1.2 web1.0和web2.0是什么?
web1.0:以内容为中心,网站提供内容信息,用户进行访问阅读,信息单向传输,典型的有门户网站和个人网站;
web2.0:以人为中心,用户可添加内容,彼此沟通互动,典型的有微博和博客;
web3.0:目前很火的概念,但未能有统一的明确定义。常见的概念指网站反过来成为用户的需求理解者和提供者,以“语义网”为例:通过给万维网上的文档 (HTML/XML等)添加能够被计算机所理解的语义“元数据”(Meta data),从而使整个互联网成为一个通用的信息交换媒介。
而随着web从1.0到2.0演进,常见的web攻击方式也从SQL注入,上传漏洞等服务端手段拓展到XSS,CSRF等客户端手段。
客户端/前端:钓鱼、暗链、XSS、CSRF、点击劫持、URL跳转等;
服务端/后端:SQL注入、命令注入、文件上传、文件包含、暴力破解等。
1.2.1 当我们通过浏览器访问网址时发生了什么?
a. DNS服务器将域名解析为ip地址;
b. 浏览器向web服务器发送一个HTTP请求;
c. 服务器收到请求并进行处理;
d. web服务器向浏览器返回一个HTTP响应;
e. 浏览器对收到的响应和内容进行解码渲染;
1.2.2 URL协议
Uniform Resource Locator,定位服务器的资源
schema://host[:port#]/path/.../[?query-string][#anchor]
schema:底层协议,常见的有http/https/ftp等;host:域名或者ip;port:http默认是80;query-string:发送给服务器的数据;anchor:锚点;
1.2.3 HTTP协议
HyperText Transfer Protocol,传输服务器的资源
HTTP请求:请求行、消息报头(空行)、请求数据;
HTTP响应:状态行、消息报头(空行)、响应数据;
HTTP请求方法:GET,POST,HEAD + OPTIONS,PUT,DELETE,TRACE,CONNECT。
HTTP状态码:了解常见状态码,200 OK,302 Found,403 Forbidden,404 Not Found,500 Internal Server Error,503 Server Unavailable。
2.1 HTML/JS/SQL/PHP
在线学习:w3school
练习工具:phpstudy
web安全相关要点:
HTML:元素(注释/图片/链接/表单/内联框架iframe),标签,属性(标签name/id等;事件onload/onerror/onclick等),DOM(Document Object Model);
JS:HTML DOM(获取元素,定位内容,进行修改),BOM/Browser Object Mode(alert/confirm/prompt;document.cookie等);
SQL:学习基本语句,以及了解常见内置函数;
PHP:$_REQUEST,$_FILES,$_SERVER等;
2.2 目前流行架构
OS | WEB服务 | 解释执行环境 | 数据库服务 | |
.NET | Windows Server | IIS | ASP(.NET) | SQL Server |
LAMP | Linux | Apache | PHP | MySQL |
J2EE | UNIX/Windows | Tomcat/Weblogic | JSP | Oracle |