【信息安全】深度分析邮件安全及钓鱼攻击防范

本博文共计3100余字,预计需阅读20分钟

【邮件安全建设】

一、前言

        邮件系统作为企业办公网络架构中重要的组成部分,同时也是业务高频使用的办公应用,一旦出现安全问题,业务将会被严重干扰甚至中断,本篇博客通过攻守两个方面,深度介绍邮件系统安全防御的内容。

        邮件服务通常受到以下几个方面的安全威胁或干扰:

  1. 垃圾广告邮件
  2. 诈骗类钓鱼邮件攻击
  3. 携带勒索病毒附件邮件攻击
  4. 邮件发件人伪造
  5. 邮件服务器本身的安全漏洞

        通过部署合理的安全防护架构和加固邮件服务器可以大幅度降低以上风险,下面的内容也主要从这两方面展开,当然做完这两项工作并不能代表邮件安全从此“高枕无忧”,安全工作像是垒积木,安全架构的部署只是垒积木的第一步,安全建设永远是动态的,没有一劳永逸的安全解决方案。

二、Gartner - 如何构建有效的电子邮件安全体系结构

        全球技术权威咨询机构Gartner最早在2018年提出电子邮件防御的安全体系架构(How to Build an Effective Email Security Architecture)。

        Gartner指出邮件安全防护是一个系统工程,涉及的内容包括网络、协议、应用、终端等多个方面

        在本篇博客中我们重点探讨网络架构和安全配置方面可以有效提升邮件安全的动作,因为这对任何一个企业都是较为简单但是安全防护收益最大。

三、快速构建基础的邮件安全防护架构

        传统的邮件安全防护体系包含邮件安全网关、邮件沙箱、邮件服务器三个重要的组件。

        邮件安全网关作为连接外部互联网和内部DMZ区的第一道屏障,承载了垃圾邮件、广告钓鱼邮件、病毒特征较明显的攻击邮件的第一层过滤任务。

        对于一些经过携带自签名、免杀处理附件的“安全邮件”,常规的邮件安全网关往往无法拦截,这一类邮件危险系数极大,通常是攻击者实施的精准钓鱼攻击,攻击附件一般是经过伪装的勒索加密程序或者远控木马程序,一旦被企业员工点击运行,将会对内网造成毁灭性风险。

        为应对此类潜在的安全风险,邮件沙箱出现在较多的安全解决方案中,邮件沙箱的基本技术原理在于可以动态分析邮件中携带的链接、文件附件,通过模拟运行的方式检测安全性,检测通过的邮件放行,异常邮件隔离。避免恶意文件被投递到员工PC端。

        通过这种层层过滤、安全检测的机制可以大幅度减低恶意邮件攻击带来的风险,当然这不代表没有恶意邮件漏过,对于钓鱼邮件安全防御的内容在下一章节【钓鱼邮件防范】重点介绍。

 四、邮件安全认证技术

        当前 Email 通信,还是在使用 SMTP 这个协议,SMTP协议工作在应用层,使用25端口。SMTP 的全称为 Simple Mail Transfer Protocol,即简单邮件传输协议。SMTP 实际上是一个非常简单(甚至简陋)的传输协议,本身并没有很好的安全措施。为提升邮件服务的安全性,这里介绍三个重要的邮件安全认证技术:

       4.1、SPF,全称为 Sender Policy Framework,发件人策略框架使用SPF记录

        (1)域名所有者在他们的DNS服务器上注册一个TXT记录,与DKIM记录托管密钥信息的方式相同。TXT信息列出了所有被批准代表域发送电子邮件的电子邮件服务器。如果攻击者使用欺骗的消息头,SPF记录使接收方的电子邮件服务器能够检测欺诈消息,并阻止它们到达预期受害者的收件箱。 SPF记录只能确保欺骗的电子邮件消息不能发送给接收方,但它不能保证攻击者没有篡改消息。

        (2)SPF记录语法介绍

        SPF语法主要包含以下几类参数:

all | ip4 | ip6 | a | mx | ptr | exists | include

        每个参数有四种类型的前缀:

"+"  Pass(通过)
"-"  Fail(拒绝)
"~"  Soft Fail(软拒绝)
"?"  Neutral(中立)

       验证SPF的返回值,可以判断SPF的配置是否规范:

结果含义服务器处理动作
Pass发件IP是合法的接受投递信件
Fail发件IP是非法的拒收投递信件
Soft Fail发件IP是非法的接受信件,但会做标记
NeutralSPF记录中没有发件IP是否合法的信息接受投递信件
None服务器没有设定SPF记录接受来信
PermError发生了严重错误(例如配置语法错误)接受/拒绝,状态不可控
TempError发生了临时错误(例如DNS查询失败)接受/拒绝,状态不可控

          示例语法:  

       只允许在 192.168.0.1 ~ 192.168.255.255 范围内的 IP    

"v=spf1 ip4:192.168.0.1/16 -all"

    它表示支持当前域名的 a 记录和 mx 记录,同时支持一个给定的 IP 地址;其他地址则拒绝:

