当前位置: 首页 > news >正文

互联网应用安全

互联网应用安全

  • 1.端口管控
  • 2.Web应用安全
  • 3.系统安全
  • 4.网络安全
  • 5.数据安全
  • 6.业务安全
  • 7.互联网DMZ区安全管控标准

1.端口管控

首先要做的就是端口管控,即在防火墙上严格限制对外开放的端口。原则上DMZ服务器只允许对外开放80、443端口,而且DMZ服务器不允许主动访问外部,访问外部的业务需要一对一开通访问。

有些企业管理员为了方便维护,在防火墙上直接对外开放Telnet、SSH、RDP的端口,这是非常不明智的,只要知道密码,黑客就可以通过这些端口获得交换机/服务器的权限,即使不知道密码,也可以通过暴力猜解密码获得登录凭证。有经验的管理员都知道,只要将SSH对外开放,系统日志就会出现大量的登录失败日志

还有一些FTP、MSSQL、MySQL、Redis、Rynsc、memcached、Elasticsearch、Mongodb等相关应用的端口,也不应该对互联网开放,否则各种自动化的攻击工具或蠕虫也会很快通过这些端口得到相应的权限,甚至直接加密你的数据进行勒索

一般大型企业的互联网出口或者业务系统会比较多,在日常防火墙维护过程中,难免会出现遗漏,所以需要有相应的机制来保障高危端口不对外开放,开放了要及时发现,这就需要端口扫描,常见的工具例如Nmap和Masscan

对于大型企业,建议采用联合方式,例如先用Masscan快速扫描一遍,然后再针对性地用Nmap扫描,以获取更多信息,包括操作系统版本、端口对应的Banner信息等。当扫描程序发现高危端口后,可以实时输出日志给SOC,以便一线人员实时跟进处理。在实际工作中,扫描还需要注意避开业务高峰、调整发包速率参数等,以免引起不必要的麻烦


2.Web应用安全

端口管控工作是基础,做好端口管控工作后,需要将重点放在Web安全上

1、Web应用防火墙

与传统防火墙不同,WAF工作在应用层,因此对Web应用防护具有先天的技术优势。基于对Web应用业务和逻辑的深刻理解,WAF对来自Web应用程序客户端的各类请求进行内容检测和验证,确保其安全性与合法性,对非法的请求予以实时阻断,从而对各类网站站点进行有效防护

WAF产品有基于硬件的,也有基于软件的,还有基于云的:

  1. 硬件WAF一般支持透明桥接模式、旁路模式、反向代理模式等部署方式,而且性能好、支持ByPass等,所以是我们的首选。当然,有些防火墙的IPS模块也具备一定的WAF功能,例如CheckPoint;有些负载均衡设备本身也支持SSL卸载和应用防护,例如F5。在实际的部署过程中,需要考虑在哪一层部署,或者结合各产品自身特性综合性地部署。
  2. 在一些不重要的区域或者基于成本考虑,也可以使用软件WAF,比较著名的有ModSecurity
  3. 有些企业考虑将业务上云,于是出现了基于云的WAF,其本质上也是软件WAF,结合了一些日志分析、机器学习的技术

整体来讲,可以考虑在前端有硬件WAF的情况下,在服务器上启用软件WAF,结合业务场景对特定请求进行重点防护,以做补充。

2、入侵检测/防御系统

WAF更多是基于规则的,有规则就会有绕过的可能。针对这些可能绕过WAF的请求,我们还需要借助入侵检测系统/入侵防御系统(IDS/IPS)类产品对WAF后端的流量进行分析,发现恶意行为

3、漏洞扫描和渗透测试

针对暴露在互联网上的应用,我们自己也要开展定期扫描、内外部渗透测试等工作

建议有条件的企业,对一些企业应用经常出现的漏洞进行针对性的扫描,适当的时候可以结合开源代码定制自己的扫描器,这样的好处是便于内部IPS和WAF识别或加白处理

渗透测试往往包含内部测试和外部测试,内部安全人员对业务理解更深,更容易发现问题。考虑到内部人手、技能、经验等原因,企业一般会采购外部渗透服务,有一些是国家测评中心等国家单位,有些是绿盟、安恒、长亭科技这样的企业


3.系统安全

1、OSSEC

开源的HIDS产品中,OSSEC比较出名。OSSEC是一款开源的基于主机的入侵检测系统,包括日志分析、文件/注册表完整性检测、安全策略监控、Rootkit检测、实时报警、动态响应等功能

2、Sysmon

对于Windows系统,建议使用Sysmon。Sysmon是由Windows Sysinternals出品的Sysinternals系列中的工具,它以系统服务和设备驱动程序的方式安装在系统上,并保持常驻性。Sysmon用来监视和记录系统活动,并记录到Windows事件日志,可以提供有关进程创建、网络连接和文件创建时间更改的详细信息

在大量机器部署的情况下,结合Sysmon+Evtsys收集日志汇总到SOC,定制CASE,也是一个不错的方案


4.网络安全

WebShell通常为了方便都提供反弹shell的功能,即主动外连到特定端口,如果前面我们的防火墙在外连这块控制得不好,就容易出问题。

针对这个隐患,建议在网络上针对主动出站的连接进行记录,与学习到的基线或者自行维护的黑白名单进行对比以发现问题,我们把它称之为“异常流量检测系统”,在DMZ环境下只需关注主动外连的情况,相对简单

在DMZ内网活动的时候,流量不一定会被镜像到,这时候需要借助蜜罐来发现异常。在每个DMZ网段内部署一到两个蜜罐,可以有效发现针对内网的扫描和探测行为


5.数据安全

一个SQL注入语法可能经过各种变形,加之利用服务端和WAF特性进行了绕过,但到了数据库这里,一切都是非常清晰的,数据库审计类产品可以轻松发现一些注入行为

数据库审计类产品有两类,一种是基于proxy或插件模式的;一种是基于网络流量的。

基于proxy好理解,应用先连接proxy,再由proxy连接后端真实数据库,这样所有的SQL请求都会被proxy记录下来;而有些数据库有一些审计插件,例如Mcafee开源的MySQL_Audit插件,只需将对应的so文件复制到plugin_dir目录然后在配置文件里启用即可。但这两个方案都对应用有一定的侵入性

稳妥起见,建议使用基于网络流量的数据库审计类产品,即将应用到DB的流量镜像给设备,由设备再还原出SQL语句。商业的数据库审计产品有imperva、安恒等

一个正常的页面输出,也可能会涉及银行卡号、身份证、手机号等客户资料信息,一般应用需要做一些脱敏处理。在一些特殊情况下可能处理得不够好,这时候就需要有一定的监测机制才能发现这种问题。常规的DLP方案在这里需要经过一定的调整,重点不再是分析HTTP的Request,而是分析服务器的 Response 信息。在Response信息里不仅能发现一些客户资料信息,还能发现一些异常的东西,诸如目录遍历、特定WebShell等的问题。当然有些功能也可以在WAF里实现,WAF也有针对Response的一些检测规则。


6.业务安全

还有一个场景需要提到,就是互联网应用中与业务逻辑相关的安全问题,统称“业务安全”。例如,一个简单的登录页面,可能涉及人机识别、验证码、找回密码功能等,而攻击者可能会利用暴力破解、撞库等方式进行尝试请求;再例如,一个简单的查看个人信息页面,涉及Session或Cookie验证,而攻击者可能会通过修改URL中的ID或者修改本地Cookie来看其他人的信息。还有一些是关于接口的安全问题,例如,某分类信息网站的简历泄露事件,就是攻击者组合了3个不同的接口获取相应信息。

这里的对抗方法,更多从风控角度出发,收集access日志、业务日志进行分析,再结合外部情报(黑白名单库)、机器学习等,是一个非常细分的领域


7.互联网DMZ区安全管控标准

