
安全攻防
安全攻防
阿尔卑斯下的泰戈尔
工作使我快乐
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
安全攻防技能38讲
安全攻防技能30讲 · 课程目录▌开篇词 (1讲)开篇词 | 别说你没被安全困扰过▌安全基础概念 (5讲)01 | 安全的本质:数据被窃取后,你能意识到问题来源吗?02 | 安全原则:我们应该如何上手解决安全问题?03 | 密码学基础:如何让你的密码变得“不可见”?04 | 身份认证:除了账号密码,我们还能怎么做身份认证?05 | 访问控制:如何选取一个合适的数据保护方案?▌Web安全 (7讲)06 | XSS:当你“被发送”了一条微博时,到底发生了什么?07 | SQL注入:明明设置原创 2020-08-14 12:29:58 · 11942 阅读 · 0 评论 -
开篇词 别说你没被安全困扰过
▌为什么要重视安全?首先,不知道你是否还记得 2017 年 9 月美国知名征信公司 Equifax 的数据泄露事件,这事导致了 1.45 亿美国居民个人隐私信息被泄露。受事件影响,Equifax 公司市值瞬间就蒸发了 30 亿美元,最后还赔偿给用户 4.25 亿美元,可谓损失惨重。后来,Equifax 公司复盘了安全事故的原因,发现这个事故的罪魁祸首,居然是一个早已被披露出来的安全漏洞,叫作 Apache Struts,真是让人哭笑不得。你说这事难吗?现在看起来,一点都不难。但问题出现在什么地方呢?我.原创 2020-08-19 16:50:08 · 7488 阅读 · 0 评论 -
01 | 安全的本质:数据被窃取后,你能意识到问题来源吗?
今天是我们安全课程的第一讲,我们不会讲具体的细节内容。我打算先和你聊聊安全本身,以帮你建立整体的大局观。我确信,只要理解了安全的本质,在后续的课程中,你就更容易理解安全的概念和知识,也就能够建立解决安全问题的思维体系。▌安全是什么?首先,我们来看,安全是什么?当你所在的企业内网被入侵,数据被窃取之后,你也许能知道,是某个业务漏洞导致黑客能够进入内网,但你是否意识到,数据安全保护机制上同样产生了问题?类似这种的问题有很多。当我们遇到某一个特定的攻击或者安全问题时,往往看到的都是表象的影响,而能否找到根.原创 2020-08-19 16:44:08 · 7846 阅读 · 0 评论 -
02 | 安全原则:我们应该如何上手解决安全问题?
上一讲,我们一起拆解学习了 CIA 三元组,也就是机密性、完整性和可用性。它们分别代表了数据的“不可见”“不可改”和“可读”。简单来说,以购买极客时间专栏为例,机密性就是未付费用户无法学习这个专栏,完整性就是这个专栏的内容不会变成别的其他方向的内容,可用性就是你作为付费用户,能够随时学习这个专栏。理解了 CIA,上一节最后面试官问的“安全是什么”的问题,你现在一定可以回答出来了。面试官点点头,接着说道:“你觉得该怎么去解决安全问题呢?”毫无疑问,不同的应用、不同的模块会受到不同的安全威胁,当然,我们面.原创 2020-08-19 16:43:16 · 7727 阅读 · 0 评论 -
03 | 密码学基础:如何让你的密码变得“不可见”?
上一讲,我们学习了黄金法则的三部分核心内容:认证、授权、审计。它们描述了用户在使用应用的各个环节,我们需要采取的安全策略。在掌握了黄金法则之后,你就能以在安全发展规划上的宏观能力,赢得面试官的认可。接下来,他想考验一下你对安全具体知识的理解,以此来判断你能否将安全发展落地。于是,他问了一个非常基础的问题:你懂加解密吗?可以说,密码学是“黄金法则”的基础技术支撑。失去了密码学的保护,任何认证、授权、审计机制都是“可笑”的鸡肋。在实际的生活工作中经常会有这样的场景发生:多个用户共用一个 Wi-Fi 来上.原创 2020-08-19 16:41:38 · 7733 阅读 · 2 评论 -
04 | 身份认证:除了账号密码,我们还能怎么做身份认证?
上一讲,我们详细讲解了密码学的三种算法:高效安全的对称加密算法,解决密钥分发难题的非对称加密算法,以及提供单向加密的散列算法。在表达了你对密码学清晰的理解之后,面试官开始相信你具备安全方面的基础知识了。于是,他准备和你探讨一下安全落地的细节。基于你之前提出的“黄金法则”,面试官问道:“黄金法则的认证(Authentication)部分不就是账号密码吗?这么简单的东西,有必要考虑得那么复杂吗?”认证,也就是身份识别与认证(通常来说,识别和认证是一体的,因此后面我会用身份认证来指代识别和认证)。毫无疑问,.原创 2020-08-19 16:40:11 · 8442 阅读 · 0 评论 -
05 | 访问控制:如何选取一个合适的数据保护方案?
在上一讲中,我们主要从身份认证的场景和威胁上,对身份认证进行了介绍。同时,身份认证的核心问题是身份管理,因此我们可以采用单点登录的形式,来解决复杂的身份管理问题。常用的单点登录方式包括 CAS 流程、JWT、OAuth 和 OpenID。那听了你对身份认证的规划之后,面试官觉得很满意,接着又问道:“既然身份认证都做到这么好了,是不是就不需要所谓的‘黄金法则’了?有了身份认证,还需要授权和审计做什么呢?”对于这个问题,你肯定要先给出否定的回答,这个很显然。接着,你可以说:“通过身份认证,我们只能够确认用户原创 2020-08-19 08:37:28 · 7859 阅读 · 0 评论 -
06 | XSS:当你“被发送”了一条微博时,到底发生了什么?
在前面的课程中,我们重点讲解了安全的一些基础知识,更多地是从宏观的层面上来谈论安全。但安全不是一个靠宏观指导就能够落地的东西。因此,接下来我会结合真实案例中的各种安全问题,来介绍具体的安全防护手段和工具。今天,我们就先从最基础的 Web 安全开始。在 Web 安全这个模块中,我们所谈论的 Web,是指所有基于 HTTP 或者其他超文本传输协议(RPC 等)开发的应用,包括:网页、App、API 接口等等。这类应用的共同点是:通过 HTTP 等文本协议,在客户端和服务端之间进行数据交换。客户端需要将服务端.原创 2020-08-18 10:55:34 · 7827 阅读 · 0 评论 -
07 | SQL注入:明明设置了强密码,为什么还会被别人登录?
在上一讲中,我们介绍了 XSS 攻击。今天,我们来介绍另外一种常见的 Web 攻击:SQL 注入。在讲正文之前,让我们先来看一个案例。某天,当你在查看应用的管理后台时,发现有很多异常的操作。接着,你很快反应过来了,这应该是黑客成功登录了管理员账户。于是,你立刻找到管理员,责问他是不是设置了弱密码。管理员很无辜地表示,自己的密码非常复杂,不可能泄露,但是为了安全起见,他还是立即修改了当前的密码。奇怪的是,第二天,黑客还是能够继续登录管理员账号。问题来了,黑客究竟是怎么做到的呢?你觉得这里面的问题究竟出在哪.原创 2020-08-18 10:42:06 · 7837 阅读 · 0 评论 -
08 | CSRF/SSRF:为什么避免了XSS,还是“被发送”了一条微博?
前面我们讲了 2 种常见的 Web 攻击:XSS 和 SQL 注入。它们分别篡改了原始的 HTML 和 SQL 逻辑,从而使得黑客能够执行自定义的功能。那么除了对代码逻辑进行篡改,黑客还能通过什么方式发起 Web 攻击呢?我们还是先来看一个例子。在平常使用浏览器访问各种网页的时候,是否遇到过,自己的银行应用突然发起了一笔转账,又或者,你的微博突然发送了一条内容?在我们学习 XSS 之后,你可能会联想到,这是银行或者微博中出现了某个 XSS 漏洞。但问题是,你今天并没有访问过银行或者微博的页面,所以并没.原创 2020-08-18 10:37:39 · 7561 阅读 · 0 评论 -
09 | 反序列化漏洞:使用了编译型语言,为什么还是会被注入?
我们都知道,Java 是一种高层级的语言。在 Java 中,你不需要直接操控内存,大部分的服务和组件都已经有了成熟的封装。除此之外,Java 是一种先编译再执行的语言,无法像 JavaScript 那样随时插入一段代码。因此,很多人会认为,Java 是一个安全的语言。如果使用 Java 开发服务,我们只需要考虑逻辑层的安全问题即可。但是,Java 真的这么安全吗?2015 年,Java 曾被曝出一个严重的漏洞,很多经典的商业框架都因此受到影响,其中最知名的是WebLogic。据统计,在网络中公开的 We.原创 2020-08-18 10:27:26 · 7765 阅读 · 0 评论 -
10 | 信息泄露:为什么黑客会知道你的代码逻辑?
你平时在 Debug 的时候,一定首先会去查看错误信息。根据错误信息,你能够了解究竟是什么情况引发了什么样的错误。同样地,黑客也能够通过错误信息,推断出你的后台代码逻辑。那么,黑客究竟是怎么做的呢?接下来,我们就一起看一下这个过程。为什么错误信息会泄露代码逻辑?当黑客在登录某个页面时,在用户名位置输入一个单引号,在密码位置输入一个“g”之后,就会出现如下的错误信息。An Error Has Occurred.Error Message:System.Data.OleDb.OleDbExcepti.原创 2020-08-18 10:21:50 · 8268 阅读 · 1 评论 -
11 | 插件漏洞:我的代码看起来很安全,为什么还会出现漏洞?
在讲反序列化漏洞的时候,我们说过,这个漏洞其实就存在于 Fastjson、Jackson 等知名的 JSON 解析库中,跟你自己写的代码没有太多关系,所以极难掌控。也就是说,在开发应用的过程中,尽管你的代码很安全了,黑客还是能够通过插件漏洞对应用发起攻击(我文中提到的插件,是第三方的插件、依赖库、工具和框架等的统称)。说到这儿,想不想测试一下你的插件是否安全?在这里,我准备了几个问题,你可以看看自己是否对所用的插件了如指掌。你所使用的所有插件的版本是什么?(包括前端和后端,直接引用和间接引用)你所.原创 2020-08-18 10:16:29 · 8182 阅读 · 0 评论 -
12 | 权限提升和持久化:为什么漏洞修复了,黑客还是能够自由进出?
在 Web 安全的前 6 讲中,讲解了各种漏洞的产生和防护方法,比如:XSS、SQL 注入、CSRF、SSRF 和插件漏洞。除了这些漏洞之外,我也着重强调了一点,黑客善于通过“蛛丝马迹”推断出代码逻辑,然后发起攻击。学习了这些内容,在实际工作的过程中,我们其实就能基本避免大部分的 Web 安全问题了。但是,有一天,我又遇到了新的问题。某一天,当我在进行日常审计的时候,突然发现内网有黑客的操作痕迹。于是,我马上对黑客的攻击路径进行溯源。最后发现黑客是通过某个应用的 SSRF 漏洞进入的。之前我们提到过,.原创 2020-08-18 09:42:43 · 7943 阅读 · 4 评论 -
13 | Linux系统安全:多人共用服务器,如何防止别人干“坏事”?
从这一讲开始,我们讨论 Linux 系统和应用安全。我们知道,在开发一个应用的过程中,需要涉及代码、操作系统、网络和数据库等多个方面。所以,只是了解代码安全肯定是不够的,我们还需要了解常见的基础环境和工具中的安全机制,学会通过正确地配置这些安全机制,来提升安全保障。谈到 Linux,我相信你每天都在使用 Linux 进行各种开发和运维操作。但是,大多数情况下,公司不会给每一个员工分配专有的 Linux 服务器,而是多个开发和运维共用一台 Linux 服务器。那么,其他员工在使用 Linux 服务器的时候.原创 2020-08-18 09:36:44 · 8805 阅读 · 0 评论 -
14 | 网络安全:和别人共用Wi-Fi时,你的信息会被窃取吗?
你平时使用手机连接无线网络的时候,一定看到过这样的安全提示:不要连接陌生的 Wi-Fi。也一定看过很多这样的报道:某先生 / 女士因为使用了陌生的 Wi-Fi,信息遭到泄露,不仅账号被盗用,还造成了经济损失。看到这些提示和报道之后,你就要产生警惕了,当你连入一个陌生的 Wi-Fi 时,这个 Wi-Fi 下连接的其他人很有可能会看到你的信息,并且对你发起攻击。你可能要说了,只要我避免连入陌生的 Wi-Fi,前面说的攻击就基本不会发生了。但是,在工作中,员工和服务器通常接入的也是同一个网络,那员工是不是就.原创 2020-08-18 09:28:48 · 19084 阅读 · 0 评论 -
15 | Docker安全:在虚拟的环境中,就不用考虑安全了吗?
在13 讲中,我们讲了 Linux 系统安全。但是,当你在和同事讨论 Linux 系统安全的时候,同事表示,公司的服务都是通过 Docker 来进行容器化部署的。开发在操作中,并不会接触实际的 Linux 服务器,所以不会去关注 Linux 安全 。而且,因为容器是隔离的,就算容器被黑客攻击了,也只是容器内部受到影响,对宿主的 Linux 系统和网络都不会产生太大影响。事实上,我知道很多人都有这种想法。但是,你在学习了安全专栏之后,可以试着思考一下,开发使用了 Docker 就一定安全吗?真的可以不用考.原创 2020-08-18 08:30:57 · 7856 阅读 · 0 评论 -
16 | 数据库安全:数据库中的数据是如何被黑客拖取的?
说到数据库,你肯定会说:“数据库是我最熟悉的工具了。利用它,我能够设计复杂的表结构、写出炫酷的 SQL 语句、优化高并发场景下的读写性能。”当然,我们的日常工作离不开数据库的使用。而且,数据库中储存的大量机密信息,对于公司和用户都至关重要。那关于数据库的安全你知道多少呢?你知道数据库是如何进行认证的吗?使用数据库交换数据的过程是安全的吗?假如黑客连入了数据库,又会发生什么呢?今天,我就以两种比较常见的数据库 Redis 和 MySQL 为例,来和你一起探讨数据库的安全。▌Redis 安全我们首先来.原创 2020-08-17 12:30:44 · 8182 阅读 · 0 评论 -
17 | 分布式安全:上百个分布式节点,不会出现“内奸”吗?
如今,大数据处理已经成为了每一个应用和公司都必备的业务。因此,除了数据库之外,分布式的平台和框架也是开发人员最熟悉的工具之一。说到分布式,就不得不提到 Hadoop。Hadoop 可以说是一个划时代的分布式框架,底层的 HDFS 提供了大数据存储的文件系统支持,YARN 提供了大数据运算的资源调度能力,而 MapReduce 的计算框架,更是彻底革新了数据运算的方式。基于此,Hadoop 又衍生了一系列的分布式工具和数据处理生态圈。可以说,Hadoop 是分布式框架的根基。所以,我们今天就以 Hado.原创 2020-08-17 11:44:10 · 7888 阅读 · 0 评论 -
18 | 安全标准和框架:怎样依“葫芦”画出好“瓢”?
从这一讲开始,我们讨论安全防御工具。实际上,每个公司都需要进行安全体系建设,业内将这些通用性的建设经验进行总结,形成了各种安全标准和框架。从这些标准和框架中,我们能了解到建设安全体系的思路和方向,对于实际的安全落地工作,有很大的指导作用。根据安全等级和关注点的不同,不同的安全标准和框架都有各自的具体要求。这些要求都非常简单直接,也很容易理解,所以,这不是我们要讲解的重点。在今天的课程中,我更想通过这些标准和框架的设计思路来讲一讲,作为公司的安全人员,该如何推动公司整体的安全体系建设。▌安全标准和框架有.原创 2020-08-17 11:21:42 · 8357 阅读 · 0 评论 -
19 | 防火墙:如何和黑客“划清界限”?
黑客在网络攻击时,第一步会扫描系统对外开放的端口,尝试发起连接或者攻击。比如,黑客可以扫描公司公网 IP 的 22 端口(SSH 服务),然后尝试爆破登录。这个时候,通过防火墙,我们既可以屏蔽掉开放的 22 端口,也能拦截爆破的请求。所以,防火墙是面对外部入侵的第一道防线。当然,这只是个简单的例子,现实中黑客的攻击手段更多,攻击场景也更加复杂。那这个时候,防火墙是如何为系统和网络提供保护的呢?具体来说,防火墙能够拦截哪些攻击呢?它的盲区又是什么呢?今天,我们就一起来学习,如何通过防火墙进行安全防护。▌.原创 2020-08-17 14:55:22 · 7858 阅读 · 0 评论 -
20 | WAF:如何为漏洞百出的Web应用保驾护航?
如果你细心观察的话,应该会发现,随着 Web 应用越来越多,黑客的攻击目标也逐渐转向了针对 Web 安全的攻击。传统的防火墙主要专注于网络层的攻击防御,对 Web 安全的防御能力相对欠缺。因此,WAF(Web Application Firewall,Web 应用防护系统)的概念也就被提了出来。WAF 说白了就是应用网关防火墙的一种,它只专注于 Web 安全的防御,近几年来逐渐被当成一个相对独立的产品方向来研究。那么,WAF 和防火墙到底有哪些区别呢?针对我们之前讲过的各种 Web 攻击手段,WAF 是.原创 2020-08-17 11:01:04 · 8103 阅读 · 0 评论 -
21 | IDS:当黑客绕过了防火墙,你该如何发现?
在前面两节课中,我们讲了防火墙和 WAF 的工作模式,以及它们是如何作为内外网的隔离设备,在网络边界进行安全防护的。但是,无论是防火墙还是 WAF,都无法达到 100% 的防护效果。黑客总是能有很多其他的办法,来隐藏自己或者直接绕过这些保护机制。因此,我们仍然需要对内网中的行为进行检测,及时发现已经入侵到内网中的黑客。这就需要用到 IDS(Intrusion Detection System,入侵检测系统)了。那么,IDS 的工作模式有哪些呢?它能够实现哪些功能呢?今天,我们就一起来学习,如何通过 I.原创 2020-08-17 10:55:24 · 8350 阅读 · 0 评论 -
22 | RASP:写规则写得烦了?尝试一下更底层的IDS
在前面的课程中,我们已经介绍了防火墙、WAF 和入侵检测。这些产品都有一个共同的特性,就是基于网络请求或者系统行为对攻击的特征进行检测,然后再采取相应的防控手段。这些安全产品基本都和应用本身解耦。也就是说,基本上我们不需要对应用做任何开发和改动,就能够部署这些安全产品。尽管解耦在部署上能够节省很大的成本,但解耦同样意味着,安全产品和应用本身是通过接口、请求等形式来进行数据交换的。换一句话说,安全产品只能够看到应用输入和输出的数据,并不知道数据在应用内的流动情况。因此,这种工作模式不可避免会产生一定的误判.原创 2020-08-17 10:48:26 · 7832 阅读 · 0 评论 -
23 | SIEM:一个人管理好几个安全工具,如何高效运营?
在前面的课程中,我们介绍了一些常见的安全产品。但实际上,解决公司的安全问题,并不是部署了这些安全产品就万事大吉了。安全防护的过程是一个与黑客持续进行攻防对抗的过程,黑客总是能够发现新的方法,绕过安全产品的防护,实施攻击。如果黑客绕过安全产品,我们应该如何及时发现黑客的攻击呢?具体来说,我们应该如何对黑客的攻击路径和攻击产生的影响进行统计分析?以及在发现黑客的攻击之后,我们要如何提取攻击特征,补充安全产品的检测规则呢?这些都是我们需要持续关注的事情。因此,我们常说“建立一个安全体系很简单,运营好一个安全体.原创 2020-08-17 10:42:40 · 8137 阅读 · 1 评论 -
24 | SDL:怎样才能写出更“安全”的代码?
安全漏洞的源头是开发,只有当开发人员写出了包含安全漏洞的代码,黑客才有可乘之机。因此,如何保障开发写出更“安全”的代码,是安全防护工作中最关键的一环。2004 年,微软提出了 SDL(Security Development Lifecycle,安全开发生命周期)。因为对安全和隐私的考虑贯穿了整个软件的开发进程,SDL 能够帮助开发人员写出更“安全”的代码,在解决安全合规需求的同时,也能减少由安全问题带来的损失。和安全标准一样,SDL 本质上是一个宏观指导性质的框架。但是,它确实成为了很多公司建设安全.原创 2020-08-17 10:27:37 · 7953 阅读 · 0 评论 -
25 | 业务安全体系:对比基础安全,业务安全有哪些不同?
从这一讲开始,我们讨论业务安全。近几年,随着互联网的快速发展,很多公司为了获取用户增长,在业务中投入了大量的资本。向来都是向钱看齐的黑客(在业务安全中,我们称之为黑产),自然就将攻击的重心放到了业务中。业务安全也变得越来越热门,成为各大公司安全投入的重心之一。对比于传统的基础安全,业务安全有哪些特点呢?为什么它能够成为一个独立的领域呢?在业务安全中,我们需要重点关注的防护方法又有哪些呢?以上这些问题,在这个模块中我会详细来讲。今天,我们先从业务安全的特点和防护重点入手,让你对业务安全的体系和框架有一个.原创 2020-08-17 08:41:11 · 9729 阅读 · 0 评论 -
26 | 产品安全方案:如何降低业务对黑灰产的诱惑?
在上一讲中,我们探讨了业务安全和黑产(也叫黑灰产),知道了业务安全的本质就是资源对抗,业务安全的防护手段就是提高黑产的资源成本,并且针对不同的资源类型,我们需要采取不同的方法来进行对抗。在基础安全中,我们提出了“黄金法则”作为总体思路,来对各个防御手段进行梳理。那么,在业务安全中,我们有没有什么方法论可以作为参考呢?这一讲,我们就来聊一聊提高黑产资源成本的方法,以及如何从根本上防御黑产。▌业务安全中的防御框架是什么?在安全标准和框架中讲过,我们可以通过 NIST 的安全框架 IPDRR,在基础安全中.原创 2020-08-16 22:58:00 · 8295 阅读 · 0 评论 -
27 | 风控系统:如何从海量业务数据中,挖掘黑灰产?
在上一讲中,我们讲了如何通过安全的产品方案,提升黑产攻击业务的资源成本,降低应用被攻击的风险。当然,仅靠产品方案是没办法完全抵御黑产的。因为在产品方案中,我们还需要对用户体验进行关注。比如说,为了拦截黑产盗取他人账号登录,或批量登录自有账号的行为,我们的产品方案可能是,通过加入短信验证、人脸验证和滑块验证来提高登录的门槛。当你在登录一款应用的时候,如果需要进行两次甚至是三次的验证操作,那么,这种糟糕的体验感很有可能驱使你放弃使用这款应用。为了解决这个问题,在业务安全中,我们会采取折中的方案:如果识别到.原创 2020-08-16 22:50:09 · 9353 阅读 · 1 评论 -
28 | 机器学习:如何教会机器识别黑灰产?
建立一个成熟的风控系统,你能够快速建立起和黑产进行持续对抗的稳固防线。但是,风控系统和规则引擎仅仅是一个平台和工具。想要真正对黑产进行识别,我们还得依靠规则引擎中运行的规则策略。当然,规则的维护主要是依靠人力来进行的。但是这样的维护方式会有两个弊端:首先,人的工作效率会受各种因素影响,所以对抗的时效性很难保障;其次,规则的维护受到人的主观意识的影响,可能会产生一些“偏见”。对于上述这两个问题,机器学习是一个理想的解决方案。因为,机器学习不仅可以无休止地工作,还会完全依据客观事实产生结果。而且,机器学.原创 2020-08-16 22:39:21 · 8482 阅读 · 1 评论 -
29 | 设备指纹:面对各种虚拟设备,如何进行对抗?
有一句话说“数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已”。这句话在风控系统中同样适用,因为风控系统本质上也是一个大数据分析系统。所以,收集更多的数据是提升风控能力的一项核心工作。随着手机和人的关系越来越紧密,通过手机对用户行为进行追踪和判定的方法,已经成为风控系统中识别黑产的主要手段。设备指纹是用来标识手机或者浏览器的唯一 ID,我们能够通过这个 ID 关联到手机或浏览器相关的全部数据。因此设备指纹是风控系统中最核心的数据来源。那设备指纹是如何对手机进行追踪的?又是如何判定异常.原创 2020-08-16 22:33:54 · 10403 阅读 · 2 评论 -
30 | 安全运营:“黑灰产”打了又来,如何正确处置?
在前面的课程中,我们介绍了 IPDRR 的前三个部分,并且着重讲解了风控系统的框架、算法以及设备指纹的相关技术。学会了这些机制和手段,你已经能够识别出大部分的黑产了。那我们是不是可以直接将识别的结果抛给业务,让业务自行处理呢?在一个专业的业务安全方案中,这当然不可以。因为,识别出黑产仅仅是第一步,采取合适的手段处理黑产,才是业务安全长治久安的根本。那么,针对黑产的处理,我们有三个参照原则:采取适当的拦截策略,防止黑产快速绕过业务安全策略给予一定震慑,防止黑产变本加厉保持情报收集,做好和黑产持续对.原创 2020-08-16 22:25:45 · 8736 阅读 · 0 评论 -
31 | Web安全:如何评估用户数据和资产数据面临的威胁?
“Web 安全”模块已经结束了,今天我会通过一篇串讲,带你回顾这一模块的知识,帮你复习巩固,更好地掌握和应用这些内容。有同学留言说:“老师,讲了这么多漏洞的防护知识,有没有什么好的记忆方法呀?”首先,我们要明确一点,不管学什么知识,想要学好,在前期,一定需要时常复习来加深记忆。在此基础上,我们才能深刻理解和熟练应用这些知识。那你可能要说了,怎么才能“记住”这些知识呢?我这里有一个我自己非常常用的、好的记忆方法,那就是“体系化地记忆”。怎么个体系化呢?说白了,就是每学完一块内容,通过自己的理解把相关的内容原创 2020-08-16 22:19:44 · 7979 阅读 · 0 评论 -
32 | Linux系统和应用安全:如何大范围提高平台安全性?
在上一模块中,我们重点讲解了,在开发过程中经常要接触或使用的平台、工具的安全功能。这些平台和工具包括:Linux 系统、网络、容器、数据库和分布式平台。那通过对这些平台和工具的安全功能分析,相信你已经知道了,应该如何正确配置和使用这些工具,来避免底层应用出现安全隐患,以防影响整个应用的安全性。公司中有很多研发和运维人员,他们都在使用和维护自己的系统和应用,那要怎么保证他们都能够去采用最安全的配置呢?▌重点知识回顾在解决这个问题之前,我们先来回顾一下,Linux 系统、网络、容器、数据库和分布式平台这原创 2020-08-16 22:09:39 · 7852 阅读 · 0 评论 -
33 | 安全防御工具:如何选择和规划公司的安全防御体系?
在前面几个模块中,我们重点讲解了常见的安全防御工具和手段。这些工具和手段包括:安全标准和框架、防火墙、WAF、IDS、RASP、SIEM 和 SDL 等。它们分别从不同的方面,为公司提供了防御攻击和发现漏洞的能力,也是公司安全防御体系的重要组成部分。既然这些工具和手段已经这么成熟了,是不是直接使用它们在公司的环境中“跑一跑”就万事大吉了呢?据我了解,确实有部分公司是这么做的,而且这么做下来之后,还能够通过等保测评。但是,这种做法并不可取。因为安全防御工具只是工具,最终好不好用,还是取决于人。只有对安全.原创 2020-08-16 22:06:32 · 7642 阅读 · 0 评论 -
34 | 数据安全:如何防止内部员工泄露商业机密?
我们先来看一个新闻。2017 年,公安破获了一起涉及 50 亿条个人信息泄露的重大案件。经调查发现,犯罪嫌疑人竟然是京东的一名试用期员工郑某鹏。还有非官方的消息说,这个郑某鹏,先后在亚马逊、新浪微博等知名互联网公司,利用试用期的员工身份,下载用户的隐私信息进行倒卖。如果你稍微关注过这方面的新闻,就会发现,这种事情真的不少。Code42 在 2019 年发布的数据泄露报告称,有 69% 的公司承认员工曾泄露过公司数据。其实,这些数据泄露的行为就是我们要关注的数据安全。从广义上来说,数据安全其实是围绕着数.原创 2020-08-16 21:59:42 · 8916 阅读 · 0 评论 -
35 | 前端安全:如何打造一个可信的前端环境?
前端的安全性一直是我们在考虑安全问题时,没有办法绕过的关键问题。今天,我就来和你聊一聊如何保护前端的安全性。我们先来看一个攻击事件。2017 年,12306 网站被曝出有“买下铺”的功能。我们都有过买票的经历,当我们在 12306 上买卧铺的时候,是没法选择上铺、中铺还是下铺的。但是,有人去分析了 12306 的前端代码,发现里面其实包含了选铺位的功能,只是默认为随机,没有展示出来。所以,有人通过篡改前端代码,就将这个功能开放出来了。一旦黑客能够完全摸清楚应用的前端代码,就能够任意地篡改前端的逻辑,.原创 2020-08-16 21:55:33 · 8487 阅读 · 0 评论 -
01 | 安全的本质:数据被窃取后,你能意识到问题来源吗?
今天是我们安全课程的第一讲,我们不会讲具体的细节内容。我打算先和你聊聊安全本身,以帮你建立整体的大局观。我确信,只要理解了安全的本质,在后续的课程中,你就更容易理解安全的概念和知识,也就能够建立解决安全问题的思维体系。▌安全是什么?首先,我们来看,安全是什么?当你所在的企业内网被入侵,数据被窃取之后,你也许能知道,是某个业务漏洞导致黑客能够进入内网,但你是否意识到,数据安全保护机制上同样产生了问题?类似这种的问题有很多。当我们遇到某一个特定的攻击或者安全问题时,往往看到的都是表象的影响,而能否找到根本原创 2020-08-14 12:40:58 · 8208 阅读 · 1 评论 -
02 | 安全原则:我们应该如何上手解决安全问题?
上一讲,我们一起拆解学习了 CIA 三元组,也就是机密性、完整性和可用性。它们分别代表了数据的“不可见”“不可改”和“可读”。简单来说,以购买极客时间专栏为例,机密性就是未付费用户无法学习这个专栏,完整性就是这个专栏的内容不会变成别的其他方向的内容,可用性就是你作为付费用户,能够随时学习这个专栏。理解了 CIA,上一节最后面试官问的“安全是什么”的问题,你现在一定可以回答出来了。面试官点点头,接着说道:“你觉得该怎么去解决安全问题呢?”毫无疑问,不同的应用、不同的模块会受到不同的安全威胁,当然,我们面.原创 2020-08-14 12:52:28 · 7840 阅读 · 0 评论 -
03 | 密码学基础:如何让你的密码变得“不可见”?
上一讲,我们学习了黄金法则的三部分核心内容:认证、授权、审计。它们描述了用户在使用应用的各个环节,我们需要采取的安全策略。在掌握了黄金法则之后,你就能以在安全发展规划上的宏观能力,赢得面试官的认可。接下来,他想考验一下你对安全具体知识的理解,以此来判断你能否将安全发展落地。于是,他问了一个非常基础的问题:你懂加解密吗?可以说,密码学是“黄金法则”的基础技术支撑。失去了密码学的保护,任何认证、授权、审计机制都是“可笑”的鸡肋。在实际的生活工作中经常会有这样的场景发生:多个用户共用一个 Wi-Fi 来上.原创 2020-08-14 13:01:51 · 7760 阅读 · 1 评论