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

Windows应急响蓝安服面试

Windows应急响应

蓝队溯源流程

学习Windows应急首先要站在攻击者的角度去学习一些权限维持和权限提升的方法.,文章中的方法其实和内网攻防笔记有类似l红队教你怎么利用 蓝队教你怎么排查 攻防一体,应急响应排查这些项目就可以

在这里插入图片描述

端口/服务/进程/后门文件都是为了权限维持,得到shell的方式就是传入文件然后CS MSF远控

  • 可疑账号/新增账号/克隆账号(利用注册表普通命令不行)
  • 异常端口/进程 (端口3389 22 进程或许有进程迁移)
  • 启动项目/计划任务/服务自启动
  • 日志 用户登陆时间
  • 系统相关信息/补丁/目录
  • 工具排查

排查可以是工具可以是手工,工具蓝队工具和D盾都是可以整体看系统全局

lusrmgr.msc  bet user  // 查看账户netstat -ano  // 查看端口对应PID情况wmic process get name.executablepath,processid|findstr 212 // 查询指定PID路径地址eventvwr.msc  // 查看日志

在这里插入图片描述

如查询主机所有开机自启利用工具包内置的Autoruns即可查全局

在这里插入图片描述

Windows权限维持

隐藏方法

隐藏文件

命令隐藏

常规的属性隐藏很轻易就可以看到,红队上传文件后使用该命令隐藏文件属性,同样我们可以利用命令还原

attrib +A +R +S +H saber.txt  // 隐藏 saber.txt

在这里插入图片描述

查杀方式

撤销 attrib -A -R -S -H // 在怀疑被上传文件被隐藏文件的目录下执行此文件就行
驱动机隐藏

驱动隐藏可以根据一些软件进行实现 Easy File Locker

// 下载地址http://dx2.anxz.com/soft/E/EasyFileLockerxz.zip

在这里插入图片描述

取消勾选各类属性

在这里插入图片描述

查杀方式

排查C盘路径如果出现以下文件说明主机受到驱动机隐藏

c:\windows\xlkfs.dat
c:\windows\xlkfs .dl1
C:\windows\xlkfs.ini
c:\windows\system32\driversxlkfs.sys

在这里插入图片描述

找到相关驱动机服务停止,并删除残留在C盘中的驱动机文件,后重启系统

sc qc xlkfs // 查看相关服务 net stop xlkfs // 停止服务sc delete xlkfs  // 删除服务

隐藏账户

D盾查杀

D盾检查隐藏账户并删除,并且存在很多功能查看端口外联还有进程迁移的情况普通的命令是无法查询到的注册表可以查到

在这里插入图片描述

进程迁移

一个端口只能绑定一个进程, 但是一个进程可以多次消耗端口进行绑定

在这里插入图片描述

CS MSF 远控木马工具得到权限后,可将原始的进程迁移到安全的进程中实现隐藏的效果,实现了文件权限维持,提高隐蔽性实现持久化,一般只学习MSF会话注入 CS注入

// 查看进程,如果一个进程PID存在有两个程序名很可能是进程迁移 tasklist     // 可以实现内网横向

在这里插入图片描述

木马进程200迁移到正常程序100上,作为防守方排查看到正常程序就忽略了木马

木马      进程PID 200   qq.exe   进程PID 100migrate 999 // MSF进程迁移命令将当前恶意进程(payload)迁移到另一个进程中,以提高持久性和隐蔽性

查杀方式

进程注入在内存列表中肯定会多出一块文件地址,找到多出的文件地址提取字符串在本地查看就会出现实际外联的IP+端口

在这里插入图片描述

如正常排查了所有进程后仍无法找到那么肯定是迁移到了系统进程,使用火绒剑监控对可疑进程实施监控进程树,可疑进程监测就完事

后门方法

注册表自启动

注册表键值

因为红队会修改注册表自启动的程序替换为木马,实现开机自启动,下面是常用的注册表自启动键

在这里插入图片描述

无文件注册表后门

cs可以创建powershell无文件,CS端创建注册表

在这里插入图片描述

服务自启动

得到权限后创建服务路径为木马程序设置自动启动,每次开机就会上线

在这里插入图片描述

在这里插入图片描述

组策略自启动

打开组策略面板设置木马文件路径,达到开机自启权限维持效果

gpedit

在这里插入图片描述

计划任务自启动

计划任务

启动项自启动

探测隐藏后门

在网站庞大的代码量面前工具也可能存在Webshell绕过的情况。另外,像暗链、网页劫持、页面跳转等常见的黑帽SEO手法,也很难通过手动检测或工具检测全部识别出来,最好的方式就是做文件完整性验证。通过与原始代码对比,可以快速发现文件是否被篡改以及被篡改的位置。当然,第一个前提是,你所在的团队已具备代码版本管理的能力

**webshell**查杀

D盾_Web查杀:http://www.d99net.net/index.asp

河马webshell查杀:http://www.shellpub.com

深信服Webshell网站后门检测工具:http://edr.sangfor.com.cn/backdoor_detection.html

文件**MD5**校验

将网站所有文件,计算一次hash值保存,当出现应急情况时,重新计算一次hash值,并与上次保存的hash值进行对比,从而输出新创建的、修改过及删除的文件列表,二次计算都必须使用相同的校验算法,如果二者前后hash值相同则认为文件是正确的,如果两个特征值不同,则认为下载到exe文件是被篡改过的

def md5sum(file):m=hashlib.md5()if os.path.isfile(file):f=open(file,'rb')for line in f:m.update(line)f.closeelse:m.update(file)return (m.hexdigest())

diff命令

linux使用此命令,比较两个文本文件的差异

如果服务器中存在隐藏的后门,需要进一步的排查和清除,以保障服务器的安全。可以采用以下方法进行探测和清除:

  1. 检查文件完整性:使用md5sum命令计算服务器上所有文件的哈希值,并将结果与之前保存的哈希值进行对比。如果有文件的哈希值发生了变化,则可能存在篡改,需要进一步排查。
  2. 查看日志:检查服务器日志文件,查看是否有可疑的登录信息或异常操作。可以使用tail命令实时查看日志,或者使用grep命令查找特定的关键字。

使用diff命令进行文件校验,判断文件是否被篡改

diff -rA file1 file2

-A选项用于比较所有行

file1.txt file2.txt
1       file1.txt
2       file2.txt
3
4       # 此行为示例文本,非原始文本
5       # 如果存在此行,则文件可能被篡改
6
7       # 原始文本内容
8       content1
9       content2
10       # ...
11

如果存在差异行,则说明文件被篡改过

远程防御

通过设置防火墙规则、更新补丁、使用加密传输等手段来保护服务器免受攻击。同时,定期对系统进行漏洞扫描和渗透测试,及时发现并修复漏洞

版本控制工具

重新将代码上传至git,打开项目,在历史提交版本里面,查看文件更改内容,很容易就可以发现代码被篡改的地方了

在这里插入图片描述

文件对比工具

使用软件Beyond Compare对两个文件夹进行差异对比,查看是否篡改

CS MSF远控应急

在这里插入图片描述

面试回答

远控工具必定有外联IP+端口查看系统对应进程,进程PID找到CS告警文件,找到上传路径,如果隐藏利用手工结合工具找到 后续排查存在权限维持的点 服务/启动项/注册表/计划任务/组策略,删除对应文件

红队修改心跳包为0/1s 是无法看到外联端口,借助工具火绒剑时时监测

MSF处理也是这样找外联进程确定文件位置排查启动项,包括蠕虫 挖矿只要涉及需要运行的项目就肯定有进程,根据进程找文件…通用方案)

netstat -ano 

在这里插入图片描述

命令找到外联进程后杀死这个进程,木马上传肯定会进行权限维持操作, 可能会隐藏文件可能是实现自启动根据外联进程的PID文件地址,进行查找对应的项目进行应急.找到删除就可以,服务自启动就是删除服务