安全管控标准检查项列表
端口管控检测防火墙上是否存在高风险规则
扫描是否覆盖所有互联网网段
扫描是否覆盖所有端口
高危端口报警是否与SOC集成
WAF系统域名或所有Web应用是否全覆盖
WAF策略是否适用、覆盖应用类型
是否开启实时阻断拦截
日志是否与SOC集成
是否有自动化验证(检测系统配置是否正确、策略是否生效、日志是否正常记录等的自动化程序)
自动化验证是否正常触发
SOC事件等级是否正确
签名库是否及时更新
定期检查新上线应用是否启用WAF
IPS系统流量是否全量覆盖
流量是否有监控
策略是否正确
日志是否与SOC集成
是否有自动化验证
自动化验证是否正常触发
SOC事件等级是否正确
签名库是否及时更新
IPS系统是否纳入每日值班检查内容
漏洞扫描与海量过滤扫描是否覆盖所有应用
渗透测试是否覆盖所有应用
外部渗透至少请两家公司进行
应用扫描至少使用两种扫描器
专项漏洞扫描是否有自动化的验证
自动化验证是否每天定时发出
异常管控系统流量是否全覆盖
流量是否有监控
日志是否与SOC集成
是否有自动化验证
自动化验证是否每天定时发出
SOC事件等级是否正确
异常流量系统是否纳人每天值班检查肉容
白名单、黑名单等策略是否正确
蜜罐系统蜜罐日志与SOC集成
是否有自动化验证
自动化验证是否每天定时发出
SOC事件等级是否正确
蜜罐存活性监控
蜜罐是否覆盖所有区域
数据库审计系统数据库流量是否全部覆盖
流量是否有监控
策略是否正确(攻击类和审计类都打开)
日志是否与SOC集成
是否有自动化验证
自动化验证是否每天定时发出
SOC事件等级是否正确
数据库审计系统是否纳入每天值班检查内容
DLP系统流量是否有监控
策略是否正确
流量是否全部覆盖
日志是否与SOC集成
是否有自动化验证
自动化验证是否正常触发
SOC事件等级是否正确

当然,除了上表所提到的技术点之外,还涉及上线流程管控、防分布式拒绝服务攻击(DDoS)等。

常规的上线流程管控包括主机上线前扫描、应用上线前扫描、日志采集、安全防护软件部署、堡垒机纳管等各个环节,建议与ITIL流程结合在一起。而DDoS对抗也是一个很专业的细分领域

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Arthas sysprop(查看和修改JVM的系统属性)
  • 双token无感刷新
  • Linux Vim编辑器常用命令
  • MySQL高阶1890-2020年最后一次登录
  • Python基础知识——字典排序(不断补充)
  • Python实现日志采集功能
  • 【Python 数据分析学习】Matplotlib 的基础和应用
  • Unity3D 游戏数据本地化存储与管理详解
  • 11.1图像的腐蚀和膨胀
  • 【隐私计算】Cheetah安全多方计算协议-阿里安全双子座实验室
  • ls 命令:列出目录
  • 探索自闭症寄宿学校的专属教育模式
  • 相图数据对于纳米材料研究的积极作用
  • 【Redis入门到精通三】Redis核心数据类型(List,Set)详解
  • 解决selenium爬虫被浏览器检测问题
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • 2017 前端面试准备 - 收藏集 - 掘金
  • Debian下无root权限使用Python访问Oracle
  • python3 使用 asyncio 代替线程
  • v-if和v-for连用出现的问题
  • Vue2.x学习三:事件处理生命周期钩子
  • vue的全局变量和全局拦截请求器
  • 爱情 北京女病人
  • 初识 beanstalkd
  • 深度解析利用ES6进行Promise封装总结
  • 深入浅出Node.js
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 云大使推广中的常见热门问题
  • 怎么将电脑中的声音录制成WAV格式
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • # Kafka_深入探秘者(2):kafka 生产者
  • #进阶:轻量级ORM框架Dapper的使用教程与原理详解
  • (¥1011)-(一千零一拾一元整)输出
  • (2024最新)CentOS 7上在线安装MySQL 5.7|喂饭级教程
  • (4)logging(日志模块)
  • (Matlab)使用竞争神经网络实现数据聚类
  • (STM32笔记)九、RCC时钟树与时钟 第一部分
  • (二十六)Java 数据结构
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (删)Java线程同步实现一:synchronzied和wait()/notify()
  • (一)kafka实战——kafka源码编译启动
  • (转)利用ant在Mac 下自动化打包签名Android程序
  • (转)为C# Windows服务添加安装程序
  • .gitignore文件设置了忽略但不生效
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET CORE 3.1 集成JWT鉴权和授权2
  • .net core 6 集成 elasticsearch 并 使用分词器
  • .NET Core 和 .NET Framework 中的 MEF2
  • .Net mvc总结
  • .net 获取url的方法
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .NET 使用 XPath 来读写 XML 文件
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • .net2005怎么读string形的xml,不是xml文件。
  • .NET导入Excel数据