UDN-企业互联网技术人气社区

板块导航

浏览  : 2642
回复  : 0

[实践集] DevOps实践集——应用运维之应用安全

[复制链接]
jingyun1的头像 楼主
运维安全框架:
security_frame.png

安全攻防的两面:攻是点,防是面,所以运维安全需要考虑到安全框架的方方面面,运维安全可以总结为以下三方面:
  • 进不来:从制度、规范、流程、工具等方面来限制等
  • 带不走:找特征,加强监控预警等
  • 用不了:完善加密方法的安全性等
1. 网络层
  • 防火墙
    防火墙(Firewall)是一项协助确保信息安全的设备,会依照特定的规则,允许或是限制传输的数据通过。防火墙可能是硬件设备或是部署在硬件设备上的软件。防火墙最基本的功能就是隔离网络。
    • 网络层防火墙:IP封包过滤器,运行在底层的TCP/IP协议族模型上
    • 应用层防火墙:拦截进出某应用程序的所有数据包,运行在 TCP/IP协议族模型的“应用层”上
    • 数据库防火墙:基于主动防御机制,通过SQL协议分析,实现数据库的访问行为控制、危险操作阻断、可疑行为审计
  • 畅捷通使用的防火墙设备是:Juniper
  • DDoS设备
    DDoS(Distributed Denial of Service)是分布式拒绝服务攻击的英文缩写,它是一种利用多台计算机向指定目标服务器发送攻击数据包,导致目标服务器系统资源或带宽耗尽,从而对正常业务请求出现拒绝服务的攻击行为。常见的DDoS攻击分为如下两类:
    • 协议缺陷型
      利用TCP,DNS等互联网协议的缺陷,向服务器发送无用却必须处理的数据包来抢占服务器系统资源, 从而达到影响正常业务服务的目的。常见的攻击类型包括:SYNFLOOD,ACKFLOOD,DNSFLOOD等。
    • 流量阻塞型
      通过发送大量满负载垃圾数据包到目标服务器,使链路带宽耗尽,从而达到影响正常业务服务的目的。常见的攻击类型包括UDPFLOOD,ICMPFLOOD等
  • 一般会将DDoS设备部署在备用链路上,当出现DDoS攻击时,切换到备用链路上,启用防DDoS设备,对流量进行清理,可供选择的防DDoS设备
    畅捷通使用的DDoS设备:ADS
    另外,可以购买DDoS攻击测试服务,测量线上环境能承受的流量攻击阀值。并且应提前准备DDoS攻击预案并验证。
2. 系统层
  • 基线配置
    系统的版本、补丁、软件包的安装都是需要采用基线控制,一切都需要版本化,防止因为系统软件包差异导致的应用安全问题。系统的其他配置也需要基线化,防止不受控制的变更导致系统安全隐患,如禁用root远程登录等,详细配置请参考:
    安全配置基线整改指导手册
  • 系统监控
    通过Zabbix和ELK等工具,监控系统中的重要文件和指标,如:重要文件包括:/etc/passwd、/etc/sudoers等,重要指标包括:root口令验证失败次数等
  • 系统包维护
    针对系统的软件安装包,都应该采用统一管理,如Linux的源服务器,需要结合软件版本,对系统包进行统一的管理。软件包的升级等也需要经过严格的变更管理流,这样才能保证组成生产环境的各项要素都是可用的,不会因为系统包版本不一致,导致应用运行异常