内存马应急

在这里插入图片描述

暴力破解

RDP

  • 排查windows日志确认攻击
  • 禁止3389出网
  • 设置连接IP白名单

日志分析

01-windows日志分析.pdf

windows日志分析

Windows系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹,主要有此三类日志

  • 应用程序日志
  • 系统日志
  • 安全日志
eventvwr.msc  // 命令查看或手动搜索事件日志文

在这里插入图片描述

应用程序日志

包含由应用程序或系统程序记录的事件,主要记录程序运行方面的事件,例如数据库程序可以在应用程序日志中记录文件错误,如果某个应用程序出现崩溃情况,那么我们可以从程序事件日志中找到相应的记录

系统日志

记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等

安全日志

记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。安全日志也是调查取证中最常用到的日志。默认设置下,安全性日志是关闭的,管理员可以使用组策略来启动安全日志

分析事件ID

windows事件日志分,不同的事件ID对应了不同意义

在这里插入图片描述

在这里插入图片描述

筛选日志功能对3个日志的事件ID进行筛选,比如暴力破解就可以筛选事件ID4625

在这里插入图片描述

登录成功类型方式

每个成功登录的事件都会标记一个登录类型,不同登录类型代表不同的方式:

在这里插入图片描述

日志分析工具

Log Parser分析基于文本的日志文件、XML 文件、CSV(逗号分隔符)文件,以及操作系统的事件日志,

可以像使用 SQL 语句一样查询分析这些数据

在这里插入图片描述

windows日志快速分析小工具

在这里插入图片描述

Web日志分析

Web访问日志记录了Web服务器接收处理请求及运行时错误等各种原始信息

分析后可以帮助我们快速定位攻击者还原攻击路径,常见两个思路

  • 确定入侵的时间范围,以此为线索,查找这个时间范围内可疑的日志,进一步排查,最终确定攻击者,还原攻击过程
  • 攻击者在入侵网站后,通常会留下后门维持权限,以方便再次访问,我们可以找到该文件,并以此为线索来展开分析

日志统计分析技巧

统计IP统计网段统计域名统计流量

病毒处理方案

勒索病毒

通过勒索病毒索引引擎查找勒索病毒相关信息,再通过各个安全公司提供的免费勒索软件解密工具解密,但是全拼运气,平时防护措施就是勤打补丁多备份

勒索病毒搜索

360
腾讯
启明星辰
奇安信

勒索软件解密工具

腾讯哈勃
金山毒霸
火绒
卡巴斯基

蠕虫病毒

它是一种自包含的程序(或是一套程序),通常通过网络途径传播,每入侵到一台新的计算机,它就在这台计算机上复制自己,并自动执行它自身的程序

处理流程

1、发现异常:出口防火墙、本地端口连接情况,主动向外网发起大量连接
2、病毒查杀:卡巴斯基全盘扫描,发现异常文件
3、确认病毒:使用多引擎在线病毒对该文件扫描,确认服务器感染conficker蠕虫病毒。
4、病毒处理:使用conficker蠕虫专杀工具对服务器进行清查,成功清除病毒。

挖矿病毒

表现特征为电脑CPU占用率高C盘可使用空间骤降电脑温度升高、风扇噪声增大,因为后台一直在运行

1. 首先将已被感染的服务器进行断网,并立即把网络中其他机器进行隔离 
2. 溯源排查服务器进行,找出哪个进程哪个端口异常,查看服务定时任务,开机启动项,确定挖矿文件路径
3. 手工或者杀软工具彻底删除文件

批量挂黑页

网站被挂上各种菠菜链接,链接可以访问,直接访问物理路径也可以看到文件,但是打开网站目录并没有发现这些文件

确定黑页上传文件的路径,到对应的文件夹目录修改文件夹属性尝试显示隐藏的文件,如有立即清除

打开电脑文件夹选项卡,取消”隐藏受保护的操作系统文件“勾选,把”隐藏文件和文件夹“下面的单选选择“显示隐藏的文件、文件夹和驱动器

