Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Общие темы > Программное обеспечение / Software

Программное обеспечение / Software Программное обеспечение, софт, software а также всё, что с этим связано. Обсуждение, впечатления, рекомендации.

Ответ
 
Опции темы
Старый 15.06.2013, 02:30   #1
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ищу программу (описание в сообщении)

Хочу заняться реверс инженерингом кое-чего. Есть некий клиент (чёрный ящик) и есть удалённый сервер. Сервер и клиент общаются по достаточно простому протоколу, структура пакетов сразу вычисляется на глаз при снифинге. Мне нужно воткнуть между сервером и клиентом своё прокси, которое будет по моему желанию подменять/внедрять свои пакеты. Если бы клиент коннектился к серверу по имени домена, то я бы просто забил его в hosts, указав локальный IP адрес, после чего написал бы прокси сервер и поднял бы его прямо на локале. Но проблема в том, что клиент коннектится к серверу по IP. Так вот вопрос: существует ли какой-нибудь софт, позволяющий подменять IP адрес назначения? Что-то вроде локального роутера, типа надстройки hosts, но не для доменов, а для IP (объясняю грубо и на пальцах).

P.S.: Ну и понятное дело, так как мой прокси сервер будет запускаться на той же машине, то желательно, чтобы запросы от него каким-то образом шли уже куда надо, а не через "роутер". Но если это никак не реализуемо, то так и быть, запущу прокси на отдельной машине.
(Offline)
 
Ответить с цитированием
Старый 15.06.2013, 11:30   #2
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Ищу программу (описание в сообщении)

Написать свой такой - дело 25 минут.

Делал когда то именно то что ты описал для игры. Инжектим эту длл она подменяет ип по которому пытается соединится игра на 127.0.0.1 а настоящий ип сервера отсылает в прокси.

BOOL HookWSockConnect()
{
	if (!HookFunc("ws2_32.dll", "connect"))
		if (!HookFunc("wsock32.dll", "connect"))
			return FALSE;
	return TRUE;
}

typedef int (*HookedConnectFunc)(__in SOCKET, __in const struct sockaddr_in*, __in int);
int HookedConnect(SOCKET s, const struct sockaddr_in* name, int namelen)
{
	sockaddr_in* newSockAddr = new sockaddr_in();

	newSockAddr->sin_addr.s_addr = inet_addr(LOCALIP);
	newSockAddr->sin_port = name->sin_port;
	newSockAddr->sin_family = name->sin_family;

	Sleep(250);
	return hook->Orig<HookedConnectFunc>()(s, newSockAddr, namelen);
}
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Phantom (15.06.2013)
Старый 15.06.2013, 17:34   #3
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Ищу программу (описание в сообщении)

Эм. Я не кодю на С. Клиент - это flash приложение, которое загружается с сервера, причём может отличаться раз от раза, используются всякие фичи, исключающие его подмену. Не думаю, что каким-либо образом получится подключить к нему dll (но я в программировании под винды нуб). Прокси сервер хочу написать на php, ибо знаю его хорошо, опыт подобный есть, код можно менять быстро без перекомпилирования, ну и я уже знаю, что php справится с этим без проблем, так как делал подобное.
(Offline)
 
Ответить с цитированием
Старый 15.06.2013, 18:43   #4
jimon
 
Сообщений: n/a
Ответ: Ищу программу (описание в сообщении)

поковыряй свой роутер, там должна быть таблица routing, по-сути аналог host, ты там указываешь у какому ip пересылать запрос на требуемый ip

если лень ковырять роутер то поковыряй routing table у себя на компе, под виндой это так делается : http://www.microsoft.com/resources/d....mspx?mfr=true
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Phantom (15.06.2013)
Старый 15.06.2013, 18:51   #5
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Ищу программу (описание в сообщении)

В роутере (Dlink DIR300) уже всё вдоль и поперёк знаю, там не получается подобное реализовать (но если ошибаюсь, ткните носом). Сейчас читал про утилиту винды netsh, пробовал через неё, но по ходу тоже не получится. Сейчас почитаю про route.
(Offline)
 
Ответить с цитированием
Старый 15.06.2013, 19:05   #6
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Ищу программу (описание в сообщении)

ё#$%*!!! Сдуру выполнил команду route delete 127.0.0.1, теперь:

C:\Users\Phantom>ping 127.0.0.1

Обмен пакетами с 127.0.0.1 по с 32 байтами данных
:
Общий сбой.
Общий сбой.
Общий сбой.
Общий сбой.

Статистика Ping для 127.0.0.1:
    
Пакетовотправлено 4получено 0потеряно 4
    
(100потерь
Как вернуть как было? Выложите кто-нибудь листинг команды route print на семёрке
(Offline)
 
Ответить с цитированием
Старый 15.06.2013, 19:08   #7
jimon
 
Сообщений: n/a
Ответ: Ищу программу (описание в сообщении)

держи

 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Phantom (15.06.2013)
Старый 15.06.2013, 19:19   #8
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Ищу программу (описание в сообщении)

route -p add 127.0.0.1 mask 255.255.255.255 On-link metric 306 if 127.0.0.1
Сбой добавления маршрута
Параметр задан неверно
ЧЯДНТ?
(Offline)
 
Ответить с цитированием
Старый 15.06.2013, 19:27   #9
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Ищу программу (описание в сообщении)

Сообщение от Phantom Посмотреть сообщение
В роутере (Dlink DIR300) уже всё вдоль и поперёк знаю, там не получается подобное реализовать (но если ошибаюсь, ткните носом). Сейчас читал про утилиту винды netsh, пробовал через неё, но по ходу тоже не получится. Сейчас почитаю про route.
Вообще в DIR300 довольно убогая заводская прошивка, в качестве альтернативы можно попробовать DDWRT. Я сам обладатель DIR320 (отличается от 300 наличием USB-порта).
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 15.06.2013, 19:38   #10
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Ищу программу (описание в сообщении)

Проблему с 127.0.0.1 решил перезагрузкой компа. Догнал, что это не постоянный маршрут, а видимо создаваемый системой при старте.


Вообще в DIR300 довольно убогая заводская прошивка, в качестве альтернативы можно попробовать DDWRT. Я сам обладатель DIR320 (отличается от 300 наличием USB-порта).
Из всех роутеров, с какими имел дело, больше всех нравится DIR-300. Он все мои потребности пока удовлетворял. Встречал экзепляр какого-то длинка, в котором нельзя было на внешку 80 порт открыть, да и панель там была убогая какая-то. А вот DIR-300 меня устраивает.


Я жопой чую, что описанную в топике задачу можно решить софтварно, не завися от роутера.
(Offline)
 
Ответить с цитированием
Старый 15.06.2013, 19:40   #11
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Ищу программу (описание в сообщении)

Да вот мне тоже DIR300/320 нравится. Хоть и старенький, но зато дешёвый, надёжный и функцию свою хорошо исполняет. Но вот именно этой функции там нет, как и многих других более-менее "продвинутых".
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Phantom (15.06.2013)
Старый 15.06.2013, 23:04   #12
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Ищу программу (описание в сообщении)

Что-то нихера у меня не получается. Уже перепробовал всё, что можно. Пару прог качал, пробовал, не работает. Я не могу сформулировать гуглу то, что мне нужно. Обычно находятся программы, реализующие маппинг портов. Но они обрабатывают входящие соединения, а мне надо "подправить" исходящее соединие.

Кто-то задавался подобным вопросом до меня. Неутешительно: http://otvety.google.ru/otvety/threa...7ac1a5ba16b6a3

Какие будут идеи?
(Offline)
 
Ответить с цитированием
Старый 15.06.2013, 23:57   #13
jimon
 
Сообщений: n/a
Ответ: Ищу программу (описание в сообщении)

ну так, ты отправляешь трафик на другой комп, а он прикидывается что имеет такой же ip как программа хочет (впиши руками в опциях конекта), и всё =)

можешь даже попробовать на своем компе это проделать, только роутеру скорее всего об этом надо сказать чтобы инет то у тебя не отвалился
 
Ответить с цитированием
Старый 16.06.2013, 00:03   #14
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Ищу программу (описание в сообщении)

jimon, ты говоришь слишком абстрактно для меня. Поточнее и конструктивнее объясни, что ты предлагаешь?
(Offline)
 
Ответить с цитированием
Старый 16.06.2013, 00:05   #15
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Ищу программу (описание в сообщении)

Всегда на один и тот же ип соединение? Какой, если не секрет?
__________________
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 20:45.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com