HW2021攻防演练经历碎碎念

防御思路梳理

整个HW中,大家的处理流程应该都差不多吧,第一次参与大型攻防演练,简单梳理一下思路备忘:

监控告警-----事件分析-----事件处置------溯源反制

监控告警环节:1、保证监控设备的可用性和有效性;2、做简单识别,并进行上报;3、除了单纯的设备告警,进行大数据数据分析、聚合统计也是很有用的

事件分析环节:1、识别真实攻击,剔除噪音和干扰;2、分析攻击手法、入侵手段、提权C2等。

事件处置环节:1、及时隔离止损,防止攻击扩散;2、根据分析结果,排查影响范围,识别同类攻击。

反制溯源环节:1、打击黑产菠菜等,得分为主;2、溯源攻击者,防守得分。

1、事件分析思路

事件分析就是要弄清楚:谁做了什么事?这个事是正常行为还是攻击行为?攻击是否成功?

1、基本信息:一般事件最先拿到的就是四元组( 源IP地址、目的IP地址、源端口、目的端口)或其中部分信息。即使是其他类型的事件或告警,一般也需要拿到相应信息。

2、分清敌我:从主机层、网络层信息定位到相关人员信息。内网的攻击IP,直接找对应用户或者对应的业务负责人;外网的攻击IP,要确认是否业务关联IP、合作方IP、公司出口IP等。

3、理清事件:如果源头IP能联系到对应人员,直接进行沟通询问,是快速理清事件的方式。如果联系不到人,又是我方可控资产,直接进行快速隔离,上机排查处置。

3、攻击确认:在确认是外部攻击行为后,需要确定攻击是否有效。如果是大量扫描等行为,封禁即可;如果尝试高危漏洞利用,在需要确定对应业务系统是否存在相应漏洞,判断漏洞是否攻击成功。

4、移交处置:确认是有效攻击后,需要对相关来源设备(来自内部的攻击需要,比如中毒机器)或目标设备执行上机应急处置流程。杀毒、网络隔离、日志分析、网络流量分析等等。

2、入侵处置思路

当怀疑某个主机被入侵了,从哪些方面进行排查呢?我想是:【文件--->进程--->内存---流量】的核心思路,前两者都可能被攻击者修改或消除,而内存和网络行为这个具有必然性!!!

应当形成主要攻击场景的排查重点和思路,然后形成自动化脚本、应急处置工具包。

网络层的铁甲束缚

有些防御方案,它防了攻击者,但同时也束缚了自己的手脚

1、HTTPS带来的检测疏漏

在流量中发现攻击,最有效的是WAF和NET APT这类设备,但是他们都无法处理https,如果攻击者攻击这类网站,反而不容易被检测,可能是最大的防御缺陷。如果以后搞建设,一定要建议将证书放在Nginx服务器,后端明文流量转发,这样有利于在其后端部署WAF或其他流量检测设备,否则自己被自己的方案搞死了。

当然,WAF也可以做证书拆卸从而检测HTTPS流量,但是对性能是很大的一个考验。

2、无边界办公和云服务带来的困扰:来源信息的重要性

1、公司用了某大厂的一套“无边界办公”解决方案,最初的目的是为了保证终端接入的安全。如果不安装该软件,设备将无法访问内部网络。用了一段时间后发现其本质是 【杀软+VPN】。HW中看到的很多告警事件,来源IP都是VPN网关,不能直接获取源IP和其对应的用户。必须去查询网络连接日志找出真实源IP,从而找出IP所对应的用户。

2、之前为了防护DDoS,将一部分业务接入云环境,外部流量先通过云环境,再转发到业务地址。然而它的转发没有带X-Forwarded-For字段。无法获悉真实攻击者的地址,也无法执行IP封禁,导致大量告警,增大了人员的处理压力。

3、“核心交换机异常登录事件”:Syslog收集日志时,经过多次转发,最原始参数日志的IP地址丢失导致误判。

4、“IOA服务器扫描事件”:海外IOA通过加速节点,转发到国内,当海外扫描IOA时,看到的攻击IP其实是加速节点的IP,而非原始攻击IP导致误判。差点封禁导致UIOC。

这些事件虽然最后都能分析出来,但是都花费了大量的精力和时间,都充分说明“真实来源IP”在事件分析中的重要性,在安全建设过程中需要注意。为了能够开始进行事件调查分析,打通整个网络请求路径是很有必要的,尤其涉及各种转发,代理的时候。

主机层的检测和绕过

本次HW才接触到HIDS,只能说个大致,如有错误请指出。

接触后,处理了2个问题:

1、hids反弹shell规则的白名单存在问题,可能直接反弹外网的记录都被加白了。

2、通过console 比如bash 执行的可疑命令操作记录功能失效,无任何记录。

1、HIDS和日志采集程序的原理:

1、公司以前的实现方式,通过一个logger的程序,通过命令行实现日志上报,有2个问题:A、上报的命令行会再次触发以前的报警。B、上报程序需要登录后才会执行!时间延迟严重。

2、后续采用HIDS的命令行审计功能,它的基本原理是修改bash程序,让bash程序实现命令历史记录上报。

2、检测混淆加密行为

遇到2个有意思的case:

1、通过漏洞直接执行危险命令(whoami、cat /etc/passwd、ifconfig等)没有被检测出来,反而是反弹shell的base64编码行为被检测到。

2、另外一次检测出webshell,不是因为包含了危险函数,反而是因为这个文件进行了全文Unicode编码。

这个检测思路,虽说简单粗暴,还真有用。

3、内存马的检测和绕过

1、检测的基本思路类似于静态源码扫描,查的是关键函数和关键命令等。绕过思路当然就是尽量避免 start().getInputStream 等关键词的出现,进行一些变形处理。

2、webshell要执行系统命令,必然要调用linux shell,如上所言,原理是替换了shell程序实现审计的。那么我们的绕过思路也就明晰了,常用调用其他不同的shell

Bourne Shell(/usr/bin/sh或/bin/sh)
Bourne Again Shell(/bin/bash)
C Shell(/usr/bin/csh)
K Shell(/usr/bin/ksh)
Shell for Root(/sbin/sh)
......

3、HW中发现的一个问题,现在还没弄明白。webshell调用sh shell执行系统命令,没有被记录。安装厂商的说法,如果/bin/sh是/bin/bash的软链接,应该是可以被记录的,但实际上确实没有被记录。截止写这个文章的时候,还没有弄明白。

钓鱼邮件攻防

1、钓鱼邮件检测规则和绕过

1、梭子鱼沙箱检测,附件压缩包加密码可以绕过梭子鱼的检测,中招的一次攻击就采用这个手法。

2、收件人检测,如果目标收件人中存在一定比例的不存在用户,即可认为是钓鱼邮件,比如有20%不存在。

3、发件人规则,如果之前未见过这个发件人,也可以进行报警。

4、钓鱼邮件、攻击者的思路也可以扩展。先发钓鱼邮件,然后发“反钓鱼”主题的钓鱼邮件。这种可能更容易中招---来自大佬们的思路。

2、想法:造个邮件蜜罐

外部的信息收集,一般难以判断邮箱是否存在,所以这个规则其实是很有用的。作为防守方,可以故意散播一些特定的邮箱地址并且进行记录,一旦收件人中存在这些邮箱地址即可报警。这些邮箱收到的垃圾邮件、钓鱼邮件,还可以作为分析样板进行分析记录。妥妥的一个“邮件蜜罐系统”。

3、二进制的用武之地

这次HW中,chrome的RCE是影响挺大,微信存相同问题,内部通讯工具也存相同问题,这是二进制的天地;钓鱼邮件中附件的分析也需要二进制的功底,光靠在线沙箱是不够的,攻击者也在进步,会有防沙箱,防反汇编的措施出现。可以预见,如果HW持续开展,以后二进制的需求会有比较大的增加。

假如我是攻击者

1、保证自己的安全

之前了解到的案例,和这次演练中的案例,都告诉我们,攻击者需要尽量少地暴露自己的信息

1、不要使用自己的vps、xss平台、dnslog平台、博客服务器去做任何攻击

2、自己的扫描攻击和脚本不要包含自己的ID

