5.1 web浏览安全

数据参考:CISP官方 

目录

  • Web应用基础
  • 浏览器所面临的安全威胁
  • 养成良好的Web浏览安全意识
  • 如何安全使用浏览器

一、Web应用基础

1、Web应用的基本概念

Web ( World wide Web) 也称为万维网

  • 脱离单机
  • Web应用在互联网上占据了及其重要的地位
  • Web应用的发展:Web1.0-->Web2.0-->Web3.0-->......

 

  • Web 1.0:Web 1.0时代是Web的初期阶段,主要以静态网页为主,用户只能 passively 地浏览和获取信息,无法主动参与内容的创建和修改。

  • Web 2.0:Web 2.0标志着互联网的进一步发展,它强调用户参与和互动。用户可以通过社交媒体、博客、在线论坛等平台创作和分享内容,形成了一个更加开放和协作的网络环境。

  • Web 3.0:Web 3.0是对未来Web发展的一种展望,也被称为“语义Web”。它旨在将互联网上的大量数据整合起来,并利用人工智能和机器学习等技术为用户提供更智能、个性化的服务和体验。Web 3.0的目标是实现更加智能化的互联网,让计算机能够理解和处理更多的信息。

需要注意的是,Web 3.0目前仍处于发展阶段,尚未完全实现。随着科技的不断进步,我们可能会看到更多新的Web应用和技术的出现。

2、Web应用系统的体系架构

广泛使用的是浏览器/服务器架构(B/S)

3、Web应用系统安全的突破点

  • Web安全问题越来越突出
  • 浏览器安全问题却是最常见的安全突破点。

二、浏览器所面临的安全威胁

1、XSS跨站脚本攻击

基本概念

  • 跨站脚本攻击是一种常见的网络安全威胁,它利用了网站在处理用户输入时的漏洞。攻击者可以通过在受影响的网页中插入恶意脚本,然后将这些脚本传递给其他访问该网页的用户。
  • 脚本包括 Javascript、Java、 Vbscript、 Activex、Fash甚至是普通的HTML语句 
  • 跨站脚本攻击的目标是绕过网站的安全机制,将恶意脚本注入到网页中,并在其他用户浏览该网页时执行。恶意脚本可以执行各种操作,如窃取用户的敏感信息、劫持用户会话、修改网页内容等。

攻击原理

  • 反射型:在反射型攻击中,攻击者通过构造一个恶意的URL,将包含恶意脚本的参数发送给目标用户。当用户访问包含恶意代码的URL时,网站会从URL中提取参数并将其插入到响应页面中,恶意脚本随后被执行。这种攻击类型一般需要用户点击一个特定的恶意链接才会触发
  • 存储型:在存储型攻击中,攻击者将恶意脚本或恶意数据存储到目标网站的数据库或其他存储介质中。当其他用户访问包含恶意脚本的网页时,恶意脚本会从服务器上提取并执行。存储型攻击可以对多个用户造成危害,而不仅仅是单个受害者。
  • DOM型:在DOM型攻击中,攻击者利用网页的客户端脚本(通常是JavaScript)处理代码时的漏洞发起攻击。攻击者通过操纵文档对象模型(DOM)的结构和属性,使得恶意脚本被执行。与反射型和存储型不同,DOM型攻击并不依赖于服务器的响应,而是利用客户端脚本解析和执行过程中的漏洞。

DB是"DOM-based XSS"的缩写,指的是DOM型跨站脚本攻击 

 

攻击流程

反射型XSS

  1. 攻击者构造包含恶意脚本的链接。
  2. 攻击者将恶意链接发送给目标用户。
  3. 用户点击恶意链接。
  4. 用户的浏览器向服务器发送请求,将恶意脚本作为参数包含在请求中。
  5. 服务器从请求中获取恶意脚本参数并将其反射到响应结果中。
  6. 响应结果被发送回用户的浏览器。
  7. 用户的浏览器解析响应结果并执行其中的恶意脚本。

存储型XSS

  1. 攻击者将恶意脚本代码上传到目标网站的数据库中。
  2. 用户访问包含恶意脚本的页面。
  3. 从数据库中检索到的恶意脚本被包含在响应结果中。
  4. 用户的浏览器解析响应结果并执行其中的恶意脚本。

