写点什么

网络安全及系统安全架构设计

发布于: 2020 年 08 月 26 日

Author:Jessie Yang

Date: 2020/8/26

引言

 

架构师有不同角色,而安全是一个非常专业和重要的领域。专门的安全架构师负责对系统持续的安全风险的检测、分析、加固方案、提前预警。本文对系统常见的安全架构的设计做简单的小结

安全攻击

XSS攻击

跨站点脚本攻击:攻击者在请求中包含恶意的脚本,发给服务器,服务器执行恶意脚本受到攻击。



【方法】用户不能发脚本文件服务器。禁止用户提交脚本(将脚本括号<>消毒去掉)

 

SQL注入





攻击者在请求中包含恶意(如drop table)的SQL命令,导致数据库直接执行恶意SQL。

【方法】不让用户提交SQL。使用SQL预编译,使得SQL被当作SQL入参,而非SQL命令;利用正则表达式过滤等方法防止SQL注入。

CSRF攻击

绕过用户请求,伪造用户请求发送到服务器。





【方法】页面请求访问包含token参数或验证码校验,防止被攻击、爬虫或机器模拟访问。

 

还有:文件上传、路径遍历等安全漏洞攻击。

应用网关

解决方案:

利用网关: 统一在网关中设置filter(如:正则表达式、Token、验证码)统一进行攻击的拦截过滤,做好安全防护。

开源的工具:ModSecurity,Web应用防火墙,可以嵌入到Web应用服务器中或独立的应用启动。

 

信息加密意识

安全的重要性不言而喻,而架构师及软件工程师在系统设计中要有基本的安全防范的意识。

·       虽然任何系统都不可避免可能会有信息泄漏,但也要保障信息不能完整被泄漏。保证日志、数据库中信息,有策略保护,及时泄漏,重要信息也不能被完整获取。

 

加密方法

加密的方法很多。尤其基本的认知,数据库中不能存储密码的明文。

1.  单项散列算法:比如利用MD5做密码加密。单向加密后不能反向得到原始密码。利用加密算法进行加密后字符串比较。这里要注意:

防止有人拿密码明文、密文做映射表,需要在算法中加点“盐”,可以用用户名等参数一起作为被加密的一部分,方式简单被猜出对应的明文。





2.  对称加密



3.  非对称加密





加密和解密的密钥不一样。

公钥加密;私钥解密,拥有私钥的服务器进行解密。

加密是私钥;解密是公钥—— 区块链、电子签名

密码安全管理和加解密服务器架构

将密码的加解密、密钥的服务、存储分开,不同权限的人员管理。

 



反垃圾邮件

处理流程





人工打标签-》分类模型-》算法识别





贝叶斯算法

标注的特征、分类,进行概率计算

 



大致流程:

 

 1. 收集大量的垃圾邮件和非垃圾邮件,建立垃圾邮件集和非垃圾邮件集。

2. 提取邮件主题和邮件体中的独立字符串,例如 ABC32,¥234等作为TOKEN串并统计提取出的TOKEN串出现的次数即字频。按照上述的方法分别处理垃圾邮件集和非垃圾邮件集中的所有邮件。

3. 每一个邮件集对应一个哈希表,hashtable_good对应非垃圾邮件集而hashtable_bad对应垃圾邮件集。表中存储TOKEN串到字频的映射关系。

4. 计算每个哈希表中TOKEN串出现的概率P=(某TOKEN串的字频)/(对应哈希表的长度)。

5. 综合考虑hashtable_good和hashtable_bad,推断出当新来的邮件中出现某个TOKEN串时,该新邮件为垃圾邮件的概率。数学表达式为:

A 事件 ---- 邮件为垃圾邮件;

t1,t2 …….tn 代表 TOKEN 串

则 P ( A|ti )表示在邮件中出现 TOKEN 串 ti 时,该邮件为垃圾邮件的概率。

P1 ( ti ) = ( ti 在 hashtable_good 中的值)

P2 ( ti ) = ( ti 在 hashtable_ bad 中的值)

则 P ( A|ti ) =P2 ( ti ) /[ ( P1 ( ti ) +P2 ( ti ) ] ;

6. 建立新的哈希表hashtable_probability存储TOKEN串ti到P(A|ti)的映射。

7. 至此,垃圾邮件集和非垃圾邮件集的学习过程结束。根据建立的哈希表 hashtable_probability可以估计一封新到的邮件为垃圾邮件的可能性。

 

处理上亿垃圾邮箱的存储技巧——布隆过滤黑名单





内存空间中开辟一个空间,如连续地址的空间16G*8的比特位,全部初始化为0.

每个垃圾邮箱地址加密后存为8个比特位。

布隆过滤器用于记录大数据Key。

金融风险控制

规则引擎:对高风险的规则进行判断。





机器学习的方法:

 



发布于: 2020 年 08 月 26 日阅读数: 240
用户头像

还未添加个人签名 2018.08.21 加入

码过代码、做过产品;擅长码字、演讲、认真做事之人。

评论

发布
暂无评论
网络安全及系统安全架构设计