Реверс-инжиниринг протокола / Воспроизведение HTTP-диалога
-
23-09-2019 - |
Вопрос
Для конкретных нужд проекта мне приходится связать часть моего кода с другим кодом с закрытым исходным кодом.Моя идея состоит в том, чтобы понять, как взаимодействует исходное приложение, а затем имитировать его поведение.Я уже сделал первый шаг: анализ некоторых HTTP-обменов (с использованием запросов POST и ответов XML) с помощью Вайршарк.В конце обмена сервер выдает выходные данные, которые мне нужно записать.
Теперь мой вопрос:Что это самый простой способ воспроизвести поведение клиента с моим вводом?т.е. тот, который требует меньше кодирования?По сути, мне не нужно много «программистских» возможностей, достаточно иметь возможность анализировать некоторые переменные в ответах сервера и повторно использовать их в последовательном запросе.
Я уже проделывал подобную работу, воспроизводя поведение клиента с помощью PHP-скрипта командной строки, но это довольно утомительно, а код трудно читать и, следовательно, поддерживать.
Любое предложение приветствуется!!Спасибо
Решение
Если вам не нужно масштабируемое решение, и вашему приложению необходимо обрабатывать только определенные запросы/ответы, вы можете заранее создать несколько запросов в виде больших двоичных объектов XML и просто обновить любые переменные в них, отправить их и выполнить базовый анализ XML, чтобы получить значения. элементов XML с ответом.По сути, ваше приложение будет действовать как повторитель разговора, который вы записали с помощью Wireshark, и настраивать его для изменения нескольких значений.
Другие советы