再次查看,可以看到半透明的文件夹,清楚隐藏文件夹及所有页面

在这里插入图片描述

管理员账号被篡改

网站虽然前后端分离,后台只允许内网访问,管理员账号admin却依然被多次被篡改

1. 使用工具扫描结合手工确定是否有webshell文件,存在则去对应目录查看恶意文件创建时间访问对应时间段日志,对发出此文件的IP进行封禁webshell文件可能携带sql语句,增加用户语句   

相关文章:

Windows应急响蓝安服面试

Windows应急响应 蓝队溯源流程 学习Windows应急首先要站在攻击者的角度去学习一些权限维持和权限提升的方法.,文章中的方法其实和内网攻防笔记有类似l红队教你怎么利用 蓝队教你怎么排查 攻防一体,应急响应排查这些项目就可以 端口/服务/进程/后门文件都是为了权限维持,得到s…...

PCL 点云配准-4PCS算法(粗配准)

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.1.1 加载点云数据 2.1.2 执行4PCS粗配准 2.1.3 可视化源点云、目标点云和配准结果 2.2完整代码 三、实现效果 3.1原始点云 3.2配准后点云 PCL点云算法汇总及实战案例汇总的目录地址链接…...

12、论文阅读:利用生成对抗网络实现无监督深度图像增强

Towards Unsupervised Deep Image Enhancement With Generative Adversarial Network 摘要介绍相关工作传统图像增强基于学习的图像增强 论文中提出的方法动机和目标网络架构损失函数1) 质量损失2) 保真损失3)身份损失4)Total Loss 实验 摘要 提高图像的…...

Axure重要元件三——中继器表单制作

亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢! 本节课:中继器表单制作 课程内容:利用中继器制作表单 应用场景:台账、表单 案例展示: 步骤一:建立一个背景区…...

DMAIC赋能智能家居:解锁未来生活新篇章!

从清晨自动拉开的窗帘,到夜晚自动调暗的灯光,每一处细节都透露着科技的温度与智慧的光芒。而在这场智能革命的浪潮中,DMAIC(定义Define、测量Measure、分析Analyze、改进Improve、控制Control)作为六西格玛管理的核心方…...

代码随想录算法训练营第二天| 209.长度最小的子数组 59.螺旋矩阵II 区间和 开发商购买土地

209. 长度最小的子数组 题目: 给定一个包含正整数的数组 nums 和一个正整数 target ,找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 ,并返回其长度。如果不存在符合条件的子数组,返回 0。 示例: 示例 1…...

mysql隐藏索引

1. 什么是隐藏索引? 在 MySQL 8 中,隐藏索引(Invisible Indexes)是指一种特殊类型的索引,它并不真正被删除,而是被标记为“不可见”。当索引被标记为不可见时,查询优化器在生成查询计划时将忽略…...

etcd入门到实战

概述:本文将介绍etcd特性、使用场景、基本原理以及Linux环境下的实战操作 入门 什么是etcd? etcd是一个分布式键值存储数据库 关键字解析: 键值存储:存储协议是 key—value 的形式,类似于redis分布式:…...

Build an Android project and get a `.apk` file on a Debian 11 command line

You can build an Android project and get a .apk file on a Debian 11 command line without using Android Studio. The process involves using the Android SDK command-line tools (sdkmanager, adb, and gradle). Here’s a step-by-step guide to building the ???…...

解读 Java 经典巨著《Effective Java》90条编程法则,第4条:通过私有构造器强化不可实例化的能力

文章目录 【前言】欢迎订阅【解读《Effective Java》】系列专栏java.lang.Math 类的设计经验总结 【前言】欢迎订阅【解读《Effective Java》】系列专栏 《Effective Java》是 Java 开发领域的经典著作,作者 Joshua Bloch 以丰富的经验和深入的知识,全面…...

Vivado HLS学习

