LINUX.ORG.RU
ФорумTalks

[реверс-инжиниринг] Как моймать то, что приложение шлет в сеть?

 


0

2

Ситуация такова. Есть одна онлайн браузерка, довольно интересная, я в нее когда-то неиство задротил, а сейчас опять решил поиграть, благо на работе браузерка самое оно, да и дома, чтоб отвлечься от кода, или ЛОРа. Но есть одно но. Играть в нее с браузера нереально, ибо сделано все на флеще, а объемы ентого флеща просто огромны. Для этого на сайте можно скачать клиент, который по сути является просто браузером с сохраненным кэшем. Но в нем так же есть несколько полезных функций, таких как «запоминалкя комплектов одежи», и, самая ИМХО главная, «Флудилка», которая позволяет флудить в чат с нужной периодичностью, скажем, рекламировать свои услуги в торговом чате.

Запустить их нотовый клиент под вайном не удалось, так как он по какой-то причине крашится, в выхлопе вайна ошибок нет, на форуме народ пишет примерно то же самое. Прокрасноглази пару дней я решил пойти по пути наименьшего сопротивления и написать свой клиент, с блекджеком и девушками легкого поведения. Тащемта, сделать браузер и подсунуть ему папку кэша не сложно, но вот с «плагинами» возникла проблема.

Ведь каким-то макаром десктопное приложение отправляет данные в чат?Видимо, у игры есть какое-то API, позволяющее это сделать. Скорее всего представляет собой просто особо обученную строку запроса в браузер, как, например, в контактике осуществляется поиск музыки по ссылке "http://vkontakte.ru/gsearch.php?section=audio&q=имя песни". Далее возник вопрос, как и чем можно поймать эту строку? Например, я запускаю эту клиент в виртуальной машине с хпшечкой, и желаю каким-то образом увидеть то, что идет в инет от этой программы?

Если знаете какие-либо методы для данного дела, подскажите!

★★★★★
Ответ на: комментарий от fluorite

>сниффер не пробовал?

Думал об этом, но сниффером я увижу только пакеты, которые шлются в сеть, а не саму строчку адреса. Хотя мб я глючу.

Zhbert ★★★★★
() автор топика
Ответ на: комментарий от gunja

>а там выхлоп уже разгребать. или нужно что-то ещё проще?

Просто спросил, вдруг мне в голову чего не пришло, а великий разум ЛОРа подскажет.

Zhbert ★★★★★
() автор топика
Ответ на: комментарий от gunja

>tcpdump

а там выхлоп уже разгребать. или нужно что-то ещё проще?

Категорически согласен. По мере увеличения интереса к траффику увеличивать количество букв v в опции -v :)

solshark
()
Ответ на: комментарий от Zhbert

> Думал об этом, но сниффером я увижу только пакеты, которые шлются в сеть, а не саму строчку адреса

Не-а

сделано все на флеще, а объемы ентого флеща просто огромны

Ну основная масса - это картинки же, попробуй взять декомпилятором весь AS, не факт, что в нем сложно будет разобраться

Bad_Habit
()

Через проксю работает? Если да, можно с помощью какого-нибудь тупого proxy-сервера поймать.

vaulter
()
Ответ на: комментарий от Zhbert

что такое строка адреса? :)
поставь wireshark, мощный инструмент

fluorite ★★★★★
()
Ответ на: комментарий от Bad_Habit

>Ну основная масса - это картинки же, попробуй взять декомпилятором весь AS, не факт, что в нем сложно будет разобраться

Это все ерунда, я в кутэ уже сделал, вебкит, подсунул ему его же кэш, все зашибись, летает.

Zhbert ★★★★★
() автор топика
Ответ на: комментарий от vaulter

>Через проксю работает? Если да, можно с помощью какого-нибудь тупого proxy-сервера поймать.

Вроде да, тоже хороший вариант.

Zhbert ★★★★★
() автор топика

виртуалку поставь , в нее эту игру, потом эту виртуалку запускаешь там где недо.

или можно проксю сделать с локальным трафиком и через нее выкачать

olegsov
()
Ответ на: комментарий от gizzka

>Можно wireshark использовать, как вариант.

попробую-ка ща, он у меня как раз стоит, хомяков мониторить.

Zhbert ★★★★★
() автор топика

Wireshark'ом очень даже удобно смотреть кто куда и что шлёт. Протоколы разбирать он тоже умеет.

Black_Shadow ★★★★★
()
Ответ на: комментарий от olegsov

>виртуалку поставь , в нее эту игру, потом эту виртуалку запускаешь там где недо.

Сделал. На моем домашнем ноуте это сопровождается тормозами.

Zhbert ★★★★★
() автор топика
Ответ на: комментарий от Zhbert

> Это все ерунда, я в кутэ уже сделал, вебкит, подсунул ему его же кэш, все зашибись, летает.

И что, дебагом ловится то, какие запросы шлет флеш?

Bad_Habit
()

Вполне может быть (а скорее всего, так и есть), что плагины написаны на том же флеше. В таком случае тебе придёдтся ещё и с авторизацией возюкаться, и много чего ещё. Проси у авторов игры api сервера. :-)

DJAnto
()
Ответ на: комментарий от Zhbert

>Думал об этом, но сниффером я увижу только пакеты, которые шлются в сеть, а не саму строчку адреса.

Практически никогда так не делал, но возможно стоит попробовать: через LD_PRELOAD заменить ф-ю write. Выхлоп фильтровать, понятное дело.

ttnl ★★★★★
()
Ответ на: комментарий от Zhbert

> Думал об этом, но сниффером я увижу только пакеты, которые шлются в сеть, а не саму строчку адреса. Хотя мб я глючу.

WireShark довольно сносно декодирует стандартные протоколы.

tx
()

Сниффер однозначно. Если в плагине есть место для отправки пользовательских данных - то в поиск, и потом разбираешь всю сессию.

chinarulezzz ★★
()

запускать из под определенного пользователя, маркировать все его пакеты и ссыпать в лог iptables

VladimirMalyk ★★★★★
()

Например, я запускаю эту клиент в виртуальной машине с хпшечкой, и желаю каким-то образом увидеть то, что идет в инет от этой программы?

tcpTrace

iZEN ★★★★★
()

Firefox + firebug –> Net tab Всё покажет, всё расскажет. Даже если там 301 или 302. (Если конечно там действительно GET/POST запросы, …ну или хитрые заголовки. А вот если там сокеты, то надо уже что-то другое).

Deleted
()
Ответ на: комментарий от Deleted

>(Если конечно там действительно GET/POST запросы,

Да, ПОСТ, вайршарк показал. Вечером я поисследую это дело повнимательнее.

Zhbert ★★★★★
() автор топика
Ответ на: комментарий от Zhbert

а браузером она играется? если да, я бы поснифал через ff + livehttpheaders, только скажи как проверить

Deleted
()

Используй Wireshark (он раньше назывался Ethereal).

Другой вариант (если игра использует HTTP) — HTTP debugging proxy.

Вот такая есть: http://www.owasp.org/index.php/OWASP_WebScarab_Project

Если бы игра использовала XMLHttpRequest (AJAX) — то можно было бы вообще просто к фаерфоксу подключить Live HTTP Headers и смотреть передаваемые заголовки.

MaGIc2laNTern
()
Ответ на: комментарий от Deleted

> а браузером она играется? если да, я бы поснифал через ff + livehttpheaders, только скажи как проверить

Live HTTP Headers не возьмёт Флэш. :)

MaGIc2laNTern
()
Ответ на: комментарий от Deleted

>круто, это можно потом в паблике ожидать? товарищ мучается с ним тоже

Да, конечно. Я вообще написал на почту ИТтерритори (не помню, говорил, нет), спросил их мнение на этот счет, попросил выслать АПИ, но ответа нет и, видимо, не будет. Хотя тсранно, это же в их интересах, чтобы больше народа играло в их гаму без проблем.

Zhbert ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.