DOM型XSS

  1. 攻击者通过DOM操作动态插入恶意脚本代码。
  2. 用户触发了包含恶意脚本的事件,例如点击按钮或提交表单。
  3. 修改后的DOM结构被浏览器重新解析和执行。
  4. 浏览器执行恶意脚本并导致攻击发生。

危害

  • 执行命令:恶意脚本可以在用户的浏览器环境中执行任意 JavaScript 代码,可能导致攻击者能够执行非授权的操作,例如获取敏感信息、修改页面内容或重定向用户到其他恶意网站。

  • 劫持用户会话:通过劫持用户会话,攻击者可以伪造用户身份,访问用户的账户,并在其名义下进行各种活动,例如发表言论、修改个人资料、进行金融交易等。

  • 插入恶意内容:攻击者可以通过XSS攻击在受影响网站上插入恶意内容,例如广告、恶意链接、虚假表单等,这可能欺骗用户、引导用户点击恶意链接或泄露敏感信息。

  • 重定向用户访问:攻击者可以利用XSS漏洞将用户重定向到其他恶意网站,这可能涉及钓鱼攻击、传播恶意软件或进一步诱导用户暴露个人敏感信息。

  • 窃取用户会话信息:通过XSS攻击,攻击者可以窃取用户的会话信息,例如会话ID、Cookie数据等,从而获取用户的权限和身份验证凭据。

  • 隐私信息:攻击者可以通过注入恶意脚本,窃取用户的敏感信息,包括个人身份信息、信用卡号码、密码等。这些信息可能被用于非法目的,例如身份盗窃、欺诈活动等。

  • 下载蠕虫木马到受害者计算机:一些高级的XSS攻击可能会导致在用户计算机上下载和执行恶意软件,例如蠕虫、木马或其他恶意程序,从而使攻击者完全控制受害者计算机。

2、跨站请求伪造 (CSRF)

基础概念

  • 跨站请求伪造是一种以用户身份在当前已经登录的Web应用程序上执行非用户本意操作的攻击方法。
  • 在2017年发布的新版 OWASP Top10中,CSRF排名第8

攻击原理 

  • CSRF(跨站请求伪造)是一种以用户身份进行冒充进行正常操作的攻击方式,而不是直接针对服务器的攻击。
  • 这种攻击通常发生在服务端没有对请求进行严格过滤和验证的情况下。

CSRF攻击的一般流程如下:

  1. 受害者登录:受害者在目标网站上进行登录,并且会话凭证(如Cookie)被存储在浏览器中。

  2. 构造恶意页面或链接:攻击者创建一个恶意网页或构造恶意链接,并诱使受害者访问。

  3. 伪造请求:恶意页面中包含了针对目标网站的请求,该请求通常是一个非常规的操作(如修改密码、发起资金转账等),攻击者通过JavaScript或其他方式自动触发这个请求。

  4. 发送请求:当受害者访问恶意页面时,其中包含的请求会在受害者的浏览器中被执行。由于受害者已登录目标网站并具有有效的会话凭证,浏览器会自动携带这些凭证发送请求到目标网站,目标网站无法分辨此请求是否为受害者本人发送的。

  5. 完成攻击:目标网站接收到请求后,会以为是受害者自己发起的合法请求,并执行相应的操作,导致攻击成功。

需要注意的是,攻击者需要找到适合的漏洞和目标网站,才能成功进行CSRF攻击。而开发人员可以通过实施防御措施来减少CSRF攻击的成功率,保护用户和网站的安全。

危害

修改用户信息

  • 修改个人信息
  • 修改发货地址

执行恶意操作

  • 修改密码
  • 伪造身份诈骗

3、网页挂马

基础概念

  • 网页挂马是攻击者构造携带木马程序的网页,该网页在被浏览器访问时,利用系统漏洞、浏览器漏洞或用户缺乏安全意识等问题,将木马下载到用户的系统中并执行,从而实现对用户的系统进行攻击。

攻击原理

网页挂马 - 常见途径

  • 利用操作系统和浏览器漏洞:攻击者通过发现操作系统或浏览器中的漏洞,利用这些漏洞将恶意代码注入到网页中。当用户访问带有恶意代码的网页时,恶意代码会下载到用户的计算机并执行。

  • 利用第三方组件的漏洞:除了操作系统和浏览器本身的漏洞,攻击者还可以利用网页中引用的第三方组件(如插件、扩展等)存在的漏洞进行攻击。这些漏洞可能存在于Flash、Java、Adobe Reader等常用组件中。

  • 社会工程学手段:攻击者可能通过钓鱼邮件、欺骗性广告或诱导用户点击恶意链接等社会工程学手段,引导用户访问被植入恶意代码的网页。

网页挂马 - 危害

  • 盗取个人信息
  • 改写磁盘,对计算机系统进行破坏

4、网络钓鱼

基本概念

  • 网络钓鱼(Phishing)是攻击者利用欺骗性的电子邮件、短信、社交媒体消息等方式,诱导用户点击链接或提供个人敏感信息。

网络钓鱼 - 主要手法

  • 发送电子邮件,以虚假信息引诱用户中圈套
  • 建立假冒网上银行、网上证券网站,骗取用户帐号密码实施盗窃
  • 利用虚假的电子商务进行诈骗
  • 利用手机短信、QQ、微信进行各种各样的 “网络钓鱼”
  • 利用木马和黑客技术窃取用户信息后实施盗窃
  • 利用用户弱口令等漏洞破解猜测用户帐号和密码

网络钓鱼 - 攻击媒介占比

        在2020年第一季度期间,由于疫情原因,网络钓鱼攻击越发严重,这是因为疫情导致了更多人在家中使用互联网并依赖于电子邮件和在线平台进行工作、学习和社交。攻击者利用这个机会加大了网络钓鱼攻击的规模和频率。

  • Ema(电子邮件)攻击占18%:电子邮件是最常见的传播网络钓鱼攻击的方式之一。攻击者发送仿冒的电子邮件,冒充合法的组织或个人,以诱导受害者点击恶意链接、下载恶意附件或提供个人敏感信息。

  • Web(网页)攻击占59%:通过伪造的网站或恶意注入恶意代码等方式,攻击者利用Web平台进行网络钓鱼攻击。当用户访问被伪造的网站时,他们可能会被要求输入个人信息或进行其他欺骗性操作。

  • 移动网络攻击占23%:随着智能手机和移动应用的普及,攻击者也越来越多地利用移动平台进行网络钓鱼攻击。这包括通过仿冒的移动应用、短信或社交媒体消息等方式,引诱用户点击恶意链接或提供个人敏感信息。

网络钓鱼 - 案例分析

  • 2018年美国审计署被转走88.8万美元
  • 这些网站似曾相识 www.1cbc.com  www.1enove.com ......
  • 发布虚假的商品销售信息
  • 木马盗走账号密码
  • 银行密码被弱口令破解 

三、养成良好的Web浏览安全意识

1、为什么要养成良好的Web浏览安全意识?

  • 75%的信息安全攻击都发生在Web应用层而非网络层面上
  • 在Web应用所面临的安全隐患中,浏览器安全问题却是最常见的安全突破点。

2、怎样养成良好的Web浏览的安全意识

  • 关注web浏览过程中的隐私保护问题:在使用Web浏览器时,关注网站的隐私政策和数据收集做法。选择信任度高的网站,并尽量避免向不可信的网站提供个人信息。
  • 慎用密码自动保存功能:不建议使用浏览器的密码自动保存功能,因为这可能会导致密码遭到泄露。相反,使用密码管理器来保存和管理密码,确保密码的安全性。
  • Web浏览中的最小特权原则:在浏览网页时,给予浏览器和插件的权限应该最小化。只允许必要的权限,以减少潜在的安全风险。
  • 确保登录口令安全:使用强密码来保护您的账户安全,并定期更改密码。避免使用容易猜测的密码,同时也不要在不安全的网络环境下登录账户。
  • 不明链接访问要确认:在点击或访问不明链接之前,先进行核实和确认。避免点击不可信的链接,以防止遭受钓鱼、恶意软件或诈骗攻击。
  • 关注网站备案信息:在访问网站时,可以查看网站的备案信息。这可以帮助您判断网站的合法性和可信度。

四、如何安全使用浏览器

1、清除浏览数据

浏览器缓存数据

  • 浏览记录
  • 页面信息
  • 下载记录
  • cookie
  • 用户名/密码和其他登录数据
  • 自动填充表单数据
  • 网站设置
  • 托管应用数据

 

应养成定期清除浏览记录的习惯

2、防止跟踪