视频链接: 6课:数据类型的转换_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1bt41187RW?spm_id_from333.788.videopod.episodes&vd_sourcea75d5585c5297210add71187236ec90b&p6 目录 1.数据类型的转换 2.自动类型转换 2.1隐式数据转换 2.2…...

一款AutoXJS现代化美观的日志模块AxpLogger

简介 Axp Logger是一款基于autox.js的现代化日志模块,具备窗口事件穿透、拖拽和缩放功能。 Axp Logger文档 特性现代化的UI设计支持点击穿透模式(不影响脚本运行)监听音量-键切换模式支持窗口操作模式窗口拖拽移动窗口自由缩放清空日志关闭日…...

成都睿明智科技有限公司共创抖音电商新篇章

在当今这个数字化浪潮汹涌的时代,抖音电商以其独特的魅力迅速崛起,成为众多商家竞相追逐的新蓝海。在这片充满机遇与挑战的领域中,成都睿明智科技有限公司凭借其专业的服务、创新的策略和敏锐的市场洞察力,成为了众多商家信赖的合…...

Spark的安装配置及集群搭建

Spark的本地安装配置&#xff1a; 我们用scala语言编写和操作spark&#xff0c;所以先要完成scala的环境配置 1、先完成Scala的环境搭建 下载Scala插件&#xff0c;创建一个Maven项目&#xff0c;导入Scala依赖和插件 scala依赖 <dependency><groupId>org.scal…...

网络编程基础-IO模型深入理解

一、IO的基本概念 什么是IO&#xff1f; I/O就是计算机内存与外部设备之间拷贝数据的过程 什么是网络IO&#xff1f; 网络IO是指在计算机网络环境中进行的输入和输出操作&#xff0c;涉及数据在网络设备之间的传输。 网络IO操作可以是发送请求、接收响应、下载文件、传输数…...

go 语言学习路线图(一)

1. Go语言简介 Go语言的历史背景和设计理念Go的优势&#xff1a;简洁、高效、并发支持强Go的应用场景&#xff1a;微服务、云计算、系统编程 2. 开发环境设置 安装Go语言开发环境 在Windows、macOS、Linux系统上的安装方法 配置环境变量&#xff1a;GOROOT 和 GOPATH验证安装…...

前端自动化部署,Netlify免费满足你

1 Netlify 介绍 为什么推荐 Netliy &#xff0c; 主要还是穷&#xff0c;Netlify 免费太香了 Netlify you优势100GB 内免费 &#xff0c;满足个人日常 需求&#xff0c;操作,兼容性绑定代码仓库&#xff0c;提交代码自动部署 支持 github , gitlab 等 大多常用代码仓库易操作只…...

Linux的开发工具gcc Makefile gdb的学习

一&#xff1a;gcc/g 1. 1 背景知识 1. 预处理&#xff08;进行宏替换) 预处理 ( 进行宏替换 ) 预处理功能主要包括宏定义,文件包含,条件编译,去注释等。 预处理指令是以#号开头的代码行。 实例: gcc –E hello.c –o hello.i 选项“-E”,该选项的作用是让 gcc 在预处理结…...

基于SSM出租车管理系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;车辆管理&#xff0c;驾驶员管理&#xff0c;基础数据管理&#xff0c;公告管理 驾驶员账号功能包括&#xff1a;系统首页&#xff0c;学生管理&#xff0c;车辆管理&#xff0c;公告管理 开发系统&a…...

iPhone照片内存怎么清理,参考这些方法

随着拍摄数量的增加&#xff0c;许多iPhone用户常常发现自己的手机存储空间不足&#xff0c;而照片无疑是占用空间的罪魁祸首之一。清理这些照片不仅能释放存储空间&#xff0c;还能提升设备的运行速度。小编将分享一些iPhone照片内存怎么清理的高效策略&#xff0c;助你告别冗…...

【Triton教程】向量相加

