前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >fireELF:无文件Linux恶意代码框架

fireELF:无文件Linux恶意代码框架

作者头像
FB客服
发布2019-05-17 14:24:07
1.1K0
发布2019-05-17 14:24:07
举报
文章被收录于专栏:FreeBufFreeBuf

fireELF是一个开源的跨平台无文件Linux恶意代码框架,它允许用户轻松的创建和管理payloads。默认情况下附带了'memfd_create',这是一种从内存中完全运行linux elf可执行文件的新方法。

截图

特性

选择并构建payloads能够缩小payloads 能够通过将payloads上传到pastebin来缩小payloads,然后创建一个与python <= 2.7兼容的非常小的stager 输出已创建的payloads到文件 能够从URL或本地二进制文件创建payloads

包含的 payload memfd_create

这是一个linux系统的底层调用函数,它在内核3.17中引入,会创建一个匿名文件并返回一个文件描述符指向它,该文件表现和常规文件类同, 可以进行修改,截断,内存映射等等,但不同的是,它存在于RAM当中。这就是可以被攻击者所利用的,如果有办法将需要执行elf通过memfd_create写入内存中进行执行的话就可以达到我们的目的。

创建 Payload

除此之外,用户还可以开发自己的payload。默认情况下,payload存储在payloads/下,想要创建有效的payload,你只需include一个名为'desc'的dictonary,其参数为'name','description','archs'和'python_vers'。示例如下:

代码语言:javascript
复制
desc = {"name" : "test payload", "description" : "new memory injection or fileless elf payload", "archs" : "all", "python_vers" : ">2.5"}

除了'desc' dictonary之外,我构建的插件引擎使用的entry point(入口点)需要一个main函数,它将自动传递两个参数,一个是布尔值,如果为真则意味着它传递了一个url,第二个参数传递的是数据。以下是一个简单入口点的示例:

代码语言:javascript
复制
def main(is_url, url_or_payload):    return

安装

依赖项安装:

代码语言:javascript
复制
pip3 -U -r dep.txt

fireELF是在Python 3.x.x中开发的。

使用

代码语言:javascript
复制
usage: main.py [-h] [-s] [-p PAYLOAD_NAME] [-w PAYLOAD_FILENAME]               (-u PAYLOAD_URL | -e EXECUTABLE_PATH)
fireELF, Linux Fileless Malware Generator
optional arguments:  -h, --help           显示帮助信息并退出  -s                   Supress Banner  -p PAYLOAD_NAME      使用的PAYLOAD名称  -w PAYLOAD_FILENAME  要写入PAYLOAD的文件的名称(强烈建议,如果你没有使用Paste Site选项)                        -u PAYLOAD_URL       要执行的payload url  -e EXECUTABLE_PATH   可执行文件的位置

*参考来源:GitHub,FB小编secist编译,转载请注明来自FreeBuf.COM

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 截图
  • 特性
  • 包含的 payload memfd_create
  • 创建 Payload
  • 安装
  • 使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档