EBPF入门
记录一下最近入门eBPF的笔记,用于加强印象(以及偶尔点开博客发现又有一个月没有更新了),国庆肯定是有点小混了,然后就是感觉有很多东西也懒得记了,难得学点东西,并且感觉是一个比较新的技术,稍微写点。
学到目前主要是靠Isovalent家的这本Learning eBPF,写的脉络也可能也就大致和书的脉络一致。
基本概念
什么是ebpf,应该不会有人什么都不会就依赖我的博客入门的吧?本文所有内容均默认读者拥有最基础的基础,不会对太简单的东西进行过分的解释。
记录一下最近入门eBPF的笔记,用于加强印象(以及偶尔点开博客发现又有一个月没有更新了),国庆肯定是有点小混了,然后就是感觉有很多东西也懒得记了,难得学点东西,并且感觉是一个比较新的技术,稍微写点。
学到目前主要是靠Isovalent家的这本Learning eBPF,写的脉络也可能也就大致和书的脉络一致。
什么是ebpf,应该不会有人什么都不会就依赖我的博客入门的吧?本文所有内容均默认读者拥有最基础的基础,不会对太简单的东西进行过分的解释。
逛街的时候看到了一个项目Caro-Kann,虽然这个项目中并没有使用堆加密,但是其后的一些OPSec improvement ideas中提到了堆加密,加上之前写geacon的时候也考虑过用堆加密,但是没有成功,所以这次仔细的看一下,简单学习一下
因为仔细研究后发现对于geacon来说堆加密技术的意义不是很大,所以并未进行部署,仅对网络文献的内容进行抄写复述加强记忆。并给我一个月未更新的博客水一篇文章。
起因还是因为原生CS beacon中,关于C2Profile的内容是被存储在堆上的,导致针对C2Profile格式的内存扫描能够轻松的定位到被beacon感染的进程或是直接运行的CS beacon
The Anatomy of an APT Attack and CobaltStrike Beacon’s Encoded Configuration
最近写的玩具,实际上感觉实战基本上用不到。。。我打的攻防还没有这么前沿,但是因为最近好久都没更新博客了。闲来无事水一篇
首先full credit to HackBrowserData,主体框架都是从这抄的,也是从这个的代码学的大概的还原浏览器数据的逻辑。
该项目是为了解决HackerBrowserData在目标机器上存在高强度edr防护时无法利用的情况。其实绕过的想法也很简单,并且已经到了高级对抗,实现的方法也还可以有很多,也可以针对特定规则搓出特定的方案,这里只是给出一个可能且稍微具有一点泛用性的一个例子。
前两天听说的新奇玩意,之前的C2隐藏的经典做法是域前置,在云厂商不验证域名所有权的情况下,可以注册域名,并且云厂商会为你签发对应的证书。显然,该方法是有悖于正常软件的运行逻辑的,随着该方法的普遍传播,云厂商都在用户绑定域名前对域名所有权进行了校验,使得域前置技术现在只能是作为一层套CDN的技术,并不能伪造出任意合法地名。虽说如此,但也能当一层cdn用,但使用的前提就是自己注册一个域名。
该方案能够隐藏C2的真实IP,但由于SNI的存在,即使在使用HTTPS的情况下流量监控设备仍然能够拿到客户端访问的目标域名(我感觉未备案下https的阻断也是这个道理),在国内顶级实名注册域名的情况下,一个域名反手社工全家完全不是问题。
因此,需要另一个合法的隐藏C2服务器的技术,也就是今天提到的云函数。该方案实际上也类似于一层CDN,但不需要自己签发域名,直接使用云服务商提供的域名,本身也属于较为可信的域名(大概)
不过以上几个办法都不能防止对C2(CDN)的IP封禁,因为CDN是由地理位置决定分发到哪个机器上的,如果当前地理位置对应的CDN被封了IP,CDN也不会知道你被封了而给你重新解析一个新IP出来,所以仅作隐藏使用。