二、 方案的原则和思路
依据网络安全领域最为流行的4A(认证Authentication、账号Account、授权Authorization、审计Audit)、P2DR模型(策略Policy、保护Protection、监测Detection、反应Response)及ISO等主流标准的要求,并结合赵明Web系统的应用需求,切实保证赵明运维的网站能够从根本上解决黑客攻击防御和事后的审计和追踪问题,并特别强调网站的安全设计和防护原则从天生上就有应对黑客攻击的“免疫力”,所以从五大方面进行考虑:
1. 网络拓扑结构:合理的拓扑结构能够有效地抑制黑客攻击,即便在黑客攻击后也能使得攻击的影响降低到最小程度;
2. 安全原则:用户认证、帐号管理、加密传输等原则的综合部署和使用,能从根本上多层面地增强网站的健壮性,数据的完整性和可靠性,从而保证网络和信息安全;
3. 审计和追踪:强大和适时的审计和追踪,能够使得网站的防御体系能够尽快地从黑客攻击中解脱出来,完成对黑客的追踪,并通过相应手段来增强网站的抗攻击性;
4. 备份和灾难恢复:能够保证在黑客攻击以及自然灾害下,网站系统运维的365*24*7(小时)不间断地业务运行;
5. 自我漏洞挖掘及防护:能够周期性、自发地对Web系统的漏洞进行自我挖掘,并根据挖掘的漏洞通过各种安全机制和补丁等方式进行防护,以有效地避免“零日攻击”等。
根据上述原则,建议从如下10个方面进行方案制定:
1. Web系统用户的身份认证和鉴权机制:
a) 采用用户名+密码验证,确认用户登录身份,并根据数据库中预设的权限,向用户展示相应的视图和表单
b) 对于重要的Web系统应用,需要根据PKI机制,验证用户提供的证书,从而对用户身份认证(服务器对客户端认证),并确保交易的不可抵赖性。证书的提供可以采用两种方式:
i. 文件证书:保存在用户磁盘和文件系统上,有一定的安全风险,但是可以免费
ii. USB设备存储的证书:保存在USB设备上,安全性很高,但是目前使用一般需要对用户收费
2. Web系统数据的加密传输和用户对Web系统服务器的验证
a) 对于使用Web浏览器的网上系统应用,采用SSL+数字证书结合的方式(即HTTPS协议),保证通信数据的加密传输,同时也保证了用户端对服务器端的认证,避免用户被冒充合法网站的“钓鱼网站”欺骗,从而泄露机密信息(用户名和密码等),造成不可挽回的经济损失。
3. 基于用户账号的使用行为的日志记录及其审计
a) 系统服务器侧应根据账号,对用户的使用行为进行详细的日志记录和审计,通过上述因素的日志记录,进行阶段性的审计(时间间隔应该比较小),从而做到发现用户账号的盗用、恶意使用等问题,尽早进行处理
4. 恶意用户流量的检测、过滤及阻断
a) 系统服务器侧应部署IDS入侵检测系统、IPS入侵防护系统、防火墙等设备,或者部署目前高效、流行的UTM(统一威胁管理)设备,对恶意用户采用的各种攻击手段进行检测和防护,重点过滤恶意流量、突发流量等。
5. 对用户的非正常应用请求的过滤和处理
a) 系统的服务器端,尤其是数据库服务器端,应该通过配置和增加对用户非常长应用请求的过滤和处理模块,以避免由于数据库的自身漏洞未及时打上补丁,而遭受目前流行的SQL 注入攻击等。
6. Web系统服务器侧的合理子网划分及流量分割
a) 系统服务器侧包括大量的服务器类型,包括数据库服务器、Web服务器、FTP服务器、邮件服务器等,为了避免由于恶意流量造成的某种服务器崩溃,而引起的攻击后果扩散,并最终导致其他服务器也发生“雪崩效应”,则需要通过子网隔离(比如VLAN划分)、DMZ区域的设定等方式来将这些服务器放置在不同的安全域当中,做到流量和数据的安全隔离,从而将服务器端在遭受攻击后对整个业务系统及其他内网资源和数据造成的影响尽量控制在最低的范围内。
7. Web系统服务器侧的负载均衡及负载保护机制
a) 系统面临着巨大的服务量,服务器端的设备基本上都需要有多台服务器进行业务分担,这样才能提高性能,避免处理瓶颈的出现,因此,需要采用合理的负载均衡和负载保护机制
b) 对各服务器的业务流量进行有效地分担,可按照Round Robin、LRU等方式来进行负载均衡
c) 负载保护机制需要实时地对每台服务器的CPU资源、内存资源等进行评估,如果一旦超过设定的阈值(80%或者以上),将马上进行过载保护,从而保证服务器自身的安全
8. Web系统服务器侧的灾难备份及恢复策略
a) 任何系统都不能说100%的安全,都需要考虑在遭受攻击或者是经受自然灾害后的备份恢复工作,需要着重考虑如下几点:
i. 选择合适的备份策略,做好提前备份,包括全备份、差分备份、增量备份等等
ii. 选择合适的备份介质,包括磁带、光盘、RAID磁盘阵列等
iii. 选择合适的备份地点,包括本地备份、远程备份等等
iv. 选择合适的备份技术,包括NAS、SAN、DAS等等
v. 作好备份的后期维护和安全审计跟踪
9. Web系统服务器的安全管理
a) 系统功能复杂,业务数据敏感,保密级别比较高,并且对不同管理人员的权限、角色要求都不尽相同,为了保证安全管理,避免内部管理中出现安全问题,建议作如下要求:
i. 严格划分管理人员的角色及其对应的权限,避免一权独揽,引起安全隐患;
ii. 作好服务器机房的物理条件管理,避免电子泄露、避免由于静电等引起的故障;
iii. 应作好服务器管理员的帐号/口令管理,要求使用强口令,避免内部人员盗用;
iv. 作好服务器的端口最小化管理,避免内部人员扫描得出服务器的不必要的开放端口及其漏洞,实行内部攻击;
v. 作好服务器系统软件、应用软件的日志管理和补丁管理工作,便于审计和避免由于安全漏洞而遭受到内部人员的攻击;
vi. 根据业务和数据的机密等级需求,严格划分服务器的安全域,避免信息泄露。
10. 网站漏洞自我挖掘及防护:采用漏洞扫描和挖掘设备,对内网各服务器进行阶段性的扫描,并根据扫描所得的风险和漏洞进行及时地修补,以实现该漏洞为黑客使用之前进行自行修复的目的。