v=spf1 a mx ip4:182.126.82.125 -all

  

         4.2、DKIM(域名密钥识别邮件,DomainKeys Identified Mail))

       (1) DKIM协议允许组织通过以邮箱提供商可以验证的方式签署消息来承担传输责任。DKIM记录验证通过加密认证成为可能。 实现像DKIM这样的电子邮件认证技术是保护您的员工和客户免受有针对性的电子邮件攻击的最佳方法之一。

      (2)配置DKIM记录的流程

        a.生成密钥对,首先在邮件服务器上使用相关套件生成公私钥,公钥用于验证邮件真实性,私钥用于对邮件进行签名。

        b.将公钥以TXT记录的形式添加到域名的DNS配置中。

        c.配置邮件服务器的DKIM配置,如导入私钥。

        4.3、DMARC(基于域的消息认证、报告和一致性认证,Domain-based Message Authentication, Reporting & Conformance)

        该认证记录也是TXT记录中的一种,是一种基于现有的SPF和DKIM协议的可扩展电子邮件认证协议,其核心思想是邮件的发送方通过特定方式(DNS)公开表明自己会用到的发件服务器(SPF)、并对发出的邮件内容进行签名(DKIM),而邮件的接收方则检查收到的邮件是否来自发送方授权过的服务器并核对签名是否有效。

      

【钓鱼邮件防范】

一、依托安全防护组件进行防范

        通过部署基础的邮件安全网关、邮件安全沙箱完成第一阶段的安全防护架构部署,通过引入终端杀毒/本地HIDS终端防护/数据防泄漏,进行第二阶段的安全防护结构部署。

二、加入反网络钓鱼联盟

        依托一些成熟的国际/国内 反网络钓鱼联盟小组可以共享安全情报,达成分钟级的数据共享,可以有效防范网络钓鱼。

       这里介绍 反网络钓鱼工作组(APWG) ,作为一个国际联盟,致力于消除网络钓鱼及相关事件引起的欺诈和身份盗窃它汇集了受网络钓鱼攻击影响的企业:安全产品和服务公司、执法部门机构、政府机构、行业协会、区域性国际条约组织和通公司。

        APWG由David Jevans于 2003 年创立,拥有来自全球 1700 多家公司和机构的 3200 多名成员。成员包括卡巴斯基实验室、BitDefender、赛门铁克、McAfee、VeriSign、IronKey和Internet Identity等领先的安全公司。金融业成员包括ING 集团、VISA、万事达卡和美国银行家协会。

三、邮件相关服务的加固

        严格检查邮件服务的安全配置是否规范,检查内容包括邮件域的SPF配置、DKIM配置和DMARC配置。

        邮件服务器本身的安全漏洞检查,非必要端口的关闭,服务收敛等基本安全防护操作。

四、安全意识培训、宣传

        千里之堤毁于蚁穴,钓鱼邮件之所以被攻击者高频使用,就是因为攻击成本非常低,但是攻击收益非常高,从内部提升员工的安全意识,拉高员工安全防护意识的”整体水位“是长期但有效的方式。

        可以通过定期的安全意识培训、培训考核、公司内部安全意识材料分发、安全意识海报的张贴等方式,进行安全意识宣贯。

        企业现在做的一场培训在未来可能就会挽救一次网络安全危机,这是对未来的投资。

本文完,感谢阅读!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于Vue的应届毕业生财务管理系统-计算机毕业设计源码82886

摘 要 随着互联网大趋势的到来,社会的方方面面,各行各业都在考虑利用互联网作为媒介将自己的信息更及时有效地推广出去,而其中最好的方式就是建立网络管理系统,并对其进行信息管理。由于现在网络的发达,应届毕业生财务…

如何正确地理解应用架构并开发

许多同学或多或少都经历过这样的流程: 新同学刚来公司,学习了解团队的一些工程代码,并了解其中的代码风格团队新接手了一些其他团队的项目,需要了解工程结构以及概念如何定义工程项目的工程结构,包目录结构并达成团队共…

Redis底层原理

持久化 Redis虽然是个内存数据库,但是Redis支持RDB和AOF两种持久化机制,将数据写往磁盘,可以有效地避免因进程退出造成的数据丢失问题,当下次重启时利用之前持久化的文件即可实现数据恢复。 RDB RDB持久化是把当前进程数据生成快照保存到硬盘的过程。所谓内存快照,就是…

Docker与微服务实战(基础篇)

Docker与微服务实战(基础篇) 1、Docker简介2、Docker安装步骤1.Centos7及以上的版本2.卸载旧版本3.yum安装gcc相关4.安装需要的软件包5.设置stable镜像仓库【国内aliyun】6.更新yum软件包索引--以后安装更快捷7.安装Docker-Ce8.启动Docker9.测试10.卸载1…

利用 Vesta 软件绘制团簇构型 ICO多面体(二)

