跳转到帖子

游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

TheHackerWorld官方

emp3r0r:Linux用户打造的Linux后渗透框架

精选回复

发布于

emp3r0r:Linux用户打造的Linux后渗透框架

5ff8eb82864a9.png

好像没几个人写过专门用于Linux宗族的远控或许后渗透东西,现有的项目在我看来都不够好使。

尤其是长途终端,就没人能把它做得能像回事。他们都满足于一个简陋无比的反弹shell,随意按下个ctrl-c就会挂掉,大部分终端运用程序几乎没法用。有的甚至连shell都不是,只需一个指令履行(甚至连管道和定向也不支撑)。真彩色,快捷键支撑,bashrc,job control这些“高档”功用想都不要想了。

作为一个活在终端里的资深Linux用户,我是无法忍受的。所以写emp3r0r的时候,我着重优化了反弹bash shell的终端运用体验。担任任地说,在emp3r0r里的长途终端体验毫不逊色于直接运用gnome terminal和openssh。

趁便提一嘴,终端指的是gnome terminal这种程序,它只担任显示和接收输入,而shell指的是bash这样的东西,别搞混了。

除此之外,我也期望把个人所学都放进emp3r0r项目,或许我今后成为大佬了,emp3r0r也会成为一款好使的Linux入侵东西(笑

至于为什么叫做”emp3r0r“,我最早是参照Windows下的empire项目来做的,既然它叫帝国,我就叫皇帝好了。

http://www.naipan.com/npedit/themes/common/anchor.gif核心功用

http://www.naipan.com/npedit/themes/common/anchor.gifHTTP2通讯地道

HTTP2相比与HTTP1.1,除了高效快速之外,最重要的是它能够完结全双工,这也是一款完整的远控必需的特性之一。

还有一个选择是websocket(运用也更广泛),但我想搞个不一样的,刚好有个以色列的大佬写了个HTTP2衔接的库h2conn,那就它了。

然后,TLS是强制的。emp3r0r的通讯加密首要靠TLS,为了防止MITM进犯,我规划的编译脚本会主动生成自签名CA,用它签发服务器证书,并将agent的CA池清空,仅信赖咱们C2服务器的CA。

其他HTTP2也能够支撑恣意署理协议,假如乐意,你能够把agent的流量封装到任何可行的协议里,只用完结你的协议地道,供给个HTTP署理接口就行。这个东西你们或许会叫它流量伪装,no,这不是伪装,这是封装。

http://www.naipan.com/npedit/themes/common/anchor.gif其它Transport封装

为了方便,我就直接放个全家福。TorCDNHTTP2裸连都在这了。

1609393071_5fed63af1f2388ba64026.png!small

http://www.naipan.com/npedit/themes/common/anchor.gifTOR

为了方便运用,我特意编译了一份能够扔到大部分linux机器上跑的纯静态tor二进制文件。

客户端设置好tor署理即可衔接到tor上的C2服务器。需求留意的是,tor服务不一定需求运转在公网上,你能够随意在本地开个来测验。

用tor的优点不必我多说了,你们自然明白。但也别犯蠢,emp3r0r不适合除了正规测验以外的用处。

http://www.naipan.com/npedit/themes/common/anchor.gifCDN

我其实专门写过一篇文章讲这个东西。

这是由我写的一个简略的外部库完结的,大体上结构类似于:

1609221047_5feac3b727e3dd50ba701.png!small

装备好的话,agent端的流量便是:

1609145566_5fe99cde5ed8d9601942f.png!small?1609145568165

在C2服务器上看,是这样的:

1609145589_5fe99cf527811457cbd0c.png!small?1609145596199

http://www.naipan.com/npedit/themes/common/anchor.gif主机信息

主机信息搜集我觉得也很重要,所以我在保持基本漂亮的前提下,把我所想到的信息悉数展示在预览中。图片在前面发过了,便是全家福那个。

下图是单个agent经过裸HTTP2衔接的暗示,上面是agent的debug输出。

下面的体系信息包括了:

  • agent编号和UUID

  • agent进程的用户名,其home目录,及UID,GID

  • 体系版别,包括了发行版细分版别

  • 来自哪个IP和端口,经过哪个transport过来的

  • 本地绑了什么IP

  • ARP缓存

  • 主机名和机器ID

  • CPU类型和数量

  • 内存大小

  • 硬件设备类型和制造商,及版别,假如是虚拟机则增加虚拟化技术的显示

  • 是不是在容器里运转

  • agent的进程和父进程信息

  • 详细的linux内核版别

1609393602_5fed65c20a74a8552b5bf.png!small

http://www.naipan.com/npedit/themes/common/anchor.gif主动出网署理

无需多言,这是很重要的一个功用。

我的主意是,假如网内装置的agent足够多,那么它们自己就能洽谈出一个出网通道来。

现在阶段只完结了单跳的出网署理(刚写的),不支撑多跳出网。

多跳出网已经完结了。

这一切都是主动完结,agent依据自身网络情况决定是发广播给他人供给署理,或是接收这样的广播。

当然了,广播信息也是加密的,频率也低,一般没多少人留意。

下图便是一个Ubuntu机器经过kali供给的署理上线的暗示。

1609146001_5fe99e91122eaa1e40f89.png!small?1609146010261

这便是多跳出网:

1609310298_5fec205af24b372b6358c.png!small?1609310302533

http://www.naipan.com/npedit/themes/common/anchor.gifC2在线状态检测

为了防止过高的poll频率引起留意,咱们设置一个C2在线指示。它能够是GitHub上的一个文本文件或许微博上的一段文字,总归越难引人留意越好。

poll频率是随机改变的,想做时间pattern检测的还是多想想吧。

http://www.naipan.com/npedit/themes/common/anchor.gif躲藏进程和文件

现在完结了基于glibc绑架的进程和文件躲藏,只需加载了libemp3r0r,持久化和躲藏就都有了。

1609146029_5fe99ead6d226e394d27f.png!small?1609146030037

http://www.naipan.com/npedit/themes/common/anchor.gif模块功用

http://www.naipan.com/npedit/themes/common/anchor.gif基础办理终端

这是你的起始操控终端,完结原理是把你的指令发给agent,agent调用exec用sh -c来履行,成果会返回给你。

实际上这不是一个shell,只是看上去像那回事。

假如有错误,会返回return code,假如返回一大坨刷屏的输出,那么会被主动扔到一个新的tmux面板里边,防止污染工作空间。

输入help,能够检查可用的功用,包括文件办理之类的。

然后别忘了,按tab键补全指令。

剩余的看图就知道了。

1609146040_5fe99eb8ede8656106dc5.png!small?1609146045683

http://www.naipan.com/npedit/themes/common/anchor.gif完美的反弹bash shell

这是我最满足的功用之一了。

从图里看:

  • 本shell与体系默许shell完全无关,是一个纯静态的bash二进制文件,且运用不同的RC文件

  • 默许不保存任何前史指令

  • 能够用tmux和其它要求完整终端功用的软件,比如vim和top

  • 有真彩色!

  • 主动设置了PATH,将咱们的自定义东西库组织上了。

一切你本地终端支撑的,这儿都支撑!

然后这个bash反弹shell是一样的封装到HTTP2衔接里,跟其它C2流量毫无区别。

1609146055_5fe99ec7862a6a53664d4.png!small?1609146061137

http://www.naipan.com/npedit/themes/common/anchor.gif插件体系

就在上面bash的图里,nmap,socat都在那了,想要其他什么能够自己上传。

我的“插件体系”实际上与母体没多大联系,emp3r0r做的仅仅是经过vaccine模块,把所有的“插件”打包上传给agent,然后agent装备好它们。

而你就经过操控终端来运用它们。

扩展性max!你能够增加bash脚本,不必管目标机器上是不是有bash,也能够增加二进制程序,要啥传啥就行。

http://www.naipan.com/npedit/themes/common/anchor.gif持久化

现在支撑了:

  • cron

  • LD_PRELOAD加载咱们的shared object

  • bash profile,注入常用指令

  • 其它还在方案中

http://www.naipan.com/npedit/themes/common/anchor.gif进程注入

还没完结,首要经过GDB来加载shared object到可注入的进程。

http://www.naipan.com/npedit/themes/common/anchor.gif用户凭证收割

这是一个注入到sshd进程的shared object,经过ptrace对sshd进行主动调试,最终意图是把它接到的明文密码dump出来。

用GDB完结的示例:

1609146066_5fe99ed27e321f6498bc9.png!small?1609146069250

写到我博客了,还没集成进去,今后再说吧。

http://www.naipan.com/npedit/themes/common/anchor.gif主动Root

能够经过一些好用的本地提权漏洞直接提升agent的权限到root:

1609146082_5fe99ee21fdb70a5d3d4d.png!small?1609146082759

详细的在我博客有介绍。

现在内置了一个CVE-2018-14665。

http://www.naipan.com/npedit/themes/common/anchor.gif提权辅佐

这个模块能够下载两个提权辅佐脚本并在agent上运转,成果会返回给C2:

1609146095_5fe99eef946c0602b7ebb.png!small?1609146096150

http://www.naipan.com/npedit/themes/common/anchor.gif端口映射

支撑从agent到C2的端口映射,本质上是由agent署理一个目标地址并对接到C2端。

这个也是完全一样的HTTP2封装。

1609146106_5fe99efa676bd966e8589.png!small?1609146107118

http://www.naipan.com/npedit/themes/common/anchor.gifsocks署理

在agent上起一个socks5署理,然后映射到C2,从而能够让你在C2端运用署理。

http://www.naipan.com/npedit/themes/common/anchor.gif怎样用

我写了个wiki,欢迎大家修改和增加内容。

这儿简略介绍下编译和装备过程:

http://www.naipan.com/npedit/themes/common/anchor.gif编译C2服务器

1609146141_5fe99f1d49cdfa158e938.png!small?1609146141776

说明一下,编译C2会主动生成一个自签名CA,然后用它签发C2服务器的TLS证书。

一个C2服务器证书能够对多个DNS称号或许IP地址进行背书,你有几个就写几个,tor的onion地址也支撑。

http://www.naipan.com/npedit/themes/common/anchor.gif编译agent

编译agent的话,你只能够写一个C2地址,这是写死到agent里的。

indicator是指示C2是否在线的一个文件,内容是emp3r0r,参见前文介绍。

1609146150_5fe99f264b20a615770ed.png!small?1609146150705

http://www.naipan.com/npedit/themes/common/anchor.gif运转agent

1609146161_5fe99f3144329f6a7d15f.png!small?1609146161765

依据C2服务器地址,你能够选择运用相应的指令行参数。

比如tor的话,你需求

-proxy 'socks5://torproxy:port'

CDN的话,你需求在C2端启用内置署理,然后在agent参数里指定如

-cdnproxy wss://cc.example.com/ws

这样的署理地址。

http://www.naipan.com/npedit/themes/common/anchor.gif未来方案

http://www.naipan.com/npedit/themes/common/anchor.gif支撑更多的躲藏手段

打算把:

  • container based

  • LKM内核模块

  • 进程注入

都完结一下。

http://www.naipan.com/npedit/themes/common/anchor.gif内网渗透

  • 扫描模块

  • 主动漏洞利用和传达

  • 网络流量抓取和剖析

  • 服务弱口令勘探

  • 集成常见的exploit kit

慢慢来吧,假如有需求能够给我打钱,我优先做(笑

http://www.naipan.com/npedit/themes/common/anchor.gif鸣谢

  • 尽管菜鸡但坚持写代码的我

  • 给我打钱打star的你们

  • 国内外大佬们的开源贡献




创建帐户或登录后发表意见

最近浏览 0

  • 没有会员查看此页面。