6

2020攻防演练防守策略

 2 years ago
source link: https://wintrysec.github.io/2021/09/26/%E3%80%903%E3%80%91%E6%94%BB%E9%98%B2%E5%AF%B9%E6%8A%97/%E3%80%907%20%E8%93%9D%E9%98%9F%E3%80%91%E9%98%B2%E5%AE%88%E7%AD%96%E7%95%A5/%E9%98%B2%E5%AE%88%E7%AD%96%E7%95%A5/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

知己知彼,百战不殆

“未知攻,焉知防”,防守方要先学会从攻击者的角度考虑如何攻破一个系统。

攻击者所用的方式大体上就是下边这张思维导图中的方式:

其中弱口令是侵入系统最简单也是最多的一种方式,切勿因其简单就不给予重视。

把简单的事情考虑得很复杂,可以发现新领域;把复杂的现象看得很简单,可以发现新定律。

使用范围最广的就是各种第三方组件和系统的历史漏洞以及Web安全漏洞,防守方主要防御的也是这两种攻击方式。

例如redis未授权访问、源码或敏感文件泄露、WebLogic和Shiro反序列化等高危历史漏洞。

社工是最难防范的,最近B站上了一部电影《我是谁: 没有绝对安全的系统》电影中CLAY上演了一波教科书般的社会工程学渗透,用邮件钓鱼加近源渗透的方法成功侵入了情报局系统。

电影中有句台词 “很多人都尝试黑进情报局,但你躲在自己的电脑前肯定无法做到” ,说明了近源渗透的必要性;

0day包括未公开的漏洞和攻击方法,0Day漏洞本身就是个永恒的问题,安全产品自身也无法避免0Day攻击,即使我们做好了应对前边几种攻击的所有措施还是会被手握0day的大佬轻松打穿,真的是防不胜防。

当然也不能坐以待毙,发现被打进来后要迅速应急响应把危害和损失控制到最小范围,真正的做到可感、可控。

摸清家底,治理先行

下图是一个传统的防守策略

资产梳理

分析了攻击方常用的攻击手段,接下来就是要梳理己方资产了,通常借助Goby等类似工具进行扫描,梳理出自家有哪些Web资产(网站title、子域名)和IP资产(有几个C段、哪些IP开了什么服务)情况,明确需要重点关注的资产,形成一个资产表。

域名 业务系统 中间件 IP PORT 备注 xxx.net 信息管理平台 Apache-Coyote/1.1 666.666.666.111 80

abc.xxx.net 工程管理系统 nginx/1.18.0 666.666.666.123 8080 子域资产

基线加固

对重点系统进行系统基线检查和加固,涉及到Windows和Linux两种主流系统。

设备监控-研判

设备监控和研判也是必不可少的一部分,观察安全设备上的流量信息把攻击特征明显的IP拿出来去微步在线IPIP这样的网站做威胁情报分析,FOFA搜索该IP有没有被记录过资产信息开了哪些服务,大致判断攻击IP是哪种类型的(代理IP?移动wifi?傀儡机?)然后封禁该IP(虽然可以换代理IP,但是封一个少一个)

应急响应

作为一个优秀的小蓝应急响应是基本操作,熟练的取证、清理和业务恢复一气呵成,掌握各种木马的排查和清除方法,审计Web日志和系统日志,找到漏洞并封堵入口点,迅速的做出反应控制危害范围。拔网线是不可能的。

来而不往,非礼也

防守方并不一定是只能被动挨打,当然也可以主动出击。

比如通过部署蜜罐的手段溯源反制,废掉攻击者的工具,提高攻击成本,减少攻击意愿。

部署最后一道预警防线

在内网的必经之路部署一个MySQL、SSH蜜罐,这样万一被打进了内网,攻击者对内网扫描的时候我就能及时的发现,否则被打穿了都没任何察觉岂不是太惨了。

这里用 HFISH: https://github.com/hacklcx/HFish 部署一个低交互的就够了。

但是要注意修改默认配置,防止被攻击方利用默认配置中的key访问日志信息,反日蜜罐

部署高交互蜜罐

部分安全厂商的高交互蜜罐可以绘制攻击者画像,如果没有购买这些蜜罐产品的话用开源的代替也行

T-pothttps://github.com/telekom-security/tpotce

主动出击

从攻击日志中威胁情报分析中疑似傀儡机和攻击者VPS的IP进行反向渗透,看看能不能拿下目标把日志搞下来审计出攻击者登陆IP。

反制案例

MySQL蜜罐获取攻击者微信ID

如何通过一封恶意邮件追踪幕后黑客组织

蓝队防守恶趣味

本地密码抓取的防御方法

1、2012 R2之后的版本,把用户放入 -> “受保护的用户” 的用户组,就不能抓取明文密码和散列值了。

2、安装KB2871997,并禁用Administrator账号(SID为500的账户,防止哈希传递攻击)

Windows Server 2012 之后的版本默认关闭Wdigest,无法从内存中获取明文密码。

2012之前的版本安装了KB2871997,同样无法获取明文密码。

开启和关闭Wdigest的命令

#开启,值为1
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f

#关闭,值为0
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 0 /f

防御mimikatz攻击

mimikatz在抓取明文密码或散列值时,需要Debug权限。

因为mimikatz需要和lsass进程进行交互,没有Debug权限的话mimikatz将不能读取lsass进程。

因此,将拥有Debug权限的本地管理员从Administrators组中删除即可。

废掉攻击者的工具

冰蝎、蚁剑、哥斯拉等Webshell管理工具

CobaltStrike、Metasploit等c2工具

frp、nps、reGeorg、ew、Termite、lcx等通道构建工具

impacket工具包

具体做法:分析工具流量特征,在WAF等防护设备上自定义相关规则


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK