百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

主机被入侵 痕迹排查 主机被入侵 痕迹排查怎么写

lipiwang 2024-10-25 15:48 13 浏览 0 评论

、排查思路

在攻防演练保障期间,一线工程师在实施主机入侵痕迹排查服务时可能面临时间紧、任务急、需要排查的主机数量众多情况。为了确保实施人员在有限的时间范围内,可以高效且保证质量的前提下完成主机入侵痕迹排查工作,本人总结了自己的一些经验,下面的内容特此分享主机入侵痕迹排查服务中重点、关键的排查项,仅作为参考使用。

1.1初步筛选排查资产

一般情况下,客户资产都比较多,想要对所有的资产主机进行入侵痕迹排查基本不太现实,等你全部都排查完了,攻击者该做的事早就做完了,想要的目的也早就达到了。那么针对客户资产量大的情况,我们应该怎么处理?

首先,在排查前,作为项目经理,应该与客户沟通好,取得授权,确认排查范围和排查方案和办法,客户若是没有授意或者同意,那么下面的操作都是违规操作,甚至有的还违法。

取得客户同意后,我们再从资产面临的风险等级、资产的重要程度、攻击者的攻击思路、手法及目标选择倾向几个方面去初步筛选出排查资产。这里建议从以下资产范围选取:

①曾失陷资产:在以前的红蓝对抗、攻防演练、或者真实的黑客攻击事件中被攻陷的主机,曾失陷资产应作为排查的重点对象。

②互联网暴露脆弱资产:从互联网暴露资产中筛选出使用了高危漏洞频发的组件/应用(组件如Weblogic、JBoss、Fastjson、Shiro、Struts2等)。还有一个点需要注意,就是客户是否具有有效的资产管理,是否能够清晰明确识别出哪些资产用了什么组件,如果不能的话,只能通过之前的渗透测试结果来筛选出脆弱资产。

③关键资产:如域控等可以导致大量主机失陷的集权类资产。

1.2确定排查资产

主机入侵痕迹排查工作建议在一周内对数量控制在20台以内的主机进行排查。经过初步筛选的资产数量如果远远大于20台主机,需要从资产里面进行二次筛选,如果存在曾失陷资产,排查主机范围可以定为曾失陷资产;如果不存在曾失陷资产,排查主机范围可以定为脆弱资产,具体可以根据客户自身实际情况调整。

需要注意是,如果排查资产中包含曾失陷资产的话,需要向客户索要历史攻防演练/应急等报告,在排查时需结合历史报告和指导手册内容一起进行排查,需要特别留意历史报告中攻击者的入侵痕迹是否已经完全清理。

1.3入侵痕迹排查

在实际情况下,攻击者在进行攻击时使用的攻击手法、攻击思路、行为等各有差异,无论是考虑实现成本还是效率问题,都难以通过很精细很全面的排查项去实施主机入侵痕迹排查,但是我们可以从攻击中可能会产生的一些比较共性的行为特征、关键的项进行排查。

对于主机的入侵痕迹排查,主要从网络连接、进程信息、后门账号、计划任务、登录日志、自启动项、文件等方面进行排查。比如,如果存在存活后门,主机可能会向C2发起网络连接,因此可以从网络连接排查入手,如果存在异常的网络连接,则必然说明存在恶意的进程正在运行,则可以通过网络连接定位到对应进程,再根据进程定位到恶意文件。如果攻击者企图维持主机控制权限的话,则可能会通过添加后门账号、修改自启动项,或者添加计划任务等方式来维持权限,对应的我们可以通过排查账号、自启动项、计划任务来发现相应的入侵痕迹。

二、排查内容

2.1windows主机

攻击者一般使用 attrib <程序> +s +h 命令隐藏恶意程序,故在排查痕迹前需打开“工具--文件夹选项--查看”。按照下图中的设置,即可显示所有文件。

2.1.1网络连接

排查步骤:

在CMD中执行 netstat -ano 查看目前的网络连接。

这种情况一般都比较正常,只有80和443端口,一般都是正常业务开放端口。

分析方法:

如果网络连接出现以下情况,则当前主机可能已经失陷:

1、主机存在对内网网段大量主机的某些端口(常见如22,445,3389,6379等端口)或者全端口发起网络连接尝试,这种情况一般是当前主机被攻击者当作跳板机对内网实施端口扫描或者口令暴力破解等攻击。