Triton 是一种用于并行编程的语言和编译器。它旨在提供一个基于 Python 的编程环境&#xff0c;以高效编写自定义 DNN 计算内核&#xff0c;并能够在现代 GPU 硬件上以最大吞吐量运行。 更多 Triton 中文文档可访问 →https://triton.hyper.ai/ 在本教程中&#xff0c;你将使…...

关于CSS中毛玻璃和滤镜使用总结

【1】毛玻璃 毛玻璃效果&#xff08;也称为磨砂玻璃效果&#xff09;可以通过 CSS 的 backdrop-filter 属性来实现。这个属性允许你在背景上应用各种滤镜效果&#xff0c;从而创建出类似磨砂玻璃的效果。这种效果通常用于创建半透明背景下的模糊效果&#xff0c;使得背景图像或…...

陷入产出危机的我聊聊近况

文章目录 前言我的多重身份作为IT网管作为运维人员作为Web开发人员作为游戏开发人员 总结 前言 在总结文章时&#xff0c;我把自己当做一个内容产出者&#xff0c;当这样一个身份进入每天按部就班的平稳状态时会陷入一种焦虑&#xff0c;产生一种居然没有什么可写的感觉&#…...

HarmonyOS 开发知识总结

1. HarmonyOS 开发知识总结 1.1. resources->base->media中不可以新建文件夹&#xff1f; 项目图片路径resources->base->media中不可以新建文件夹&#xff0c;图片全平级放里面&#xff0c;查找图片不方便&#xff0c;有没有什么其他的办法解决这个难点&#xff…...

[WPF初学到大神] 1. 什么是WPF, MVVM框架, XAML?

什么是WPF? WPF(Windows Presentation Foundation) 包含XAML标记语言和后端代码来开发桌面应用程序的. 用VS新建项目有WPF(.Net Framework和.Net应用程序), 该怎么选? 首选 .NET 应用程序(.NET Core 或 .NET 5/6/7/8新版本)拥有更好的性能、跨平台Windows, Linux, Mac支…...

matlab怎样自动搜索文件夹中的所有txt文件,并将每个txt文件中的数据存放到一个cell数组中——MATLAB批量处理数据

在使用MATLAB批量处理数据时&#xff0c;有时候需要自动搜索文件夹中的所有txt文件&#xff0c;并将每个txt文件中的数据存放到一个以一定规律命名的变量中&#xff0c;以便于后续通过循环处理每个变量数据。 然而&#xff0c;MATLAB并不支持在变量名中直接使用i来动态生成变量…...

LabVIEW智能可变温循环PCT测试系统

随着全球能源危机的加剧和环境保护需求的提升&#xff0c;开发和利用清洁能源已成为全球必然趋势。氢能作为一种高效的替代能源&#xff0c;正逐步受到关注。然而&#xff0c;储氢技术的研究至关重要&#xff0c;尤其是储氢材料的PCT&#xff08;Pressure-Composition-Temperat…...

SparkSQL整合Hive

spark-sql可以直接使用hive的元数据 1、环境搭建如下&#xff1a; ## 1、启动hive的元数据服务shell # 1、修改hive的配置文件 cd /usr/local/soft/hive-3.1.3/conf# 2、增加配置 vim hive-site.xml<property> <name>hive.metastore.uris</name> <value…...

Vue 3 和 Vue 2区别

Vue 3 是 Vue 2 的全新升级版本&#xff0c;引入了诸多新的特性&#xff0c;并在性能、开发体验、响应式系统等多个方面进行了改进。以下是 Vue 2 和 Vue 3 的详细对比&#xff1a; 1. 生命周期钩子差异 Vue 3 保留了大部分 Vue 2 的生命周期钩子&#xff0c;但部分名称有所调…...

React.memo和useMemo

React.memo和usememo React.memo React.memo是一个高阶组件&#xff0c;对组件进行性能优化&#xff0c;主要用于优化函数组件的性能&#xff0c;如果一个组件在相同的props下渲染出相同的结果&#xff0c;但是又不需要在组件更新的时候重新渲染&#xff0c;就可以使用react.…...