![]() |
Автозагрузка 3proxy и др. через службы
Вобщем это моя первая статья и т.к. сам я новичок, то ничего особенного тут не будет.
Получив доступ к одному компу чайника в локалке мне захотелось поставить на нем прокси. Но как это сделать незаметно? Вот об этом я и расскажу. В сети полно различных прокси серверов, но мне был необходим максимально незаметный. Мой выбор остановился на 3proxy, т.к. все его настройки хранятся в отдельном файле, нет никаких значков в трее, возможность работы как служба. 3proxy поддерживает HTTP, SOCKSv4/SOCKSv4.5/SOCKSv5, FTP proxy и многое другое. Обо всех возможностях можете прочитать на 3proxy.ru Сейчас большинство пользователей знают что многие программы прописывают себя в реестр для автозагрузки и периодически проверяют это с помощью msconfig или других программ, но на службы обращают внимание очень редко. Некоторые даже о них ничего не слышали… Немного о службах http://ru.wikipedia.org/wiki/Службы_Windows Теперь качаем 3proxy тут. Наш прокси в папке bin. Установить как службу можно так C:\Program Files\3proxy\3proxy.exe --install C:\Program Files\3proxy\3proxy.cfg Но при этом выскакивает запрос с подтверждением http://i073.radikal.ru/0807/e5/3993127a18ef.png Поэтому такой вариант нам совсем не подходит и мы будем создавать службу вручную. Все настройки служб хранятся в реестре HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es. Параметры, которые необходимы для работы службы: Description - описание службы DisplayName - имя службы, отбражаемое в списке всех служб ErrorControl - критичность ошибок службы для работы системы. Обычно устанавливают 0 ImagePath - путь к исполняемому файлу ObjectName - имя пользователя, от которого будет запущена служба. Ставим LocalSystem чтоб запускать с правами system Start - тип запуска. Для запуска при старте системы ставим 2. Type - тип службы. Этот параметр отличает службы от драйверов. Здесь надо поставить значение 16 (десятичная) Маскировка. Переименовываем 3proxy.exe в svсhost.exe, НО букву с пишем русскую для того чтобы закинуть в system32. Файл конфигурации назовем например comand.drv Кстати о файле конфигурации, моей целью было поднять socks, поэтому пишем в нем следующее: Код:
auth noneСоставим reg-файл, записав туда все настройки нашей службы, причем нужно придумать параметры Description и DisplayName, а также название службы, которые не будут вызывать подозрений. У меня она будет называться Net client Код:
Windows Registry Editor Version 5.00Теперь напишем bat файл для невидимой установки нашей службы. Код:
chcp 1251Этот батник добавляет правило в фаерволл windows и разрешает соединение для порта 2323, устанавливает на файл svchost и comand.drv атрибуты скрытый, системный и только для чтения, импортирует настройки нашей службы. Остальные команды для удаления нашего будущего sfx архива, просто добавил под разлчные случаи. Если вы внимательно посмотрели на батник, то заметили что в последней команде есть файл st.exe, о котором я ничего не писал. Это и есть наш батник =] Все знают что когда батник срабатывает, то видно черное окно командной строки, которое вызывает много подозрений. Есть способ его спрятать. Для этого нам понадобится программа Quick Batch File Compiler (можете скачать тут ) Эта программа предназначена для преобразования bat в exe, а также есть офигенная функция – скрывать этот долбанный квадрат Малевича. Жмем option и выбираем Ghost application, затем заносим содержимое батника в прогу, жмем Build и сохраняем под именем st.exe Все практически готово, осталось только собрать это в одну кучу. Берем наш svchost.exe, command.drv, st.reg, st.exe и все остальные файлы из папки bin, жмем добавить в архив, выбираем бес сжатия (для того чтоб быстрее сработал, хотя кому как нравится), отмечаем sfx архив, имя архива update.exe, затем переходим во вкладку дополнительно/параметры sfx. На вкладке Общие указываем путь для распаковки C:\WINDOWS\system32, в поле “Выполнить после распаковки” пишем C:\WINDOWS\system32\st.exe Теперь переходим в вкладку Режимы и отмечаем “Скрывать все” и “Пропускать существующие файлы”, жмем ок. Осталось только впарить наш файл жертве или если есть доступ к диску С закинуть в папку автозагрузка (в этом случае прокси заработает через две перезагрузки, автоматически удалив update.exe из папки автозагрузка). Этот способ можно использовать для любой программы, которая умеет работать как служба (например радмин - https://forum.antichat.ru/thread13658.html и Telnet - https://forum.antichat.ru/thread68300.html ) Я решил проверить, что будет если подсунуть в качестве службы обычную прогу, например калькулятор :) При загрузке он запускается, но его не видно на экране. Затем винда через секнд 10-15 его отключает. Этого времени достаточно чтобы запустить например трой, но работает калькулятор или нет я так и не понял. Может он просто завис… Я снова открыл Quick Batch File Compiler и написал такой батник Код:
echo Segodnya %date%:%time%>>c:\otchet.txt=================================== UPD: исправил кавычки, добавил видео. Скачать можно тут или тут pass: antichat.ru |
Хороший ликбез по установке служб...
+2 Я тож такой фигней одно время в локале страдал. Только другой сокс навешивал. И джоинить приходилось. правда над фаером не стебался =) |
В 3proxy-0.6-devel и 3proxy-0.5.3k отсутствует аргумент "--service". Справка выдаёт:
C:\3proxy --service Usage: 3proxy [conffile] 3proxy --install [conffile] to install as service 3proxy --remove to remove service 3proxy tiny proxy server 3proxy-0.6b-devel (080826163128) (c)2000-2007 3APA3A, Vladimir Dubrovin & 3proxy.ru Documentation and sources: http://3proxy.ru/ Please read license agreement in 'copying' file. You may not use this program without accepting license agreement В чём может быть проблема? |
Читай внимательней
C:\Program Files\3proxy\3proxy.exe --install C:\Program Files\3proxy\3proxy.cfg |
Да, но в реестр в службы пишется: "ImagePath"=”C:\\WINDOWS\\system32\\svсhost .exe C:\\WINDOWS\\system32\\comand.drv --service”
Вот ещё такой вопрос: Ведь если у нас сам сервер ложится в каталог system32, то можно записать в реестр не абсолютный путь, а локальный. т.е. не "C:\\WINDOWS\\system32\\svсhost.exe" а просто "svсhost.exe" или нельзя? и соответственно можно ли писать не "C:\\WINDOWS\\system32\\comand.drv", а "comand.drv"?? |
=) Хорошый мануал по 3прокси. почерпнул для себя немного.
По работе с лужбами интересненько. |
не у всех винда на c:, не у всех в папке windows.
|
вот, а алгоритм и последовательность поиска требуемых файлов один:
1. Текущий каталог 2. Папка system32 3. Папка windows если мне не изменят память. Так что всё должно работать и с относительными путями. Кто-нибудь напишет результат выполнения у себя ”C:\\WINDOWS\\system32\\svсhost.exe C:\\WINDOWS\\system32\\comand.drv --service” или эквивалентов в вашем случае. У меня 3proxy идёт в отказ и говорит, что не понимает о чём я: о каком "--service"? |
Цитата:
"ImagePath"=hex(2):22,00,43,00,3a,00,5c,00,57,00,4 9,00,4e,00,44,00,4f,00,57,00,\ 53,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33 ,00,32,00,5c,00,73,00,79,\ 00,73,00,74,00,65,00,6d,00,33,00,32,00,2e,00,65,00 ,78,00,65,00,22,00,20,00,\ 22,00,43,00,3a,00,5c,00,57,00,49,00,4e,00,44,00,4f ,00,57,00,53,00,5c,00,73,\ 00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00 ,63,00,6f,00,6d,00,61,00,\ 6e,00,64,00,2e,00,64,00,72,00,76,00,22,00,20,00,2d ,00,2d,00,73,00,65,00,72,\ 00,76,00,69,00,63,00,65,00,00,00 а так просто он не добавляеться C:\\WINDOWS\\system32\\svсhost.exe C:\\WINDOWS\\system32\\comand.drv --service” Ps почти у все стоит виндовс на диске С)) |
а я исправлял исходники, чтоб не выводило запрос на установку :d
зы C:\\windows можно заменить на %windir% чтоб универсальнее было ;) |
| Время: 00:01 |