2、主机和外网IP已经建立连接(ESTABLISHED状态)或者尝试建立连接(SYN_SENT状态),可以先查询IP所属地,如果IP为国外IP或者归属各种云厂商,则需要重点关注。进一步可以通过威胁情报(https://x.threatbook.cn/等)查询IP是否已经被标注为恶意IP。

3、如果无法直接从网络连接情况判断是否为异常连接,可以根据网络连接找到对应的进程ID,判断进程是否异常。如果不能从进程判断,可以进一步找到进程对应文件,将对应文件上传至virustotal(https://www.virustotal.com)进行检测。如上面截图中对内网扫描的进程ID是2144,在任务管理器中发现对应的文件是svchost.exe。

上传至virustotal检测的结果为恶意文件。

若在排查网络连接中,任务管理器只能看到有命令行工具(如powershell、cmd)powershell进程与外联IP建立会话,无法看到进程对应的运行参数。此时可借助Process Explorer进一步观察powershell的运行参数。如下在Process Explorer中发现powershell执行了cobalt strike脚本的痕迹。

2.1.2敏感目录

排查步骤:

查看攻击方常喜欢上传的目录是否有可疑文件。

分析方法:

1、各个盘符下的临时目录,如C:\TEMP、C:\Windows\Temp等。

2、%APPDATA%,在文件夹窗口地址栏输入%APPDATA%,回车即可打开当前用户的appdata目录。

如Administrator用户对应的%APPDATA%目录C:\Users\Administrator\AppData\Roaming。可以按照修改日期排序筛选出比较临近时间有变更的文件。

3、浏览器的下载目录

4、用户最近文件%UserProfile%\Recent,如Administrator对应的目录为C:\Users\Administrator\Recent

5、回收站,如C盘下回收站C:\$Recycle.Bin

对于脚本文件可直接查看内容判定是否为恶意,若是遇到exe可执行文件,可将对应文件上传至virustotal(https://www.virustotal.com)进行检测。

2.1.3后门文件

排查步骤:

查看粘滞键exe;

查看注册表中映像的键值。

分析方法:

1、查看粘滞键exe

查看C:\Windows\System32\下的sethc.exe文件的创建、修改时间是否正常,如下图,一般情况下,系统文件的创建时间与修改时间应相同,sethc的创建时间与修改时间不同,可确定sethc已被替换成后门文件。由于攻击者可修改文件时间,上述简单粗暴的判断方式可能不靠谱,可将sethc拷贝出来、上传至VT检测危害。

2、查看注册表中映像的键值

检查注册表“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options”下所有exe项中是否有debugger键,若有debugger键,将其键值对应的程序上传至VT检测。如下图,攻击者利用该映像劫持的攻击者方式,在sethc.exe项中新建debugger键值指向artifact.exe,攻击效果为当连续按5下shift键后,不会执行sethc.exe,而是转而执行劫持后的artifact.exe文件。于是在排查中发现有debugger键值,均可认为指定的文件为后门文件,待上传VT后确认其危害。

这里没有debugger键,下面的图是有的:

2.1.4后门账号

排查步骤:

打开regedit查看注册表中的账号;

查看administrators组中是否存在赋权异常的账号。

分析方法:

查看注册表中HKLM\SAM\SAM\Domains\Account\Users\Names中是否有多余的账号(可询问客户运维人员以确定账号存在的必要性)。正常情况下,上述路径的SAM权限仅system用户可查看,需要给administrator用户授权才能打开完整路径。对SAM右键、给administator用户添加完全控制权限(下图的权限操作方法适用于win7及以上操作系统):

win2003、XP等低版本系统的操作方法请使用下图的流程给administrators组添加权限。

带有$符号的账号特指隐藏账号(如aaaa$),正常业务中不需要创建隐藏账号,可判断带有$符号的均为后门账号。然后在客户运维的协助下排查其他的异常账号。

如下图中,除了aaaa$可直接判断外,root账号为高度关注对象。(注:aaaa$中的键值0x3ea表示该账号与Users表中相应数值的表相对应,在删除账号时需一起删除)

注:异常账号删除后需要将之前授权的administrator移除SAM权限。

查看administrators组中是否存在赋权异常的账号。比如正常情况下guest用户处于禁用状态、普通应用账户(weblogic、apache、mysql)不需要在administrators组中。如下图,执行命令net user guest查看guest账号的信息,如果guest账号被启用,且在管理员组成员中有guest用户,需要询问客户运维人员该guest账户启用的必要性以及加入管理组是否有必要,否则可认为攻击者将系统自带用户guest启用并提权至管理员组后作为后门账号使用。

执行net localgroup Administrators关注管理员组别是否存在异常账号:

2.1.5自启动项

排查步骤:

使用Autoruns工具查看自启动项

查看组策略中的脚本

查看注册表中的脚本、程序等

查看各账号自启目录下的脚本、程序等

查看Windows服务中的可执行文件路径

分析方法:

1、使用Autoruns:

使用工具能较全面地查看系统中的自启动项。在得到客户授权,能够在可能失陷的主机上传排查工具时,可使用Autoruns工具进行详细的自启动项排查。排查中主要关注粉色条目,建议与客户运维人员一同查看,以及时排除业务所需的正常自启项。如下图,在Everything栏中,查看粉色的条目中发现常见的sethc被劫持为cmd,Command Processor键值(默认为空)关联到名为windowsupdate.exe(效果为启动cmd时,被关联的程序会静默运行)。sethc的劫持可确认为入侵痕迹,Command Processor键值的关联程序需要找客户进一步确认是否业务所需,或将windowsupdate.exe上传VT检测。

另外,这个工具很好用 ,特别小,可以直接上传文件到VT进行检测。

2、查看组策略:

在无法使用工具、只能手工排查的情况下,可查看常见的自启项手否有异常文件。打开gpedit.msc--计算机配置/用户配置--Windows设置--脚本,在此处可设置服务器启动/关机或者用户登录/注销时执行的脚本。下图1、2两处的脚本均需要查看是否添加有脚本。

我这里没有脚本。

2.1.6日志

工程师基本都会看日志,windows日志也就那些内容,比较简单,我就不细述,主要写一下几个比较重要的点,基本上就可以排查出是否有异常登录了。

排查步骤:

查看登录日志中暴力破解痕迹;

查看账号管理日志中账号的新增、修改痕迹;

查看远程桌面登录日志中的登录痕迹。

相关推荐

前端入门——css 网格轨道详细介绍

上篇前端入门——cssGrid网格基础知识整体大概介绍了cssgrid的基本概念及使用方法,本文将介绍创建网格容器时会发生什么?以及在网格容器上使用行、列属性如何定位元素。在本文中,将介绍:...

Islands Architecture(孤岛架构)在携程新版首页的实践

一、项目背景2022,携程PC版首页终于迎来了首次改版,完成了用户体验与技术栈的全面升级。作为与用户连接的重要入口,旧版PC首页已经陪伴携程走过了22年,承担着重要使命的同时,也遇到了很多问题:维护/...

HTML中script标签中的那些属性

HTML中的<script>标签详解在HTML中,<script>标签用于包含或引用JavaScript代码,是前端开发中不可或缺的一部分。通过合理使用<scrip...

CSS 中各种居中你真的玩明白了么

页面布局中最常见的需求就是元素或者文字居中了,但是根据场景的不同,居中也有简单到复杂各种不同的实现方式,本篇就带大家一起了解下,各种场景下,该如何使用CSS实现居中前言页面布局中最常见的需求就是元...

CSS样式更改——列表、表格和轮廓

上篇文章主要介绍了CSS样式更改篇中的字体设置Font&边框Border设置,这篇文章分享列表、表格和轮廓,一起来看看吧。1.列表List1).列表的类型<ulstyle='list-...

一文吃透 CSS Flex 布局

原文链接:一文吃透CSSFlex布局教学游戏这里有两个小游戏,可用来练习flex布局。塔防游戏送小青蛙回家Flexbox概述Flexbox布局也叫Flex布局,弹性盒子布局。它决定了...

css实现多行文本的展开收起

背景在我们写需求时可能会遇到类似于这样的多行文本展开与收起的场景:那么,如何通过纯css实现这样的效果呢?实现的难点(1)位于多行文本右下角的展开收起按钮。(2)展开和收起两种状态的切换。(3)文本...

css 垂直居中的几种实现方式

前言设计是带有主观色彩的,同样网页设计中的css一样让人摸不头脑。网上列举的实现方式一大把,或许在这里你都看到过,但既然来到这里我希望这篇能让你看有所收获,毕竟这也是前端面试的基础。实现方式备注:...

WordPress固定链接设置

WordPress设置里的最后一项就是固定链接设置,固定链接设置是决定WordPress文章及静态页面URL的重要步骤,从站点的SEO角度来讲也是。固定链接设置决定网站URL,当页面数少的时候,可以一...

面试发愁!吃透 20 道 CSS 核心题,大厂 Offer 轻松拿

前端小伙伴们,是不是一想到面试里的CSS布局题就发愁?写代码时布局总是对不齐,面试官追问兼容性就卡壳,想跳槽却总被“多列等高”“响应式布局”这些问题难住——别担心!从今天起,咱们每天拆解一...

3种CSS清除浮动的方法

今天这篇文章给大家介绍3种CSS清除浮动的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。首先,这里就不讲为什么我们要清楚浮动,反正不清除浮动事多多。下面我就讲3种常用清除浮动的...

2025 年 CSS 终于要支持强大的自定义函数了?

大家好,很高兴又见面了,我是"高级前端进阶",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发!1.什么是CSS自定义属性CSS自...

css3属性(transform)的一个css3动画小应用

闲言碎语不多讲,咱们说说css3的transform属性:先上效果:效果说明:当鼠标移到a标签的时候,从右上角滑出二维码。实现方法:HTML代码如下:需要说明的一点是,a链接的跳转需要用javasc...

CSS基础知识(七)CSS背景

一、CSS背景属性1.背景颜色(background-color)属性值:transparent(透明的)或color(颜色)2.背景图片(background-image)属性值:none(没有)...

CSS 水平居中方式二

<divid="parent"><!--定义子级元素--><divid="child">居中布局</div>...

取消回复欢迎 发表评论: