<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[SecSource_Stars的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/SecSource_Stars</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; SecSource_Stars]]></copyright><item><title><![CDATA[Windows原理深入学习系列-强制完整性检查]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/124118992</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/124118992</guid><author>SecSource_Stars</author><pubDate>Tue, 12 Apr 2022 11:00:02 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 24 篇文章
0x00 目录
0x01 介绍
0x02 逆向分析 Win10_x64_20H2
0x03 总结
0x04 参考文章
最近因为一些事情，拖更了三个周，大家见谅啊，后面还会开始一些其他的系列内容，还等着大家来捧场了。
现在我们接着之前的进度，继续完成 Windows 原理的学习。
在刚开始的时候，我们介绍了强制完整性控制的机制，这次就来看一下在实际的权限检查当中是如何进行的。
0x01 介绍
这次也还是接着上一次的 ObpGrantAccess 函数往后分析了，根据名字]]></description><category></category></item><item><title><![CDATA[Windows原理深入学习系列-信任等级检查]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123590840</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123590840</guid><author>SecSource_Stars</author><pubDate>Sat, 19 Mar 2022 11:02:15 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 23 篇文章
0x00 目录
0x01 介绍
0x02 逆向分析 Win10_x64_20H2
0x03 WinDBG
0x04 参考文章
在之前的时候，一直以为 SACL 只是单纯用来审计的，但是在分析的时候发现并不完全是这样，他还有一些其他的作用
0x01 介绍
根据资料可以发现，对于权限的检查是在 ObpGrantAccess 函数当中完成的

在之前的文章中，我们知道了在进行权限检查的时候，会先进行完整性等级的检查，然后再检查 ACL，但是在跟入函数以后，发现了在之前还有其]]></description><category></category></item><item><title><![CDATA[Windows原理深入学习系列-Windows内核提权]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123497630</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123497630</guid><author>SecSource_Stars</author><pubDate>Tue, 15 Mar 2022 11:09:18 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 22 篇文章
0x00 目录
0x01 介绍
0x02 替换 Token
0x03 编辑 ACL
0x04 修改 Privileges
0x05 参考文章
继续纠正网上文章中那些奇怪的情况和问题
0x01 介绍
虽然主题是 Windows 内核提权，但实际上还是对之前文章的一个总结，这篇文章中所用到的东西全都是前几篇文章所提到的知识点，所有的操作都是之前文章中所讲述过的，以下所有的实验都是在 Win10_x64_20H2 上进行的。
0x02 替换 Token
主要原理就是将 Sy]]></description><category></category></item><item><title><![CDATA[Windows原理深入学习系列-特权]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123422467</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123422467</guid><author>SecSource_Stars</author><pubDate>Fri, 11 Mar 2022 13:20:31 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 21 篇文章
0x00 目录
0x01 介绍
0x02 结构分析
0x03 进程注入测试
0x04 参考文章
0x01 介绍
在 Token 当中还存在一个特别重要的内容——Privileges，它也是权限检查中的一个，当用户去执行一些特权操作的时候，会检查这个位置，看是否有执行的权限。
通过滥用一些特权指令，可以达到权限提升等目的，最常见的一个特权就是 SeDebugPrivilege，除此之外，还有很多的特权

这些权限都可以通过 AdjustTokenPrivileges 来]]></description><category></category></item><item><title><![CDATA[Windows原理深入学习系列-访问控制列表-关于安全描述符的补充]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123350498</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123350498</guid><author>SecSource_Stars</author><pubDate>Tue, 08 Mar 2022 12:17:54 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第&nbsp;20&nbsp;篇文章
0x00 目录
0x01 安全描述符的结构
0x02 两个结构的不同点
0x03 真正的查询方案
0x04 参考文章
0x01 安全描述符的结构
在上一篇文章中，我们在取 DACL 的时候，对安全描述符的结构产生了疑问，在查到的资料中都在说使用 _SECURITY_DESCRIPTOR 结构，但是因为符号不是最新的等等原因，造成了错位，最后发现应该 +0x30

而在我们去分析内核实际操作的时候发现，应该使用的是 _SECURITY_DESCRIP]]></description><category></category></item><item><title><![CDATA[Windows原理深入学习系列-访问控制列表]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123269451</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123269451</guid><author>SecSource_Stars</author><pubDate>Fri, 04 Mar 2022 09:41:17 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 19 篇文章
0x00 目录
0x01 介绍
0x02 DACL
0x03 创建DACL
0x04 文件读取测试
0x05 进程注入测试
0x06 原理分析 Win10_x64_20H2
0x07 参考文章
在最后分析的时候纠正一下网上大批分析文章中的一个错误，东西只有自己实践了才知道
0x01 介绍
在上一篇讲强制完整性控制的时候提到过，在权限检查的时候，会先进行强制完整性检查，然后再进行 DACL 检查，DACL 就是包含在这次要提到的 ACL 当中的。
访问控制列表（Acce]]></description><category></category></item><item><title><![CDATA[Windows原理深入学习系列-强制完整性控制]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123199998</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123199998</guid><author>SecSource_Stars</author><pubDate>Tue, 01 Mar 2022 10:33:57 +0800</pubDate><description><![CDATA[0x00 目录
0x01 介绍
0x02 完整性等级
0x03 文件读取测试
0x04 进程注入测试
0x05 原理分析 Win10_x64_20H2
0x06 参考文章
0x01 介绍
强制完整性控制（Mandatory Integrity Control，MIC），它是对 discretionary access control list 的补充，并且是在 DACL 之前检查的
这是从 Windows Vista 新增的安全机制，在 Windows XP 中几乎所有的进程都是运行在管理员权限下的。
在官]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(15)：CS功能分析-BOF]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123069354</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123069354</guid><author>SecSource_Stars</author><pubDate>Tue, 22 Feb 2022 15:26:12 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 15 篇文章
0x00 目录
0x01 BOF功能分析
0x02 BOF功能执行
0x03 写在最后
其实在看过 RDI 与 DotNet 功能执行之后，BOF 的执行基本就不用再说了，唯一需要提及的可能就是它所包含的技术，而且相关的文章和代码也都很丰富了
0x01 BOF功能分析
在 CS 中，有相当一部分功能都是 BOF 形式的，我们随意选择一个

它继承了 PostExInlineObject 类，需要自己实现的并不多，但实际上，一些函数还是自己实现的好

在实际调用的时候，]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(14)：CS功能分析-DotNet]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123029960</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123029960</guid><author>SecSource_Stars</author><pubDate>Sun, 20 Feb 2022 13:34:18 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 14 篇文章
0x00 目录
0x01 DotNet功能分析
0x02 DotNet功能执行
0x03 写在最后
在上两篇文章中，讲述了 CS 中的一种功能执行方式 RDI，这一次来分析一下另外一个非常重要的功能执行方式——DotNet
0x01 DotNet功能分析
CobaltStrike 提供了一种可以执行任意 DotNet 程序的方案，使用了名叫 invokeassembly 的 DLL，来加载和执行所传递的 DotNet 功能，提供这个方法的 Job 是 ExecuteA]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(13)：RDI 任务执行流程分析]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123029948</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123029948</guid><author>SecSource_Stars</author><pubDate>Sun, 20 Feb 2022 13:33:07 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 13 篇文章
0x00 目录
0x01 任务号
0x02 功能执行
0x03 结果接收
在上一篇文章中已经讲明了 RDI 类型的任务在发布时候的流程，接下来就是执行了，文中不提任务接收与结果回传，这部分内容在之前也已经分析过了，继续使用 HashDump 来进行分析
0x01 任务号
按照上一次流程的分析，RDI 在构建的时候实际发布了两个任务，一个是 HashDump 的任务号，还有一个是通过 getJobType 获取到的

根据上一篇文章的流程 HashDump 所调用的任务]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(12)：RDI 任务发布流程分析]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123029914</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/123029914</guid><author>SecSource_Stars</author><pubDate>Sun, 20 Feb 2022 13:30:53 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 12 篇文章
0x00 目录
0x01 任务构建
0x02 结果处理
0x03 功能 DLL 分析
之前的分析都是针对整个 CS 的框架来进行的，但是功能也是整个 C2 中相当重要的部分，接下来几篇文章会对基本的功能类型的流程进行分析
0x01 任务构建
CS 自带的 RDI 类型的功能也有好多，但所有的构建等也都是大同小异了，这里以 HashDump 来进行分析，HashDump 有两种触发方式，一种是在界面上直接点击，一种是通过命令

这两种方式在执行前都会去判断当前用户的权限]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(11)：自实现 Beacon 检测工具]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122777615</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122777615</guid><author>SecSource_Stars</author><pubDate>Thu, 03 Feb 2022 18:19:33 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 11 篇文章
关注微信公众号[信安成长计划]

0x00 目录
0x01 检测原理
0x02 检测方案
0x03 存在的问题
0x04 解决方案
0x05 示例代码
0x06 写在最后
年也过了，继续开始卷卷卷…
目前使用比较多的检测工具就是 BeaconEye，在之前的文章中也已经提到过它的检测原理与 Bypass 的方法《Bypass BeaconEye》《Bypass BeaconEye - Beacon 堆混淆》，BeaconEye 所依赖的就是 C2Profile 解析后]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(10)：TeamServer 启动流程分析]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122727746</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122727746</guid><author>SecSource_Stars</author><pubDate>Fri, 28 Jan 2022 10:32:30 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 10 篇文章
关注微信公众号[信安成长计划]

0x00 目录
0x01 基本校验与解析
0x02 初始化
0x03 启动 Listeners
在之前的分析中，都是针对 CobaltStrike 整体通信流程的，也就忽略了中间的一些细节，其中一些细节对理解整个 CobaltStrike 也是非常重要的
0x01 基本校验与解析
先取了默认端口

接着对 Java 环境及一些参数进行了验证，并校验了 license

这里重点看一下对于参数的检测，可以看到有校验两个参数是否存在，当你]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(9)：Bypass BeaconEye - Beacon 堆混淆]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122617345</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122617345</guid><author>SecSource_Stars</author><pubDate>Fri, 21 Jan 2022 11:14:34 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 9 篇文章
关注微信公众号[信安成长计划]

0x00 目录
0x01 CS4.5 Sleep_Mask
0x02 HeapEncrypt
0x03 效果
0x04 参考文章
在之前的文章《Bypass BeaconEye》中提过了两个 Bypass BeaconEye 的方法，都是通过打乱 C2Profile 结构来做的，还有另外一种方式就是在 Sleep 的时候加密堆内存，在 CS4.5 中也对 Sleep_Mask 进行了更新
0x01 CS4.5 Sleep_Mask
根据]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(8)：Beacon 结果回传流程分析]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122577169</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122577169</guid><author>SecSource_Stars</author><pubDate>Wed, 19 Jan 2022 11:31:34 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 8 篇文章
关注微信公众号[信安成长计划]

0x00 目录
0x01 Beacon 接收与处理
0x02 结果回传
Beacon 在接受完命令并执行后，会将数据加密回传给 TeamServer，TeamServer 进行解析后，并根据类型对结果的格式进行处理后，再回传给 Controller
0x01 Beacon 接收与处理
直接在通信相关函数上下断，HttpSendRequest 发送任务，InternetReadFile 接收任务

跟出函数以后再根据其上下文分析，也就能推]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(7)：Controller 任务发布流程分析]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122492309</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122492309</guid><author>SecSource_Stars</author><pubDate>Fri, 14 Jan 2022 13:24:15 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 7 篇文章
关注微信公众号[信安成长计划]

0x00 目录
0x01 Controller-&gt;TeamServer
0x02 TeamServer-&gt;Beacon
0x03 流程图
所有的任务在 Controller 处理以后，都会直接发送到 TeamServer，接着等待 Beacon 回连的时候将任务取走，文章以 shell whoami 为例
0x01 Controller-&gt;TeamServer
当在 Console 中输入命令回车后，会进入 Beaco]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(6)：Beacon sleep_mask 分析]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122428247</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122428247</guid><author>SecSource_Stars</author><pubDate>Tue, 11 Jan 2022 11:35:09 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 6 篇文章
关注微信公众号[信安成长计划]

0x00 目录
0x01 C2Profile 分析
0x02 set userwx “true”
0x03 set userwx “false”
CobaltStrike 提供了一个内存混淆功能，它会在 Sleep 的时候将自身混淆从而避免一定的检测
0x01 C2Profile 分析
因为 sleep_mask 是从 C2Profile 中设置的，所以就需要先搞清楚 TeamServer 是如何解析的

很明显它还跟其他的设置项有关，]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(5)：Bypass BeaconEye]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122420869</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122420869</guid><author>SecSource_Stars</author><pubDate>Mon, 10 Jan 2022 22:25:15 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 5 篇文章
关注微信公众号[信安成长计划]

0x00 目录
0x01 BeaconEye 检测原理
0x02 Bypass 1
0x03 Bypass 2
0x04 效果图
在之前的三篇文章《Stageless Beacon 生成流程分析》《Beacon C2Profile 解析》《Beacon 上线协议分析》中，已经穿插着将 C2Profile 的全部内容介绍完了，也把 Bypass 所需要的一些内容也都穿插着提到过了，接下来就该说如何对其进行 Bypass
0x01 Beac]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(4)：Beacon 上线协议分析]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122420814</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122420814</guid><author>SecSource_Stars</author><pubDate>Mon, 10 Jan 2022 22:22:46 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 4 篇文章
关注微信公众号[信安成长计划]

0x00 目录
0x01 Beacon 发送
0x02 TeamServer 处理
0x03 流程图
0x04 参考文章
在上一篇讲解 C2Profile 解析的时候，已经提到过如何断入到真正的 beacon.dll 当中，并且也清楚了它执行时的调用顺序，Beacon 上线的所有流程也都是在第二次主动调用 DLLMain 时执行的。
因为主要说明的是上线流程，功能性的暂且不提，但是中间会穿插 C2Profile 的读取操作。
0x01 ]]></description><category></category></item><item><title><![CDATA[CobaltStrike逆向学习系列(3)：Beacon C2Profile 解析]]></title><link>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122419636</link><guid>https://blog.youkuaiyun.com/SecSource_Stars/article/details/122419636</guid><author>SecSource_Stars</author><pubDate>Mon, 10 Jan 2022 21:27:55 +0800</pubDate><description><![CDATA[这是[信安成长计划]的第 3 篇文章
关注微信公众号[信安成长计划]

0x00 目录
0x01 Controller 端分析
0x02 Beacon 端分析
0x03 展示图
在上一篇文章中完成了 Stageless Beacon 生成的分析，接下来就是对 Beacon 的分析了，在分析上线之前先将 C2Profile 的解析理清楚，因为 Beacon 中大量的内容都是由 C2Profile 决定的。
而且，目前 C2Profile 也是被作为检测 CobaltStrike 的一种手段，只有在理解了它的实]]></description><category></category></item></channel></rss>