3、最好能够在进行攻击之前,使用可靠的社工库查一查自己的信息,做到心里有数

4、最好能利用威胁情报平台,完成一次自己对自己的“溯源”。

2、漏洞发现与漏洞利用的分离

漏洞发现应尽量避免带有攻击性payload,减少探测被发现的可能

1、首先考虑流量分析、组件版本分析、错误信息分析等

2、其次考虑URL类型的探测

3、最后考虑PoC、EXP类型的探测

漏洞利用工具应该具备:

1、代理功能,便于观察攻击请求进行debug;

2、最好有一定的绕waf、换动态代理服务器等隐藏攻击行为的能力

3、图形化操作

4、要能感知到waf拦截行为,封IP行为

5、攻击payload如果能加密进行加密、能对常规payload进行变换的进行变幻

3、加强exp脚本的收集:

1、梳理各个组件的漏洞、最好能明晰版本、利用条件等

4、DNSlog的使用需要改进:

1、我目前使用dnslog的方法是,将目标站点的ip或域名作为了dnslog的子域名。

2、这种方式如果被防守方获取到所有的dns流量,那么成功的攻击行为将被完全暴露。

3、改进方式:使用随机子域名,但是自己要建立 随机串和目标和域名之间的管理关系

5、X-Forwarded-For来源IP伪造

前面讲到了来源IP对于事件分析和防御的重要性,作为攻击者,我们可以尝试利用这一点。比如伪造X-Forwarded-For字段,用于迷惑流量分析和来源检测。

内网看到的请求,多半都是经过多次转发的,而攻击流量最开始就带有一个假的X-Forwardeded-For记录。如果防御方没有认真分析,那么是有可能逃避真实原地址被封禁的。

当然现在攻击队的基础设施也很强大,这个点可能根本用不上。

其他

1、日常运营的重要性

80%的事件,查出来是自己人,如果平常能够进行足够的分析和优化,正式HW中就能降低噪音,减少感染!有条件的话,日常运营搞起来。

2、安全意识教育教什么

HW中有2起啼笑皆非的事:网络安全部的同事给公司员工打电话,发消息,被认为是骗子是攻击者;某监控负责人中招钓鱼邮件。

要的不是告诉他们“你要注意别被骗,别点,别接,别相信”。而是要教“如何识别、如何判断”。但是人都有惰性,你教了对方不一定听,听了不一定定听进去了,这还真是个难事~

3、来点虚的

一个明显的感受,在知道详细原理的情况下,任何的防御都有可能找到缺点。知己知彼,百战不殆,古人诚不欺我!

攻防中的一个悖论:越是大众化的、流行的手法,越容易被检测,避免检测就要有自己独特的方式。但是反过来,越是独特的方式又越容易被定位溯源。

