网络安全对抗中蓝方防护技巧秘籍

阅读量529118

|评论7

|

发布时间 : 2020-08-18 10:00:29

 

护网行动,攻击方的专业性越来越高,ATT&CK攻击手段覆盖率也越来越高。这对于防守方提出了更高的要求,护网行动对甲方是一个双刃剑,既极大地推动了公司的信息安全重视度和投入力量,但同时对甲方人员的素质要求有了很大提升,被攻破,轻则批评通报,重则乌纱帽不保;关于蓝方防守的文章已经很多了,作为参与了2年护网的甲方,总结了一些防御的基本要素,简单明了,抛砖引玉,给大家参考。

 

一:护网设备套餐

在护网前,各种安全公司都会推销花样很多的护网套餐,如果不差钱的主当然是多多益善,但是相当多的企业估计也没那么土豪,所以从自身条件出发选择一个合适的护网套餐,必须的套餐包括:防火墙+WAF+蜜罐+威胁监测系统(流量分析回溯或态势感知类)+安全值守(一个人的信息安全部),这个我认为是所有企业必须上的;那么豪华套餐,就包括防火墙+WAF+蜜罐+威胁监测系统(流量分析回溯或态势感知类)+威胁情报+ 主机HIDS +安全服务(渗透测试、安全监控组、分析组、处置组、报告总结组)等。各个企业可以根据自己情况,有针对性的上一些设备,这些设备和服务,不只是为了护网临阵磨枪,而是真的是要常态化运营。

虽然有了这些设备,还是万里长征走完第一步,很多企业啥设备都上,用简单的产品堆叠,最终效果不好,影响了老板对信息安全的看法,会认为信息安全团队能力不行,所以有了设备,还需要响应的策略、配置和服务进行运营好。

 

二:拦截策略优化

对安全设备的策略优化,是一个很细且长期的过程,一般安全设备商,他们的kpi是卖设备,让设备去上线验收,而甲方的kpi是要防止信息安全事件的发生,所以这就是一个矛盾,除非特别有钱的甲方,常驻一个安全团队来进行运营,一般很多公司,都是靠甲方自己去做安全策略的优化,下面我们分这几个维度来分享一下几个经验技巧:

  1. 拦截事件分类
  2. 防火墙拦截策略
  3. Waf拦截策略
  4. 流量监控类策略

拦截事件分类这块,我们一定要有这么三类:阻止会话、阻止会话并短暂封堵IP、阻止会话并长期封堵IP;防火墙是边界全部防护,waf则是针对具体每个站点来设置策略,为了误报,设备上线时候,乙方都推荐不会用封堵类策略,但是在实战场景是一定要有封堵类的策略的,因为在护网中,红方高手很多,而且可能有很多我们不知道的神兵利器,我们的设备有可能能够防住他一招两式,但是没法保证说对方所有绝招能够拦截,所以我们在策略上也要进行封堵,发现敌人破绽就封堵ip立马让其下线,敌人要继续攻击就得换个ip来,这样抬高了攻击成本。

那么问题来了,如何封堵ip并不产生误报了?封堵ip如果是靠人工一个一个判断再操作也是不可取的,所以一定要进行策略优化,自动进行封堵操作。如何自动化封堵,我们将下一个文章详细介绍。

2.1 防火墙拦截策略

首先在防火墙上,对来自于互联网的以下端口拦截并永久封堵(或长期封堵ip)的策略

端口 策略 封堵
445 拦截 永久封堵
3389 拦截 永久封堵
1433 拦截 永久封堵
6379 拦截 永久封堵
2181 拦截 永久封堵
11211 拦截 永久封堵
27017 拦截 永久封堵
50070 拦截 永久封堵
11211 拦截 永久封堵
5900 拦截 永久封堵

以上为高危端口包括远程桌面、VNC、常见数据库服务等端口,以上是攻方必攻之地,对于这样的端口,一定要封而且要封堵来源IP。

对于数据中心外联互联网,一定要采取限制策略,禁止外联互联网,对于很多企业来说,由于历史原因,可能直接放通了互联网的对外访问,那么就要仔细梳理,哪些是必要的访问,要采用白名单方式。

服务器外访,有个攻方常用的攻击方式,就是dns回显式注入,那么就将dnslog.cn等域名加入拦截和监控。

2.2 WAF拦截策略

WAF在使用中最大的问题也就是误报与漏报,同时,waf绕过是红方必然要求的一个技能,所以在实战中,waf是必然会被绕过,但是不代表waf策略就不需要优化,那么waf策略优化可以有这么几点:

2.2.1 user-agent防止扫描器

红方在踩点过程中,必然要用扫描器,连接高危端口的扫描器方式在上面的防火墙策略已经拦截,那么就开始用web应用扫描器,常见的扫描器user-agent如下,策略都是永久封堵。

类似如上user-agent包含上述关键字的,都将拦截并封堵源ip,在这些user-agent中,有一个非常重要的user-agent为python,这个对于很多扫描甚至是poc都是用python开发,所以来接这个很有必要。

2.2.2 url参数中防止高危POC攻击

很多高危漏洞一出来,针对该漏洞的poc扫描就非常多,针对这些poc的扫描攻击,可以建立一个url列表来拦截,waf本身策略更新也有这方面的配置,可以拦截,但是由于waf策略本身是需要有通用性,他会将策略做的更严格,我们自定义策略可以更宽松,比如前段时间F5的远程代码执行漏洞爆发 (CVE-2020-5902) ,那么我们已经确定没有使用F5,或者F5不会暴露在公网,那么我们可以将url关键字如下进行拦截,发现即封堵。

/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp

常见的poc攻击url特征清单如下,以下基本上发现为攻方必然扫描的url,当然有一些需要根据企业情况分析,比如我们企业没有使用php作为开发语言,那么大量php的漏洞可以直接拦截并封堵:

url特征
/phpmyadmin
/wls-wsat/CoordinatorPortType
/_async/AsyncResponseService
/_async/AsyncResponseServiceSoap12
uddiexplorer/SearchPublicRegistries.jsp
/_async/
bea_wls_deployment_internal
NCFindWeb?service=IPrealertConfigService&filename
action=nc.ui.iufo.release.InfoReleaseAction&method=createBBSRelease&TreeSelectedID=&TableSelectedID=
/uapws/service
.svn/format
WEB-INF/web.xml
/cgi-bin/libagent.cgi
/config.php
fckeditor/editor/filemanager/connectors
/FCKeditor/editor/filemanager/connectors/asp/connector.asp
/FCKeditor/editor/filemanager/browser/default/browser.html
fckeditor/editor/filemanager/connectors/test.html
/secure/ContactAdministrators!default.jspa
/phpinfo.php
/ispirit/interface/gateway.php
/weaver/bsh.servlet.BshServlet
/wwwroot.rar
/console/
/wls-wsat
/solr/admin/cores?wt=json
/install.txt
/install.php
/plugins/weathermap/editor.php
/?q=node&destination=node
/hedwig.cgi
/device.rsp?cmd=list&opt=user
/node/?_format=hal_json
/_users/org.couchdb
/mailsms/s?dumpConfig=%2F&func=ADMIN%3AappState
mailsms/s?func=ADMIN:appState&dumpConfig=/
/plus/download.php
/druid/index.html
org.apache.dubbo
/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp

http请求中高危特征值字段

还有一类poc,是通过http请求中包含恶意代码来执行的,比如struts2漏洞,比如fastjson漏洞,所以也需要对类似特征值进行防范,比如我们用部分包含特征样例如下:

part=”com.sun.xml.internal.ws.encoding.xml.XMLMessage$XmlDataSource”,part=”java.lang.ProcessBuilder”,part=”command”
part=”getRuntime”,part=”exec”,part=”java.lang.Runtime”
part=”type=java.net.InetSocketAddress”
part=”dataSourceName=rmi”
part=”#ognlUtil=#container.getInstance(@com.opensymphony.xwork2″
part=”.OgnlContext”,part=”DEFAULT_MEMBER_ACCESS”

2.2.3信息泄露类的扫描

对于部分扫描,在很多waf产品策略中,可能将其列为低危,或者仅仅拦截而不封堵

那么我们应该自定义一些信息泄露的url,直接拦截并封堵,样例如下:

/configuration/config.php
/.bash_history
/.git/config
/.htpasswd
/admin.rar
/admin.sql
/backup.gz
/backup.rar
/backup.sh
/backup.sql
/backup.zip
/database.rar
/database.sql
/jmx-console/
/resin-admin/
/shell.asp

以上策略都是拦截并封堵ip,这个在我们实战中很有效,基本上能够封堵大部分的扫描,如果能够将扫描拦截住,那么就将大部分的低层次的攻击给拦截了。

2.2.4流量监控类策略

上面也说到了流量监控设备如流量分析回溯、态势感知、威胁检测系统,基本上还是一个必需品,这些产品主要是流量镜像方式,那么他们自带了一些特征库,可以监测到经过了安全设备之后还遗存的攻击,所以上面的所有特征库,依然适用于流量监控设备,当流量监控设备上设置了如上告警特征,依然还存在,那么就要反过来查查防火墙和waf的配置,是不是策略没配置对,还是说站点没配置全等等。

 

三:日志统一收集并自动化处置

推荐使用日志收集系统来实现防火墙、waf、蜜罐等统一的日志收集和分析,并将攻击ip进行统一呈现,我们已经使用了graylog来做这个事情,详细可见我的另外一个文章《利用graylog收集各类安全设备日志实现大屏展示》,同时将攻击ip统一呈现还有一个好处,可以实现自动化的永久封堵,我们是通过脚本将攻击ip入库,然后脚本调用防火墙api,每5分钟实施黑名单永久封堵。

这样的好处是显而易见的,攻击者在没有摸清你的家底之前,只有通过不断的探测来摸底,但是探测过程中被你不断的封堵ip,那么他就知道碰到行家了,按照攻击队找软柿子捏的惯例,他们是不会再一个价值不高的目标花费太大的时间和精力,这个对于勒索、黑产团队也同样适用,黑产团队也是广撒网的方式来攻击,比如攻击是有成本的,只有当安全达到一定基线,那么就能够减少很多不应该的信息安全事件。

如上事情优化完成之后,就进入了安全监控、分析阶段,这个时候需要专家值守,通过全量日志分析系统,提升安全分析效率,输入第三方护网情报、自己的护网客户发现的问题,及时共享,联动处置。

如上为蓝方护网期间经验总结,其实不只是护网期间,作为常态化安全运营,均需要上述的一些基本优化动作,做完上述动作,基本上护网可以达到70%的不出事情,剩下的30%,一个是对手太强大,0day层出不穷,另外就是我们的应用开发,包括弱口令、运维漏洞、钓鱼邮件等依然存在,这些漏洞的解决,也不是一朝一夕,也是需要长期的过程。

2020年8月16日晚,写于护网前一天。

 

本文由熊暾原创发布

转载,请参考转载声明,注明出处: https://www.anquanke.com/post/id/214329

安全KER - 有思想的安全新媒体

分享到:微信
+121赞
收藏
熊暾
分享到:微信

发表评论

Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全KER All Rights Reserved 京ICP备08010314号-66