信息系统安全技术方案

208 阅读4分钟

本文探讨了通用的信息系统安全和相关技术方案,应当包括以下板块和内容

概念、构想和基础安全

  • 安全过程、纵深防御、平衡和妥协,模块化安全等基本安全概念和理念

  • 信息安全教育,培训,学习,意识和习惯

针对使用者,开发者,管理和运维人员。

  • 系统和数据的安全规划和分级

系统、网络、应用和业务拓扑规划,安全边界划分,信息资产,关键敏感信息定义和识别

  • 威胁和风险建模,包括:

STRIDE威胁建模分析(伪装、篡改、抵赖、信息泄露、拒绝服务、权限提升);DREAD风险分析(泄露危害、可重复性、技术要求、影响范围、可发现性); 威胁抵御、弱化和消除实现或技术方案。

  • 安全管理规范

组织机构,人员和角色定义,职责和权限划分、标准操作程序...

  • 法律和政策合规

涉及的安全要求、安全标准、技术规范等等...

  • 安全监控和审计

系统、网络、应用和数据的变更操作记录和运行日志记录,日志归集,归档和分析

  • 应急响应和恢复

安装和部署文档,数据和配置备份,应急响应预案,恢复操作和检查流程

  • 常用安全原则

纵深防御;默认安全;最小系统;数据和代码分离;不信任机制;降低可预测性;攻击者思维...

  • 信息和数据安全需要综合考虑其可用性、机密性、完整性、可验证和不可否认性

系统和网络

  • 设备和物理安全
  • 系统加固和最佳实践
  • 默认安全,最小系统和最小权限
  • 账号分配、授权和访问控制
  • 定期扫描、评估和维护(系统监控、漏洞扫描/修复和安全升级)
  • 支撑软件本身的安全最佳实践(数据库系统、中间件、开发平台和框架)
  • 网络配置和访问安全(设置端口访问,防火墙策略,上网设置等)

用户和客户端安全

  • 用户身份认证技术过程安全
  • 访问控制安全(Token安全、访问控制)
  • 验证码,有必要的二次认证和硬件认证
  • 用户账号使用策略(登录次数限制、账号复杂度、过期和更新...)
  • 客户端代码和内容安全(XSS、CSRF、钓鱼/视觉欺骗...)
  • 浏览器版本和更新,安全策略和设置

应用和数据

  • 安全设计和实现
  • 代码安全规范和最佳实践
  • 源代码审核和测试
  • 合理的设置跨域和同源策略
  • 合理的控制响应到前端的错误和操作信息
  • 接口访问控制(REST接口和模块、Token管理和验证..)
  • 应用部署安全(区分环境,部署环境、部署和运行的账号)
  • 应用配置和启动安全(配置信息、环境变量、密钥管理..)
  • 数据存储安全(关键敏感信息的加密和解密,文件和数据完整性检查)
  • 数据传输安全(HTTPS,数据传输加密和验证,响应内容限制)
  • 攻击防护(XSS、CSRF等Web攻击、DOS、中间人、重放、暴力破解、收集分析、SQL注入、文件上传、木马、蠕虫....)

常见攻击和应对方式

下面列举了网络和系统安全中,常见攻击方式和应对的技术方案:

攻击方式应对和解决方案
社会工程安全意识,安全教育,一人一号,一站一密,定期改密
信息收集网络访问控制,最小系统,最小权限,响应/错误信息控制
XSS浏览器安全策略和配置,前后端分离,输入检查,代码和配置安全
CSRF验证码,Referer,请求Token,安全配置,输入检查
视觉欺骗安全意识,客户端策略,安全配置,客户端升级
SQL注入预编译语句和绑定参数,数据类型和内容检查
密码泄露和破解一站一密,密码强度,密码策略,数据摘要,加密,加盐...
认证破解认证过程随机信息,认证过程时间控制,多因子,硬件认证,Token有效期,Token验证
信息泄露数据加密和验证,访问控制
权限提升最小权限,独立账号,服务账号,安全配置,网络和端口限制
文件上传权限控制,类型检查,文件改名,独立域名,Web服务配置
DOS流量限制,请求限制