微信公众号:原子与分子模拟更新的快,欢迎大家关注。 -------------------------------------------------------------------- 进入网站下载 ICO 文件: http://www.pas.rochester.edu/~wangyt/algorithms/bop/ 利用 Vesta 软件进行绘制。 …

openssl3.2 - 自己构建openssl.exe的VS工程(在编译完的源码版本上)

文章目录 openssl3.2 - 自己构建openssl.exe的VS工程(在编译完的源码版本上)概述笔记备注END openssl3.2 - 自己构建openssl.exe的VS工程(在编译完的源码版本上) 概述 将openssl3.2编译出来了(openssl3.2 - 编译) 安装后的openssl.exe可以干openssl3.2所有的事情, 用openssl.…

Kubernetes WebHook 入门 -- 入门案例: apiserver 接入 github

博客原文 文章目录 k8s 集群配置介绍Admission WebhookWebHook 入门实践: github 认证接入web 服务器Dockerfile 镜像制作amd64x86_64构造镜像检验镜像 Makefilewebhook 接入 apiserverwebhook.yamlapiserver 挂载 webconfig在 github 中创建认证 token将 token 添加到 kubecon…

mybatisplus快速入门-个人理解版

mybatisplus快速入门 1.快速入门1.1准备开发环境-idea2019.2.1版第一步:新建工程第二步:导入依赖 1.2创建数据库和表创建库表添加数据 1.3编写代码进行测试第一步:配置application.yml第二步:添加实体类第三步:添加map…

如何实现公网访问GeoServe Web管理界面共享空间地理信息【内网穿透】

文章目录 前言1.安装GeoServer2. windows 安装 cpolar3. 创建公网访问地址4. 公网访问Geo Servcer服务5. 固定公网HTTP地址 前言 GeoServer是OGC Web服务器规范的J2EE实现,利用GeoServer可以方便地发布地图数据,允许用户对要素数据进行更新、删除、插入…

前端面试题集合五(css)

CSS 面试知识点总结 本部分主要是笔者在复习 CSS 相关知识和一些相关面试题时所做的笔记,如果出现错误,希望大家指出! 目录 1.介绍一下标准的 CSS 的盒子模型?低版本 IE 的盒子模型有什么不同的?2.CSS 选择符有哪些…

MobileViT

CNN与transformer的混合。 轻量级、通用的、对移动端友好的vision transformer模型。

快乐学Python,数据分析之获取数据方法「公开数据或爬虫」

学习Python数据分析,第一步是先获取数据,为什么说数据获取是数据分析的第一步呢,显而易见:数据分析,得先有数据,才能分析。 作为个人来说,如何获取用于分析的数据集呢? 1、获取现成…

实习学习总结(2023-12-14---2024-1-08)

CS汉化 首先下载CSagent,百度网盘中有 按照如下放置目录 使用出现中文乱码 插件使用乱码主要跟cs客户端加载没有指定UTF-8编码有关 指定编码的字符:-Dfile.encodingUTF-8 上面的字段添加到启动脚本里面即可,如: java -Dfile.e…

Apache Doris (六十一): Spark Doris Connector - (1)-源码编译

🏡 个人主页:IT贫道-CSDN博客 🚩 私聊博主:私聊博主加WX好友,获取更多资料哦~ 🔔 博主个人B栈地址:豹哥教你学编程的个人空间-豹哥教你学编程个人主页-哔哩哔哩视频 目录 1. Spark Doris Connector

【LeetCode:49. 字母异位词分组 | 哈希表】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

前端面试题集合六(高频)

1、vue实现双向数据绑定原理是什么&#xff1f; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>…

回归预测 | Matlab实现DE-BP差分算法优化BP神经网络多变量回归预测

回归预测 | Matlab实现DE-BP差分算法优化BP神经网络多变量回归预测 目录 回归预测 | Matlab实现DE-BP差分算法优化BP神经网络多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现DE-BP差分算法优化BP神经网络多变量回归预测&#xff08;完整源码和…

Go语言学习笔记(二)

Go语言的学习资源 以下是一些推荐的Go语言学习资源的链接&#xff1a; Go语言教程&#xff1a;https://golang.org/doc/Go by Example&#xff1a;Go by ExampleGolang Tutorials&#xff1a;https://golangtutorials.com/Go语言第一课&#xff08;慕课网&#xff09;&#x…

Linux的网络配置命令和网络设置实操

目录 一、网路命令 1.ifconfig 2.hostname 3.route 4.netstat 5.ss&#xff08;socket statistics&#xff09; 6.ping 7.nslookup 8.tcpdump 二、实操 1.单个网卡修改 2.双网卡配置 3.bond网卡绑定 一、网路命令 查看Linux基础的网络设置 网关route -nIP地址ifc…

【C#】C#实现PDF合并

文章目录 一、下载iTextSharp.dll下载iTextSharp.dll命名空间引入 二、界面设计三、代码全局变量选择文件夹的按钮确认合并的按钮 四、导出结果五、完整源码 一、下载iTextSharp.dll 下载iTextSharp.dll 可使用联机方式或者文件下载方式。 命名空间引入 代码开始时引入了一…