应用层
  • IPS/WAF
    IPS:入侵预防系统(Intrusion Prevention System),是对防病毒软件和防火墙的补充。入侵预防系统是一部能够监视网络或网络设备的网络数据传输行为的计算机网络安全设备,能够实时的中断、调整或隔离一些不正常或是具有伤害性的网络数据传输行为
    WAF:Web应用防护系统(Web Application Firewall),Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品
  • 内网应用扫描
    在应用发布之前,应该在内网环境(如:限制访问的预发布环境)中部署应用,并进行安全扫描和渗透测试,类似产品如:绿盟
  • 应用框架漏洞预警
    • 在运维的CMDB中记录应用所使用的开发语言、开发框架,并在主流的漏洞平台,如乌云上关注相关工具的安全漏洞,及时预警并修复应用框架漏洞
    • 在开发团队选型开发语言和开发框架或者上线发布前,需要针对开发语言和框架的版本与安全人员确认是否存在已被识别的安全漏洞
  • 应用众测
    应用众测即联系第三方安全平台,进行应用安全测试,充分发挥社区白帽子的群体智慧,能为应用的安全进行比较全面的考验和评估,如:乌云
3. 数据库
  • 数据库基线
    数据库配置需要基线化,从而保证用户权限的一致性
  • 数据库蜜罐
    在数据库中建立一些包含敏感字的表,如admin、password等,往表中灌入假数据,并在表中增加触发器,一旦表被访问则触动报警
4. 监控
网络、系统、应用、数据库构成了运维安全的主体内容,监控则是运维安全可视化的基础,基于可视化的数据才能及时发现安全问题、修复安全问题。
  • 入侵检测(IDS)
    OSSEC是一款开源的入侵检测系统,包括了日志分析,全面检测,rook-kit检测。可以采用客户端/服务器模式来运行。客户机通过客户端程序将数据发回到服务器端进行分析。OSSEC支持跨操作系统,如Windows, Linux, OpenBSD/FreeBSD, 以及 MacOS
  • 应用监控 Zabbix是一款开源监控软件,可以对应用、系统、网络、服务器进行监控,以获取可用性和性能数据。 对重要文件进行监控,当有人对监控文件进行修改时报警,防止攻击者篡改文件内容,如密码文件和sudoers文件
5. 安全框架
security_plan.png

  • 安全编码规范和安全编码检查点
  • 安全配置基线整改指导手册
  • 撞库技术
    撞库:黑客通过收集互联网已泄露的用户和密码信息,生成对应的字典表,尝试批量登录其他网站后,得到一系列可以登录的用户。 互联网中存在很多公开的密码库、弱口令库等,使用撞库技术,可以发现用户的危险密码,及时提醒强化密码安全级别。
  • 漏洞修复方案
    OpenSSL “心脏滴血”漏洞修复方案
    漏洞描述 :
  • OpenSSL软件存在“心脏出血”漏洞,该漏洞使攻击者能够从内存中读取多达64 KB的数据,造成信息泄露。
  • 漏洞危害:
  • 可被用来获取敏感数据,包括会话Session、cookie、账号密码等。
  • 修复方案:
  • 以下为各系统的修复方案供您参考:
  • 第一步:
  • Debian/Ubuntu:
  • # apt-get update!
  • # apt-get install openssl libssl1.0.0
  • CentOS:
  • # yum update openssl
  • Linux及其他系统请手工将OpenSSL升级至1.0.1g版本
  • 第二步:
  • 修复完毕后,请重启WEB服务,Apache/Nginx/Httpd的重启方式分别如下:
  • # /etc/init.d/apache2 restart
  • # /etc/init.d/ngnix restart
  • # /etc/init.d/httpd restart
  • 此外还需要重启其他与OpenSSL相关的服务。(可通过 lsof | grep libssl | awk '{print $1}'| sort | uniq 查看与OpenSSL库相关的服务)。
想了解更多运维和DevOps的资讯和实践,关注公众号

相关帖子

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们
联系我们
  • 电话:010-86393388
  • 邮件:udn@yonyou.com
  • 地址:北京市海淀区北清路68号
移动客户端下载
关注我们
  • 微信公众号:yonyouudn
  • 扫描右侧二维码关注我们
  • 专注企业互联网的技术社区
版权所有:用友网络科技股份有限公司82041 京ICP备05007539号-11 京公网网备安1101080209224 Powered by Discuz!
快速回复 返回列表 返回顶部