渗透测试 网站安全基础点web讲解(第一点)

本文涉及的产品
数据传输服务 DTS,数据同步 small 3个月
推荐场景:
数据库上云
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
数据传输服务 DTS,数据同步 1个月
简介: 随着网络的发达,越来越多的网站已悄悄崛起,在这里我们Sine安全给大家准备讲解下渗透测试服务中的基础点讲解内容,让大家更好的了解这个安全渗透测试的具体知识点和详情过程。主要目的就是为了在网站或app上线前进行全面的渗透测试检测模拟黑客的手法对网站进行全面的漏洞检测,并找出漏洞进行修复,防止上线后被黑客所利用导致带来更大的损失,只有这样才能让网站安全稳定的运行,所谓知己知彼 百战不殆。

随着网络的发达,越来越多的网站已悄悄崛起,在这里我们Sine安全给大家准备讲解下渗透测试服务中的基础点讲解内容,让大家更好的了解这个安全渗透测试的具体知识点和详情过程。主要目的就是为了在网站或app上线前进行全面的渗透测试检测模拟黑客的手法对网站进行全面的漏洞检测,并找出漏洞进行修复,防止上线后被黑客所利用导致带来更大的损失,只有这样才能让网站安全稳定的运行,所谓知己知彼 百战不殆。
520
今天所讲的是基础点知识(第一点开始)

1.1. Web技术演化

1.1.1. 静态页面

在互联网最初开始的时候,Web网站的主要内容是静态的,由文字和图片组成,制作和表现形式也是以表格为主。当时的用户行为也非常简单,仅仅是浏览网页。

1.1.2. 多媒体阶段

随着技术的不断发展,音频、视频、Flash等多媒体技术诞生了。多媒体的加入使得网页变得更加生动形象,网页上的交互也给用户带来了更好的体验。

1.1.3. CGI阶段

渐渐的,多媒体已经不能满足人们的请求,于是CGI(Common Gateway Interface)应运而生。CGI定义了Web服务器与外部应用程序之间的通信接口标准,因此Web服务器可以通过CGI执行外部程序,让外部程序根据Web请求内容生成动态的内容。

在这个时候,各种编程语言如PHP/ASP/JSP也逐渐加入市场,基于这些语言可以实现更加模块化的、功能更强大的应用程序。

1.1.4. Ajax

在开始的时候,用户提交整个表单后才能获取结果,用户体验极差。于是Ajax(Asynchronous Java And XML)技术逐渐流行起来,它使得应用在不更新整个页面的前提下也可以获得或更新数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变的信息。

1.1.5. MVC

随着Web应用开发越来越标准化,出现了MVC等思想。MVC是Model/View/Control的缩写,Model用于封装数据和数据处理方法,视图View是数据的HTML展现,控制器Controller负责响应请求,协调Model和View。

Model,View和Controller的分开,是一种典型的关注点分离的思想,使得代码复用性和组织性更好,Web应用的配置性和灵活性也越来越好。而数据访问也逐渐通过面向对象的方式来替代直接的SQL访问,出现了ORM(Object Relation Mapping)的概念。

除了MVC,类似的设计思想还有MVP,MVVM等。

1.1.6. RESTful

在CGI时期,前后端通常是没有做严格区分的,随着解耦和的需求不断增加,前后端的概念开始变得清晰。前端主要指网站前台部分,运行在PC端、移动端等浏览器上展现给用户浏览的网页,由HTML5、CSS3、Java组成。后端主要指网站的逻辑部分,涉及数据的增删改查等。

此时,REST(Representation State Transformation)逐渐成为一种流行的Web架构风格。

REST鼓励基于URL来组织系统功能,充分利用HTTP本身的语义,而不是仅仅将HTTP作为一种远程数据传输协议。一般RESTful有以下的特征:

域名和主域名分开
api.example.com
example.com/api/
带有版本控制
api.example.com/v1
api.example.com/v2
使用URL定位资源
GET /users 获取所有用户
GET /team/:team/users获取某团队所有用户
POST /users 创建用户
PATCH/PUT /users 修改某个用户数据
DELETE /users 删除某个用户数据
用 HTTP 动词描述操作
GET 获取资源,单个或多个
POST 创建资源
PUT/PATCH 更新资源,客户端提供完整的资源数据 是 DELETE 删除资源
正确使用状态码
使用状态码提高返回数据的可读性
默认使用 JSON 作为数据响应格式
有清晰的文档
点击添加图片描述(最多60个字)

1.1.7. 云服务

随着时间的发展,Web的架构越发复杂,负载均衡、数据库分表、异地容灾、缓存、CDN、消息队列等技术开始应用,增加了Web开发和运维的复杂度。同时云服务开始逐渐发展,部署环境容器化,各个功能拆成微服务或是Serverless的架构。

1.2. 计算机网络

1.2.1. 计算机通信网的组成

计算机网络由通信子网和资源子网组成。

其中通信子网负责数据的无差错和有序传递,其处理功能包括差错控制、流量控制、路由选择、网络互连等。

其中资源子网:是计算机通信的本地系统环境,包括主机、终端和应用程序等, 资源子网的主要功能是用户资源配置、数据的处理和管理、软件和硬件共享以及负载 均衡等。

计算机通信网就是一个由通信子网承载的、传输和共享资源子网的各类信息的系统。

1.2.2. 通信协议

为了完成计算机之间有序的信息交换,提出了通信协议的概念,其定义是相互通信的双方(或多方)对如何进行信息交换所必须遵守的一整套规则。

协议涉及到三个要素,分别为:

语法:语法是用户数据与控制信息的结构与格式,以及数据出现顺序的意义
语义:用于解释比特流的每一部分的意义
时序:事件实现顺序的详细说明
1.2.3. OSI七层模型

1.2.3.1. 简介

OSI(Open System Interconnection)共分为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层七层,其具体的功能如下。

1.2.3.2. 物理层

提供建立、维护和释放物理链路所需的机械、电气功能和规程等特性
通过传输介质进行数据流(比特流)的物理传输、故障监测和物理层管理
从数据链路层接收帧,将比特流转换成底层物理介质上的信号
1.2.3.3. 数据链路层

在物理链路的两端之间传输数据
在网络层实体间提供数据传输功能和控制
提供数据的流量控制
检测和纠正物理链路产生的差错
格式化的消息称为帧
1.2.3.4. 网络层

负责端到端的数据的路由或交换,为透明地传输数据建立连接
寻址并解决与数据在异构网络间传输相关的所有问题
使用上面的传输层和下面的数据链路层的功能
格式化的消息称为分组
1.2.3.5. 传输层

提供无差错的数据传输
接收来自会话层的数据,如果需要,将数据分割成更小的分组,向网络层传送分组并确保分组完整和正确到达它们的目的地
在系统之间提供可靠的透明的数据传输,提供端到端的错误恢复和流量控制
1.2.3.6. 会话层

提供节点之间通信过程的协调
负责执行会话规则(如:连接是否允许半双工或全双工通信)、同步数据流以及当故障发生时重新建立连接
使用上面的表示层和下面的传输层的功能
1.2.3.7. 表示层

提供数据格式、变换和编码转换
涉及正在传输数据的语法和语义
将消息以合适电子传输的格式编码
执行该层的数据压缩和加密
从应用层接收消息,转换格式,并传送到会话层,该层常合并在应用层中
1.2.3.8. 应用层

包括各种协议,它们定义了具体的面向拥护的应用:如电子邮件、文件传输等
点击添加图片描述(最多60个字)
timg_1_
1.2.3.9. 总结

低三层模型属于通信子网,涉及为用户间提供透明连接,操作主要以每条链路( hop-by-hop)为基础,在节点间的各条数据链路上进行通信。由网络层来控制各条链路上的通信,但要依赖于其他节点的协调操作。

高三层属于资源子网,主要涉及保证信息以正确可理解形式传送。

传输层是高三层和低三层之间的接口,它是第一个端到端的层次,保证透明的端到端连接,满足用户的服务质量( QoS)要求,并向高三层提供合适的信息形式。 如果对渗透测试有具体详细的需求可以找专业的网站安全公司来处理解决防患于未然。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
2月前
|
Web App开发 前端开发 JavaScript
探索Python科学计算的边界:利用Selenium进行Web应用性能测试与优化
【10月更文挑战第6天】随着互联网技术的发展,Web应用程序已经成为人们日常生活和工作中不可或缺的一部分。这些应用不仅需要提供丰富的功能,还必须具备良好的性能表现以保证用户体验。性能测试是确保Web应用能够快速响应用户请求并处理大量并发访问的关键步骤之一。本文将探讨如何使用Python结合Selenium来进行Web应用的性能测试,并通过实际代码示例展示如何识别瓶颈及优化应用。
136 5
|
9天前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE:Web自动化测试的利器。作为开源工具,Selenium IDE支持录制与回放用户操作,适用于Chrome、Firefox等多浏览器,简化了测试流程,提升了效率,降低了自动化测试的门槛。它还支持导出多种编程语言的脚本,便于测试集成与复用。
60 19
Selenium IDE:Web自动化测试的得力助手
|
11天前
|
Web App开发 IDE 测试技术
Selenium:强大的 Web 自动化测试工具
Selenium 是一款强大的 Web 自动化测试工具,包括 Selenium IDE、WebDriver 和 Grid 三大组件,支持多种编程语言和跨平台操作。它能有效提高测试效率,解决跨浏览器兼容性问题,进行性能测试和数据驱动测试,尽管存在学习曲线较陡、不稳定等缺点,但其优势明显,是自动化测试领域的首选工具。
89 17
Selenium:强大的 Web 自动化测试工具
|
10天前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE是开源的Web自动化测试工具,适用于Chrome、Firefox等多款浏览器。它提供简单的录制与回放功能,用户可通过录制浏览器操作自动生成测试脚本,支持导出为多种编程语言,便于非专业测试人员快速上手,有效提升测试效率与质量。
77 6
Selenium IDE:Web自动化测试的得力助手
|
28天前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
28 4
|
2月前
|
安全 网络协议 算法
HTTPS网络通信协议揭秘:WEB网站安全的关键技术
HTTPS网络通信协议揭秘:WEB网站安全的关键技术
227 4
HTTPS网络通信协议揭秘:WEB网站安全的关键技术
|
1月前
|
Web App开发 测试技术 数据安全/隐私保护
自动化测试的魔法:使用Python进行Web应用测试
【10月更文挑战第32天】本文将带你走进自动化测试的世界,通过Python和Selenium库的力量,展示如何轻松对Web应用进行自动化测试。我们将一起探索编写简单而强大的测试脚本的秘诀,并理解如何利用这些脚本来确保我们的软件质量。无论你是测试新手还是希望提升自动化测试技能的开发者,这篇文章都将为你打开一扇门,让你看到自动化测试不仅可行,而且充满乐趣。
|
1月前
|
Web App开发 设计模式 JavaScript
自动化测试之美:如何利用Selenium实现Web应用的高效测试
【10月更文挑战第29天】在软件开发的世界中,测试是确保产品质量的关键步骤。本文将带你了解如何使用Selenium这一强大的自动化测试工具,提高Web应用测试的效率和准确性。通过实际案例,我们将探索Selenium的核心功能及其在现代软件开发中的应用,旨在帮助读者掌握自动化测试的精髓,从而提升软件测试工作的整体效能。
44 0
|
2月前
|
安全 Linux Shell
Kali渗透测试:使用Metasploit对Web应用的攻击
Kali渗透测试:使用Metasploit对Web应用的攻击
150 4
|
3月前
|
SQL 安全 数据库
Python Web开发者必看!SQL注入、XSS、CSRF全面解析,守护你的网站安全!
在Python Web开发中,构建安全应用至关重要。本文通过问答形式,详细解析了三种常见Web安全威胁——SQL注入、XSS和CSRF,并提供了实用的防御策略及示例代码。针对SQL注入,建议使用参数化查询;对于XSS,需对输出进行HTML编码;而防范CSRF,则应利用CSRF令牌。通过这些措施,帮助开发者有效提升应用安全性,确保网站稳定运行。
56 1
下一篇
DataWorks