Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
karton — 基于 Python、Redis 和 S3 的分布式恶意软件处理框架。 | Kitploit
工具/GitHubGitHub/cert-polska/karton
动态分析 (沙盒)恶意软件分析实用工具与框架
GitHubcert-polska/karton

karton

基于 Python、Redis 和 S3 的分布式恶意软件处理框架。

查看仓库网站
4765222个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Karton

基于Python、Redis和S3的分布式恶意软件处理框架。

理念

Karton 是一个稳健的框架,用于创建灵活且轻量级的恶意软件分析后端。它可以用于将恶意软件分析系统连接成一个稳健的流水线,几乎无需繁琐操作。

我们在自动化领域已经深耕多年。面对越来越多的威胁,我们不得不将所有工作自动化以跟上事件响应的节奏。正因为如此,我们经常最终得到许多用胶带和WD-40拼凑在一起的脚本。这些脚本是分析师在紧急时刻编写的,脆弱且丑陋——但它们能工作,能产生必须存储、进一步处理、发送到其他系统或与其他组织共享的情报。

我们需要一种方法,能让我们获取PoC脚本并轻松地将其插入到分析流水线中。我们还希望监控它们的执行、集中日志记录、提高稳健性、减少开发惯性……正是出于这个目的,我们创建了Karton。

* 虽然Karton是为恶意软件分析而设计的,但它也适用于每个微服务导向的项目。

安装

安装只需一个 pip install 命令:

root@kitploit:~
pip3 install karton-core

为了搭建整个后端环境,你还需要S3兼容的存储和Redis,详情请参见文档。

使用示例

要使用Karton,你需要提供一个继承自Karton的类。

root@kitploit:~
from karton.core import Karton, Task, Resource

class GenericUnpacker(Karton):
    """
    Performs sample unpacking
    """
    identity = "karton.generic-unpacker"
    filters = [
        {
            "type": "sample",
            "kind": "runnable",
            "platform": "win32"
        }
    ]

    def process(self, task: Task) -> None:
        # Get sample object
        packed_sample = task.get_resource('sample')
        # Log with self.log
        self.log.info(f"Hi {packed_sample.name}, let me analyze you!")
        ...
        # Send our results for further processing or reporting
        task = Task(
            {
               "type": "sample",
               "kind": "raw"
            }, payload = {
               "parent": packed_sample,
               "sample": Resource(filename, unpacked)
            })
        self.send_task(task)

if __name__ == "__main__":
    GenericUnpacker.main()

命令行

此软件包还提供一个名为"karton"的命令行工具。你可以用它执行简单的管理任务(但它并非设计为全功能管理工具)。

root@kitploit:~
$ karton configure  # 创建新的配置文件

$ karton list -s  # 列出当前绑定
karton name                                        version    karton
------------------------------------------------------------------------
karton.yaramatcher                                 1.2.0      5.3.0
karton.autoit-ripper                               1.2.1      5.3.3
karton.mwdb-reporter                               1.3.0      5.3.2

$ karton logs  # 开始流式输出所有系统日志

$ karton delete karton.something  # 移除未使用的绑定(系统将在下次操作时通过垃圾回收处理)

Karton系统

有些Karton系统是通用的,对每个人都很有用。我们决定将其与社区共享。

karton

本仓库。包含karton.system服务——负责任务调度的主服务。也包含karton.core模块,作为库被其他系统使用。

karton-dashboard

一个用于任务和队列管理及监控的小型Flask仪表板。

karton-classifier

“路由器”。它识别样本/文件,并根据文件格式生成各种任务类型。这样,其他系统可以只监听特定格式的任务(例如,仅zip归档)。

karton-archive-extractor

通用归档解包器。上传到系统中的归档文件将被解压,每个文件会被单独处理。

karton-config-extractor

恶意软件提取器。它使用Yara规则和Python模块从恶意软件样本中提取静态配置。我们分享的是渔竿,不是鱼——我们不分享模块本身。但编写自己的模块很容易!

karton-mwdb-reporter

流水线中非常重要的一个部分。报告器将分析过程中生成的所有文件、标签、评论和其他情报提交到MWDB。如果你尚未使用MWDB,或者更偏好其他后端,编写自己的报告器也很容易。

karton-yaramatcher

自动在流水线的所有文件上运行Yara规则,并相应地标记样本。规则不包含在内 ;)。

karton-asciimagic

Karton系统,用于解码使用常见方法(如hex、base64等)编码的文件。(你不会相信这种情况有多常见。)

karton-autoit-ripper

一个围绕AutoIt-Ripper的小型封装,用于从编译的AutoIt可执行文件中提取嵌入的AutoIt脚本和资源。

DRAKVUF Sandbox

自动化黑盒恶意软件分析系统,底层使用DRAKVUF引擎,无需在客户操作系统中安装Agent。


下图展示了这些系统如何组合成一个基本的恶意软件分析流水线:

使用了Karton框架的社区项目

c3rb3ru5d3d53c/karton-unpacker

一个模块化的Karton框架服务,使用Qiling框架解包常见加壳程序(如UPX等)。

c3rb3ru5d3d53c/mwcfg / c3rb3ru5d3d53c/mwcfg-modules

用于MalDuck的、功能丰富的模块化恶意软件配置提取工具

raw-data/karton-die-classifier

适用于Karton框架的Detect-It-Easy分类器

raw-data/karton-retdec-unpacker

适用于Karton框架的RetDec解包模块

W3ndige/aurora / W3ndige/karton-similarity

以模块化思维设计的恶意软件相似性平台。

splintersfury/driver_analyzer

一个可伸缩的Windows驱动程序漏洞分析器流水线。

由欧盟连接欧洲基金共同资助

下载工具