Английский | 中文
Плагин IDA , основанный на той же модели, что и CHATGPT, используя модель GPT-3.5-Turbo, выпущенная OpenAI, может помочь аналитикам быстро проанализировать двоичные файлы.
Особенности, в настоящее время поддерживаемые WpeChatgpt , включают:
Плагин WpeChatgpt использует модель Openai Text-Davinci-003, обученную на GPT. После v2.0 используйте новейшую модель GPT-3.5-Turbo (так же, как CHATGPT ).
Результаты анализа CHATGPT только для справки , в противном случае мы, аналитики, не работали бы на месте. XD
| Версия | Дата | Комментарий |
|---|---|---|
| 1.0 | 2023-02-28 | На основе Gepetto. |
| 1.1 | 2023-03-02 | 1. Удалить функцию анализа шифрования и дешифрования. 2. Увеличьте функцию восстановления Python. 3. Изменил некоторые детали. |
| 1.2 | 2023-03-03 | 1. Добавлено функцию поиска бинарных уязвимостей в функциях. 2. Увеличьте функцию попытки автоматически генерировать соответствующий экс. 3. Изменил некоторые детали. (Загрузка не была протестирована из -за задержки сервера OpenAI) |
| 2.0 | 2023-03-06 | 1. Заполните тестирование функций, связанных с уязвимостью, связанных с уязвимостью V1.2 . 2. Переключитесь на последнюю модель GPT-3.5-Turbo, выпущенная OpenAI. |
| 2.1 | 2023-03-07 | Исправьте время, выпущенный Openai-API. (См. Раздел о отчете об ошибках OpenAI-API ) |
| 2.3 | 2023-04-23 | Добавьте auto-wpegpt v0.1, чтобы поддержать автоматический анализ двоичных файлов. (Пакет AnyTree должен быть добавлен из этой версии, используйте требования. TXT или PIP установить AnyTree ) |
| 2.4 | 2023-11-10 | 1. Изменили некоторые детали отображения. 2. Обновление Auto-Wpegpt v0.2 . |
| 2.5 | 2024-08-07 | 1. Добавьте поддержку для других моделей, вы можете установить это, используя переменную модели . @tpsnt 2. Поддержка новой версии пакета Python Openai. (Нужно обновить свой пакет OpenAI) |
pip install -r ./requirements.txt
WPeChatGPT.py , добавьте ключ API в переменную openai.api_key , измените переменную zh_cn на false. (По умолчанию китайский)WPeChatGPT.py и папку Auto-WPeGPT_WPeace в папку плагинов IDA и, наконец, перезапустите IDA, чтобы использовать его. ! NOTE . Вам нужно установить среду IDA в Python3 , и вам нужно использовать последний пакет Python OpenAI после версии WpeChatgpt 2.0 .
Поддерживает использование любого из щелчков правой кнопки, строки меню или клавиш ярлыки в IDA.
Горячий ключ:
Function analysis = "Ctrl-Alt-G"
Rename function variables = "Ctrl-Alt-R"
Vulnerability finding = "Ctrl-Alt-E"
Щелкните правой кнопкой мыши на окне псевдокода:


Как использовать:

Эффект анализа функции отображение:

Уязвимость обнаружения эффекта:

История обновления:
| Версия | Дата | Комментарий |
|---|---|---|
| 0,1 | 2023-04-23 | Первоначальный выпуск. |
| 0,2 | 2023-11-10 | 1. Улучшить распознавание действительных строк. 2. Улучшите анализ деревьев вызовов функции. 3. Добавьте распознавание для импортных функций. |
Как использовать: Найдите Auto-wpegpt в строке меню и нажмите на него. После завершения вывода вы можете найти результаты анализа в соответствующей папке ( «WPE_+IDB Name» ).

Значение каждого файла в выходной папке:
GPT-Result.txt -> Auto-WPeGPT analysis results
funcTree.txt -> function call tree structure
mainFuncTree.txt -> main function tree structure
effectiveStrings.txt -> Suspicious strings in the binary
Покажите результаты:

После тестирования версия V0.1 имеет лучший эффект анализа на файлы с меньшим количеством функций. В случае двоичных файлов с большим количеством функций токены будут превышать диапазон. Мы постараемся улучшить его в следующей версии.
С 2 марта 2023 года я часто сталкиваюсь с ошибками API, и я думал, что это была проблема нестабильности сервера (потому что у меня здесь взлеты и падения), но, поскольку слишком много отзывов, которые я столкнулся с связанными ошибками, поэтому II сначала отправился в Openai, чтобы проверить статус API и обнаружил, что это было хорошо, поэтому я обнаружил, что это не может быть проблем с сервером, я думал, что я искал, и я искал. Ниже я столкнулся с проблемой соединения API OpenAI:
Прежде всего, плагин работает в условиях научного онлайн .
pip uninstall urllib3
pip install urllib3==1.25.11
# Set your forward-proxy if necessary. (e.g. Clash = http://127.0.0.1:7890)
proxy = ""
# Set reverse-proxy URL if you need. (e.g. Azure OpenAI)
proxy_address = ""
Если вы сталкиваетесь с проблемами или у вас есть какие -либо вопросы при использовании плагина, оставьте сообщение или отправьте мне электронное письмо.
Проект основан на Gepetto и вдохновлен им, вы можете посетить https://github.com/justicerage/gepetto, чтобы узнать об оригинальном методе.