Консольный SOCKS5 прокси-сервер

Файловые, p2p и прочие серверы

Консольный SOCKS5 прокси-сервер

Сообщение Sicness » 19 мар 2008, 18:47

Написал маленький консольный socks5 сервер, хочу поделиться. Сам socks5 основывается на исходниках, взятых с http://invisiblezone.net . Основные возможности и особенности:
1.Авторизация на socks5.
2.Возможность биндить на заданный интерфейс.
3.Все параметры задаются через командную строку, т.е. достаточно иметь telnet или аналогичное.
4.Маленький размер сервера. На данный момент порядка 24 576 байт.

Используется выхода в сеть через машину с запущенным socks5. При этом IP-адрес клиента остаётся скрытым для логов. Бытует мнение от специалистов, что socks5 не может скрыть IP-адрес клиента, это спорный вопрос, но, по крайней мере, в логах серверов, как правело, остаётся IP-адрес только socks-сервера.
Рассмотрим на практике пример использования. Допустим, у нас есть домашняя сеть, где 1 компьютер выходит в Интернет (будем условно называть сервером). Задача: дать возможность поиграть в World of Warcraft через север только одному другу, то есть, используя авторизацию. Рассмотрим способ решения через BHSocks5.v.1.1.win32.exe .
Строгое предупреждение от Администратора zk !!
Внимание!!!
Используйте данную программу исключительно на свой страх и риск.
Сервис вФОСе.ру не несёт никакой ответственности за использование данной программы.
Автор по личным причинам не захотел открыть исходный код программы, и проверить его нет никакой возможности.

Рассмотрим саму программку BHSocks5.v.1.1.win32.exe. Для удобства, положим её в корень C:\ и переименуем в Socks. Запускается Socks-сервер через консоль, по этому, его изучение будем проводить через командную строку. Откроем её:

Код: Выделить всёРазвернуть
Пуск -> Выполнить -> cmd


Пред нами откроется эмулятор MS DOS (одна из самых удачных ОС от MS) и приглашение вида:

Код: Выделить всёРазвернуть
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.

C:\Documents and Settings\Admin>


Если Вы находитесь не на диске C:, то перейдите на C: набрав:

Код: Выделить всёРазвернуть
C:


Поднимемся в корень диска:

Код: Выделить всёРазвернуть
Cd \ 


Теперь мы находимся в той же директории, где лежит Socks.exe. Начнём экспериментировать, попробуем запустить программу без параметров. Увидим следующее:
?
Код: Выделить всёРазвернуть
C:\>Socks
Welcome to FOS Black Hat Socks5
Version 1.1

USAGE:
socks.exe [--port <port>] [--login <login>] [--pass <password>] [--bind <IP>]

   Use       For
--port    Set special port for socks5
--login   Set login for Auth
--pass    Set password for Auth
--bind    Set your special IP for listen

Example: socks.exe --port 1080 --login admin --pass PaSsWoRd


Внимательно ознакомившись с инструкцией, мы понимаем синтаксис параметров =). Не указанные параметры принудительно, будут инициализироваться значениями по умолчанию. Если не указан параметр --bind, то программа попытается автоматический получить Ваш IP-адрес и «забиндить» на него. Попробуем запустить наш socks:

Код: Выделить всёРазвернуть
socks.exe --port 1080 --login Ivan --pass MyFriend


В случае успеха, мы увидим нечто похожее на следующее:
?
Код: Выделить всёРазвернуть
C:\>socks.exe --port 1080 --login Ivan --pass MyFriend
Welcome to FOS Black Hat Socks5
Version 1.1

|=========|============================
|Port    | 1080
|Login   | Ivan
|Password | MyFriend
|SpecBind |  False
|=========|============================

Socks started on [10.0.0.139:1080]


После приветствия, в табличке будут указаны инициализированные параметры, т.е. socks запущен на 1080 порту, при авторизации будет требовать логин «Ivan» и пароль «MyFriend». SpecBind указывает на то, что адрес не был задан явно и будет определён автоматический. Последняя строка должна нас радовать, ибо она повествует нам о том, что socks удачно запустился и ждет соединения с ним клиентов на 10.0.0.139:1080. В данном случае 10.0.0.139 мой локальный адрес в сети, у Вас , наверное, будет иное. Если адрес нужного сетевого интерфейса определён не верно, то его можно задать с помощью параметра --bind <IP>. В моём случае это:

Код: Выделить всёРазвернуть
C:\>socks.exe --port 1080 --login Ivan --pass MyFriend --bind 10.0.0.139


И так, мы удачно запустили socks-сервер. Теперь можно запускать через него поддерживающие его сетевые программы, например клиент ICQ. Но, увы, далеко не все сетевые программы умеют сами работать через socks и нам придётся им помочь. А нам, в свою очередь, поможет популярная программа русских корней “FreeCap” (ссылка на него прилагается). Устанавливаем у клиента Freecap, запускаем. Первым делом настроем программу на соединение с нашим socks5.
Файл -> Настройки -> Настройки прокси
freecap_options.JPG

Вносим наши настройки и жмем ок. Далее добавляем программу, которую мы хотим запустить через socks:
Код: Выделить всёРазвернуть
Файл -> Новое приложение

Заполняем форму, указав адрес до необходимой программы (я введу Opera, А Вы правда можете попробовать WoW)
Вот и всё. Тем самым мы можем решить 2 проблемы: дать доступ соседним компьютерам в сеть в которую доступа они не имеют и попробовать скрыть IP-адрес клиета.
В последущей версии может быть добавлю возможность регистрации в автозапуск и верификацию на валидность параметров. И, наверное, слушаю Вас.

Линки по теме:
BHSocks5.v.1.1.win32.rar

Security Team "FOS Black Hat"
Последний раз редактировалось Sicness 04 авг 2009, 20:12, всего редактировалось 1 раз.
ИзображениеИзображение
Алкоголь и никотин нас убивают,
Опускают, унижают,
Паранойю развивают,
Мозг твой нах*й разрушают!
Аватара пользователя
Sicness
Автор
 
Сообщения: 198
Зарегистрирован: 31 дек 2007, 11:29

Re: Консольный SOCKS5 прокси-сервер

Сообщение zk » 19 мар 2008, 21:09

От себя добавлю что неплохо было-бы всё таки открыть исходный код сервера, а так-же добавить для начала функции для авторизации нескольких пользователей, например из файла.
zk
Администратор
 
Сообщения: 1972
Зарегистрирован: 02 сен 2007, 16:04
Домен: vfose.ru

Re: Консольный SOCKS5 прокси-сервер

Сообщение Rostov114 » 19 мар 2008, 21:36

zk писал(а):От себя добавлю что неплохо было-бы всё таки открыть исходный код сервера, а так-же добавить для начала функции для авторизации нескольких пользователей, например из файла.
=) Кому он нужен Вам, DPX-Infiniti, и еще паре тройке людей...
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3183
Зарегистрирован: 18 окт 2007, 02:21
Откуда: Россия ( Саратов / Ростов-на-Дону )

Re: Консольный SOCKS5 прокси-сервер

Сообщение zk » 19 мар 2008, 21:40

=) Кому он нужен Вам, DPX-Infiniti, и еще паре тройке людей...

Открытие исходного кода позволило бы проверить сервер на наличие ошибок и закладок, а так же расширять его функциональность всем кому это требуется.
В общем пример такого проекта - Linux, я думаю комментарии излишни, прекращаем флуд!
zk
Администратор
 
Сообщения: 1972
Зарегистрирован: 02 сен 2007, 16:04
Домен: vfose.ru

Re: Консольный SOCKS5 прокси-сервер

Сообщение Sicness » 19 мар 2008, 22:10

zk писал(а):... а так-же добавить для начала функции для авторизации нескольких пользователей, например из файла.

ИМХО не стоит раздувать из этого usergate. Программа тем и хороша, что маленькая и имеет минимум настроек для минутного и разового поднятия socks-сервера без заморочек. Если хотите такой функционал, как авторизация по списку пользователей, то видимо у Вас стратегические цели и Вам лучше использовать профессиональное программное обеспечение с широким функционалом. Если только не преследовать цель мобильного нормального socks-сервера...

P.S.
Freecap работает со всеми популярными видами proxy/socks и имеет очень интересную функцию создания целой цепочки из proxy/socks.
ИзображениеИзображение
Алкоголь и никотин нас убивают,
Опускают, унижают,
Паранойю развивают,
Мозг твой нах*й разрушают!
Аватара пользователя
Sicness
Автор
 
Сообщения: 198
Зарегистрирован: 31 дек 2007, 11:29

Re: Консольный SOCKS5 прокси-сервер

Сообщение Sicness » 04 авг 2009, 19:16

Нашел бинарники и исходники сокса :) Кто хочет дописать/улучшить, дерзайте. Язык Delphi. Если реально кто захочет, опубликуем на git сервере..
Вложения
BHSocks5.v.1.1.win32.rar
Исходники + бинарник
(39.87 Кб) Скачиваний: 44549
Аватара пользователя
Sicness
Автор
 
Сообщения: 198
Зарегистрирован: 31 дек 2007, 11:29

Re: Консольный SOCKS5 прокси-сервер

Сообщение Kazakov » 12 окт 2009, 11:01

Не одной рабочей ссылки =(
Дайте рабочие ссылки плизз
Аватара пользователя
Kazakov
Начинающий участник
 
Сообщения: 13
Зарегистрирован: 21 окт 2007, 00:01

Re: Консольный SOCKS5 прокси-сервер

Сообщение Sicness » 13 окт 2009, 21:20

Kazakov писал(а):Не одной рабочей ссылки =(
Дайте рабочие ссылки плизз

Да, боюсь что все исторический погибло из-за не востребованности.
Use "bouncer" for win32 - more pro soft for this.
Аватара пользователя
Sicness
Автор
 
Сообщения: 198
Зарегистрирован: 31 дек 2007, 11:29


Вернуться в Прочие серверы и сетевые технологии

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

cron