• XSS.stack #1 – первый литературный журнал от юзеров форума

Мануал/Книга DeGPT: оптимизация вывода декомпилятора с помощью LLM

weaver

31 c0 bb ea 1b e6 77 66 b8 88 13 50 ff d3
Забанен
Регистрация
19.12.2018
Сообщения
3 301
Решения
11
Реакции
4 622
Депозит
0.0001
Пожалуйста, обратите внимание, что пользователь заблокирован

DeGPT: Optimizing Decompiler Output with LLM​


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

В этой статье мы представляем DeGPT, комплексную структуру, призванную оптимизировать выходные данные декомпилятора, чтобы улучшить его читаемость и простоту, а также помочь разработчикам обратного проектирования лучше понять двоичные файлы. Модель большого языка (LLM) может смягчить снижение производительности благодаря своим исключительным возможностям, обеспечиваемым большим размером модели и обучающим набором, содержащим богатые мультимодальные данные. Однако его потенциал сложно раскрыть за один раз. Таким образом, мы предлагаем трехролевой механизм, который включает в себя рефери (R_ref), советника (R_adv) и оператора (R_ope), чтобы адаптировать LLM к нашим задачам оптимизации. В частности, R_ref предоставляет схему оптимизации для выходных данных целевого декомпилятора, в то время как R_adv предоставляет меры по исправлению на основе этой схемы, а R_ope проверяет, меняет ли оптимизация исходную семантику функции, и выносит окончательный вердикт о том, следует ли принимать оптимизацию. Мы оцениваем DeGPT на наборах данных, содержащих результаты декомпиляции различного программного обеспечения, такого как практические инструменты командной строки, вредоносные программы, библиотеки для обработки звука и реализации алгоритмов. Результаты эксперимента показывают, что даже на выходе текущего декомпилятора верхнего уровня (Ghidra) DeGPT может снизить когнитивную нагрузку на понимание результатов декомпилятора на 24,4% и предоставить комментарии, из которых 62,9% могут предоставить практическую семантику для реверс-инженеров. чтобы помочь в понимании двоичных файлов. Наши опросы пользователей также показывают, что оптимизации могут значительно упростить код и добавить полезную семантическую информацию (имена переменных и комментарии), способствуя быстрому и точному пониманию двоичного файла.

Подробнее тут

Исходники
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх