Как проследить какую информацию программа отправляет серверу?
Привет.
Есть сервер который выполняет некую функцию, по секрету не скажу какую. Используя локальную сети к нему привязаны несколько стационарок . Как и на сервере так на станциях ОС виндовс ХП. Стационарки - это кассы.
Кассир на кассе создает через специализированную программу, допустим назовем ее 'SON', некую ячейку с информацией и отправляет её на сервер, назовем сервер "DAD". DAD видит эту команду и дальше поступает как ему предписано, нам дальше это уже не важно.
Так вот мой вопрос.
Как мне увидеть что отправляет SON - DAD без визуального участия этих програм. То есть на машинно - программном уровне.
Какие статьи мне для этого прочитать, какой язык начать изучать чтоб компьютер мог меня понимать.
Объясню почему мне это нужно. SON и DAD это технологически сложные программы и чтоб не копаться в чужом коде, я решил что легче будет просто обмануть DAD преставится СЫНОМ и с этой же кассы отправлять на сервер нужную уже Мне информацию.
Для правильного вопроса надо знать половину ответа
Компьютер вообще не думает, он только выполняет программу. Так что, если хотите понять, что сейчас выполняется - дизассемблер и отладчик в руки.
Если хотите просто прикинуться клиентом и трафик не шифрованный - wireshark/tcpdump и реверс-анализ пакетов.
Sergey Dyakonov: В общем случае без анализа работы программы никак.
В частных - если программа отправляет текстовые данные и в пакете их видно, то скорее всего ни шифрации ни упаковки нет. Если при отправке одних и тех же текстовых данных получаем каждый раз одинаковые пакеты, но не содержащие явно текст - либо запакованные данные, либо шифрация по постоянному ключу. Если пакеты каждый раз разные - скорее всего потоковая шифрация.