Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Kam1n0-Community — Масштабируемая платформа анализа ассемблерного кода для индексации, поиска клонов и классификации исполняемых файлов с использованием статических, динамических и методов машинного обучения для нескольких архитектур. | Kitploit
Инструменты/GitHubGitHub/mcgill-dmas/kam1n0-community
Анализ уязвимостейАнализ КодаОбратная инженерияФаззингАнализ Бинарных ФайловМашинное Обучение
GitHubmcgill-dmas/kam1n0-community

Kam1n0-Community

Масштабируемая платформа анализа ассемблерного кода для индексации, поиска клонов и классификации исполняемых файлов с использованием статических, динамических и методов машинного обучения для нескольких архитектур.

Репозиторий
627124233 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Что такое Kam1n0 v2?

image GitHub (pre-)release Github All Releases JDK PRs Welcome

Собрать последнюю версию для разработки (Windows) Тестировать сборку релиза (Windows)

Kam1n0 v2.x — это масштабируемая платформа для управления и анализа ассемблерного кода. Она позволяет пользователю сначала проиндексировать (большую) коллекцию бинарных файлов в различные репозитории, а затем предоставляет различные аналитические сервисы, такие как поиск клонов и классификация. Платформа поддерживает многопользовательский доступ и управление репозиториями ассемблерного кода с помощью концепции Приложения (Application). Экземпляр приложения содержит собственный эксклюзивный репозиторий и предоставляет специализированный аналитический сервис. Учитывая разнообразие задач обратной разработки, сервер Kam1n0 v2.x в настоящее время предоставляет три различных типа приложений для поиска клонов: Asm-Clone, Sym1n0 и Asm2Vec, а также классификацию исполняемых файлов на основе Asm2Vec. К платформе могут быть добавлены новые типы приложений.

Пользователь может создавать несколько экземпляров приложений. Экземпляр приложения может быть предоставлен для совместного использования определённой группе пользователей. Доступ на чтение/запись к репозиторию приложения и его статус (включён/выключен) могут контролироваться владельцем приложения. Сервер Kam1n0 v2.x может обслуживать приложения одновременно, используя несколько общих пулов ресурсов.

Kam1n0 был разработан Steven H. H. Ding и Miles Q. Li под руководством Benjamin C. M. Fung из Лаборатории интеллектуального анализа данных и безопасности при Университете Макгилла, Канада. Он занял второе место в конкурсе плагинов Hex-Rays 2015. Если вы считаете Kam1n0 полезным, пожалуйста, процитируйте нашу работу:

  • S. H. H. Ding, B. C. M. Fung, and P. Charland. Kam1n0: MapReduce-based Assembly Clone Search for Reverse Engineering. В Трудах 22-й Международной конференции ACM SIGKDD по открытию знаний и интеллектуальному анализу данных (SIGKDD), стр. 461-470, Сан-Франциско, Калифорния: ACM Press, август 2016.

  • S. H. H. Ding, B. C. M. Fung, and P. Charland. Asm2Vec: boosting static representation robustness for binary clone search against code obfuscation and compiler optimization. В Трудах 40-го симпозиума IEEE по безопасности и конфиденциальности (S&P), 18 стр., Сан-Франциско, Калифорния: IEEE Computer Society, май 2019.

Asm-Clone

Приложения Asm-Clone решают задачу эффективного поиска подграфов (т.е. проблему изоморфизма графов) для функций ассемблерного кода (среднее время запроса <1,3 с, среднее время индексации <30 мс для 2,3 млн функций). По заданной целевой функции (показана слева на рисунке ниже) определяется её клонированный подграф среди других функций в репозитории (показан справа).

  • Тип приложения: Asm-Clone
  • Оригинальная служба поиска клонов, используемая в Kam1n0 v1.x.
  • В настоящее время поддерживает Meta-PC, ARM, PowerPC и TMS320c6 (экспериментально).
  • Поддерживает поиск клонов подграфов в пределах определённого семейства ассемблерного кода.
    • + Хорошая интерпретируемость результата: разбивает на подграфы.
    • + Точность поиска в пределах заданного семейства кода.
    • + Подходит для сравнения различных патчей или версий больших бинарных файлов.
    • - Относительно более чувствителен к изменениям набора инструкций, оптимизациям и обфускации.
    • - Требуется предварительно определить синтаксис языка ассемблерного кода.
    • - Требуется, чтобы в репозитории был ассемблерный код того же выбранного семейства.

Sym1n0

Семантический поиск клонов с помощью дифференцированного фаззинга и решения ограничений. Эффективный и масштабируемый динамико-статический гибридный подход (среднее время запроса <1 с, среднее время индексации <100 мс для 1,5 млн функций). По заданной целевой функции (показана слева на рисунке ниже) определяется клонированный подграф среди других функций в репозитории (показан справа). Поддерживает визуализацию абстрактного синтаксического графа.

  • Тип приложения: Sym1n0 (только v2)
  • Поиск клонов с помощью как символьного, так и конкретного выполнения.
  • Различает функции на основе их различного поведения ввода/вывода.
  • Поиск клонов выполняется на абстрактном синтаксическом графе, построенном из Vex IR (на базе LibVex).
    • + Поиск клонов между разными семействами ассемблерного кода.
      • Например, проиндексирован код x86, а запрос — код ARM.
    • + Поиск клонов подграфов.
    • + Поддержка широкого спектра семейств через LibVex.
      • x86, AMD64, MIPS32, MIPS64, PowerPC32, PowerPC64, ARM32 и ARM64.
    • + Эффективный динамико-статический гибридный подход.
    • + Идеально подходит для анализа прошивок, скомпилированных для разных процессоров.
    • - Чувствителен к сильным манипуляциям с графом (например, полное уплощение).
    • - Чувствителен к масштабному нарушению целостности базовых блоков.

Asm2Vec

Asm2Vec использует обучение представлениям. Он понимает лексико-семантические связи ассемблерного кода. Например, регистры xmm* семантически связаны с векторными операциями, такими как addps. memcpy аналогичен strcpy. На графике ниже показаны различные ассемблерные функции, скомпилированные из одного и того же исходного кода gmpz_tdiv_r_2exp в libgmp. Слева направо: функции скомпилированы с опциями GCC O0, GCC O3, O-LLVM обфускатором (с уплощением графа управления) и LLVM обфускатором (с ложным графом управления). Asm2Vec может статически идентифицировать их как клоны.

Скачать инструмент