HW2021攻防演练经历碎碎念-见解相关推荐

  1. 参加海峡两岸城市地理信息系统论坛2010 年会(一张图、规划信息化和空间句法的碎碎念)...

    上周末去清华建筑学院开了个会,叫做海峡两岸城市地理信息系统论坛2010 年会,主题很大,但是内容比较集中一些,就是围绕着GIS与城市规划.一天下来听了20个报告,挺佩服主办方的时间控制,这么密集的报告 ...

  2. Jerry的碎碎念:SAPUI5, Angular, React和Vue

    2019独角兽企业重金招聘Python工程师标准>>> 去年我去一个国内客户现场时,曾经和他们IT部门的一位架构师聊到关于在SAP平台上进行UI应用的二次开发时,UI框架是选用UI5 ...

  3. 关于求职简历的碎碎念。

    分享求职简历的几个注意点. 1. 简历模板 经常在网上看到:跪求一个漂亮的简历模板.其实吧,个人感觉简历模板清晰简约就好,没必要追求华丽.包含必要信息,能第一眼看到关键信息才关键. 2. 模块信息 简 ...

  4. 12月碎碎念-随便聊聊这一年

    总第185篇/张俊红 每月一篇的碎碎念又来了,这一篇从2019年写到了2020年.昨天发了一条关于「时间的朋友」的朋友圈,有人在下面评论说,等我发文呢.我这才想起来去年的这个时候有写了一篇关于「时间的 ...

  5. Rust 与服务端编程的碎碎念

    Rust 与服务端编程的碎碎念 https://zhuanlan.zhihu.com/p/30028047 Rust 是 Mozilla 推出的一门系统编程语言,非常看重内存安全,是一门非常优秀的语言 ...

  6. 计算机应用退修后多久知道结果,计算机核心论文投稿的一点碎碎念

    此次小论文能够发表到核心成功,实属不易,经历太多曲折,通过这个过程也成长了很多,觉得有必要记录说一点自己的碎碎念: 投稿期刊:计算机工程与应用 历时:两个半月 期刊:14晋级核心级别 对期刊印象:严格 ...

  7. 数据分析+数据挖掘暑期实习碎碎念

    写在前面 在闺蜜的博客乱写一篇关于最近春招的心得! 先念念叨一点麻痹自我的鸡汤. 鸡汤说:要有最朴素的生活与最遥远的梦想,即使明日天寒地冻,路遥马亡. 鸡汤还说:慢慢走比较快:踏实一点,你想要的岁月都 ...

  8. 计算机核心论文投稿的一点碎碎念

    引 此次小论文能够发表到核心成功,实属不易,经历太多曲折,通过这个过程也成长了很多,觉得有必要记录说一点自己的碎碎念:         投稿期刊:计算机工程与应用         历时:两个半月   ...

  9. 【BUAA_CO_LAB】计组p3p4碎碎念

    文章目录 计组P3&P4碎碎念 前言 正文 初见单周期CPU 具体搭建步骤 算术逻辑运算单元ALU 指令存储器IM 通用寄存器堆GRF Ext扩展部件 数据存储器DM 控制信号生成单元CU N ...

  10. 一个谷粉和3年的Google Reader重度使用者的碎碎念

    2013-03-14 上午看到Andy Rubin辞去Android业务主管职务.由Chrome及应用高级副总裁继任的新闻,还在想这会给Android带来什么,中午刷微博的时候就挨了当头一棒:Goog ...

最新文章

  1. 【转载】Linux Shell-条件测试
  2. android中设置Animation 动画效果
  3. hsv白色h值是多少_使用Global Mapper给建筑轮廓SHP数据赋予高程值
  4. C++——异步操作(std::future、std::async、std::packaged_task、std::promise)
  5. pcb板材的tg是什么_做到这6点,PCB过回焊炉不会出现板弯及板翘!
  6. 【2050 Programming Competition - 2050 一万人码 】非官方部分题解(HDU)
  7. HCIE-Security Day37:理论学习:信息安全防范与趋势
  8. Eclipse使用基础教程
  9. VBS中实现99乘法表的输出
  10. PDF怎样免费转换成word?无须借助软件,网页就能轻松实现。
  11. Udacity数据集
  12. 创业十年的感悟,创业者首先要让自己活下去
  13. 用计算机弹咱们结婚吧乐谱,用计算器弹奏“周杰伦”,这些乐谱也太简单了吧!...
  14. 20210223-21款Mac Pro M1安装ps和pr,个人实践有用,不需要付费,自己踩过的坑
  15. 如何建立简易Rss源
  16. Java——Jsoup方式的IP代理服务器的使用
  17. concurrentHashMap代码走读 chm走读
  18. 集成电容的分析-MOS电容与平板电容
  19. 2017-7-19 《摔跤把!爸爸》
  20. AD 20联合KeyShot实现渲染

热门文章

  1. ACP知识域三---干系人管理
  2. 【产品】蓝绿发布、滚动发布和灰度发布对比
  3. 世界著名的四大检索工具
  4. weex_iOS集成
  5. 1965:【14NOIP普及组】珠心算测验
  6. 红队web打点信息收集
  7. 科罗拉多州立大学计算机科学,2019上海软科世界一流学科排名计算机科学与工程专业排名科罗拉多州立大学排名第401-500...
  8. 正则化及正则化项的理解
  9. 网站一键分享到新浪微博QQ空间腾讯微博
  10. 矩阵代数(四)- 分块矩阵