什么是 cookie?

  • Cookie是浏览器使用的文本格式的小文件,用于存储用户信息和用户偏好等信息
  • 一般在在浏览器的设置中可以看到所访问网站的 Cookie
  • Cookie通常是加密的

 

cookie的作用

  • 为了证明我是我:验证身份
  • http协议附加状态:通过附加状态,服务器可以在多个请求之间维护特定客户端的状态信息。
  • 根本原因是为了解决ht协议无状态无连接问题

总的来说,Cookie在网页浏览和交互中起到证明身份、实现状态管理、个性化设置、数据分析和推广等作用,并解决了HTTP协议无状态无连接的问题。然而,需要注意隐私和安全方面的考虑,遵守相关法规和最佳实践。 

cookie的安全隐患

  • Cookie欺骗:攻击者可以通过伪造Cookie来冒充其他用户身份。这可以通过盗取其他用户的Cookie信息或者手动构造一个合法的Cookie来实现。一旦攻击者获得有效的Cookie,他们就可以进入被欺骗用户的账户,执行未经授权的操作。

  • Cookie篡改:攻击者可以修改Cookie的内容,以获取未经授权的访问权限或者更改用户的设置和偏好。通过截获和修改传输的Cookie数据,攻击者可以篡改其值,例如修改用户ID、角色、权限等,从而获得更高的权限或者执行恶意操作。

浏览器中防止跟踪的安全设置

  • 无痕模式下阻止第三方 Cookie cookie篡改
  • 退出时清除 Cookie 及网站数据
  • 设置浏览器的 “不跟踪'请求
  • 设置"网站设置”中的选项,控制网站的权限

3、避免自动口令填充

  • 浏览器的自动填充功能可以保存用户输入的登录口令
  • 计算机不是安全可控则使用自动填充功能会带来登录信息泄露的风险
  • 较为重要的网站的账号和口令尽量不要设置自动填充,更不要保存到云端
  • 可以管理自动填充的账号和口令

  

4、慎用代理服务器

代理服务器访问模式

代理服务器访问模式的安全隐患

  • 在代理模式下,用户的访问信息都需要通过代理服务器进行处理
  • 如果对代理服务器的安全性无法保证,应尽量避免使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/90332.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最新Kali Linux安装教程:从零开始打造网络安全之旅

Kali Linux,全称为Kali Linux Distribution,是一个操作系统(2013-03-13诞生),是一款基于Debian的Linux发行版,基于包含了约600个安全工具,省去了繁琐的安装、编译、配置、更新步骤,为所有工具运行提供了一个…

计算机竞赛 python 机器视觉 车牌识别 - opencv 深度学习 机器学习

1 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于python 机器视觉 的车牌识别系统 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分工作量:3分创新点:3分 🧿 更多资…

【量化课程】02_4.数理统计的基本概念

2.4_数理统计的基本概念 数理统计思维导图 更多详细内容见notebook 1.基本概念 总体:研究对象的全体,它是一个随机变量,用 X X X表示。 个体:组成总体的每个基本元素。 简单随机样本:来自总体 X X X的 n n n个相互…

梯度下降介绍

什么是梯度 梯度是微积分中一个很重要的概念,在单变量的函数中,梯度其实就是函数的微分,代表着函数在某个给定点的切线的斜率;在多变量函数中,梯度是一个向量,向量有方向,梯度的方向就指出了函…

809协议nodejs编写笔记(还在更新)

一、总体流程 数据首先通过receiver接受层接收,去掉标识头和标识尾;再进入depacker解包层进行解包,把标识头分解出来并解析;之后发给handler处理层根据不同的消息id选择使用不同的业务逻辑;如果有应答,则通…

陪诊小程序开发|陪诊陪护小程序让看病不再难

陪诊小程序通过与医疗机构的合作,整合了医疗资源,让用户能够更加方便地获得专业医疗服务。用户不再需要面对繁琐的挂号排队,只需通过小程序预约服务,便能够享受到合适的医疗资源。这使得用户的就医过程变得简单高效,并…

CSS中的position属性有哪些值,并分别描述它们的作用。

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ static⭐ relative⭐ absolute⭐ fixed⭐ sticky⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅!这个专栏是为那…

Tomcat多实例部署及nginx+tomcat的负载均衡和动静分离

Tomcat多实例部署 安装 jdk、tomcat(流程可看之前博客) 配置 tomcat 环境变量 [rootlocalhost ~]# vim /etc/profile.d/tomcat.sh#tomcat1 export CATALINA_HOME1/usr/local/tomcat/tomcat1 export CATALINA_BASE1/usr/local/tomcat/tomcat1 export T…

pdf怎么转换成jpg图片?这几个转换方法了解一下

pdf怎么转换成jpg图片?转换PDF文件为JPG图片格式在现代工作中是非常常见的需求,比如将PDF文件中的图表、表格或者图片转换为JPG格式后使用在PPT演示、网页设计等场景中。 【迅捷PDF转换器】是一款非常实用的工具,可以将PDF文件转换成多种不同…

HTML详解连载(5)

HTML详解连载(5) 专栏链接 [link](http://t.csdn.cn/xF0H3)下面进行专栏介绍 开始喽行高:设置多行文本的间距属性名属性值行高的测量方法 行高-垂直居中技巧 字体族属性名属性值示例扩展 font 复合属性使用场景复合属性示例注意 文本缩进属性…

YOLO v8目标跟踪详细解读(二)

上一篇,结合代码,我们详细的介绍了YOLOV8目标跟踪的Pipeline。大家应该对跟踪的流程有了大致的了解,下面我们将对跟踪中出现的卡尔曼滤波进行解读。 1.卡尔曼滤波器介绍 卡尔曼滤波(kalman Filtering)是一种利用线性…

Python学习 -- 常用函数与实例详解

在Python编程中,数据转换是一项关键任务,它允许我们在不同数据类型之间自由流动,从而提高代码的灵活性和效率。本篇博客将深入探讨常用的数据转换函数,并通过实际案例为你展示如何巧妙地在不同数据类型之间转换。 数据类型转换函…

分布式监控平台——Zabbix

市场上常用的监控软件: 传统运维:zabbix、 Nagios 一、zabbix概述 作为一个运维,需要会使用监控系统查看服务器状态以及网站流量指标,利用监控系统的数据去了解上线发布的结果,和网站的健康状态。 利用一个优秀的监…

【数学建模】--因子分析模型

因子分析有斯皮尔曼在1904年首次提出,其在某种程度上可以被看成时主成分分析的推广和扩展。 因子分析法通过研究变量间的相关稀疏矩阵,把这些变量间错综复杂的关系归结成少数几个综合因子,由于归结出的因子个数少于原始变量的个数&#xff0c…

【第三讲-三维空间刚体运动】

旋转矩阵 点、向量、坐标系 坐标系分为左左手系和右手系 下面讨论有关向量的运算: 内积 外积: 外积的结果是一个向量,方向垂直于这两个向量,大小为

sift-1M数据集的读取及ES插入数据

sift是检查ann近邻召回率的标准数据集,ann可以选择faiss,milvus等库或者方法;sift数据分为query和base,以及label(groundtruth)数据。本文采用sift-1M进行解读,且看如下: 1、sift-1m数据集 官方链接地址:Evaluation of Approximate nearest neighbors: large datase…

brew+nginx配置静态文件服务器

背景 一下子闲下来了,了解的我的人都知道我闲不下来。于是,我在思考COS之后,决定自己整一个本地的OSS,实现静态文件的访问。那么,首屈一指的就是我很熟的nginx。也算是个小复习吧,复习一下nginx代理静态文…

通过网关访问微服务,一次正常,一次不正常 (nacos配置的永久实例却未启动导致)

微服务直接访问没问题,通过网关访问,就一次正常访问,一次401错误,交替正常和出错 负载均衡试了 路由配置检查了 最后发现nacos下竟然有2个order服务实例,我明明只开启了一个呀 原来之前的8080端口微服务还残留&…

spring按条件注入@Condition及springboot对其的扩展

概述 spring的ioc极大的方便了日常开发,但随着业务的迭代。配置的一些参数在某些情况下需要按条件注入。 比如原先定义的db公共模块下,相关的配置和工具类只是基于mysql的。但是后续有模块需要使用mongo/es等其他数据库,又想继续使用db公共…

基于ipad协议的gewe框架进行微信群组管理(二)

友情链接 geweapi.com 点击访问即可。 获取群组详情 小提示: 该接口可以一次查询20个群组查询出来的信息是不带公告的 请求URL: http://域名地址/api/group/detail 请求方式: POST 请求头: Content-Type:applica…