Тема: Керування програмою TOR з іншої програми

Вітаю форумчани. Виникла потреба керувати програмою TOR, а саме надсилати сигнал на отримання нового вихідного ноду(простіше кажучи, отримання нового ip).
В самому TOR браузері це робиться доволі просто, але я не використовую його, а спрямовую увесь трафік через проксі, а відтак змінити вихідний нод просто натиснувши кнопку у браузері не маю можливості.
Постає питання, як через консоль надіслати програмі TOR сигнал для зміни вихідного ноду. Може хто уже стикався з таким ?

2

Re: Керування програмою TOR з іншої програми

Вибачте, який конкретно проксі на базі TORу ви використовуєте? obfsproxy?

Подякували: leofun011

3

Re: Керування програмою TOR з іншої програми

shell32.dll (якось так) підійде ?
Ним можна викликати фукції з іншої програми

4

Re: Керування програмою TOR з іншої програми

Назвіть ОС та перемістіть у розділ тієї ОС.

Re: Керування програмою TOR з іншої програми

koala написав:

Вибачте, який конкретно проксі на базі TORу ви використовуєте? obfsproxy?

Я просто запускаю сам TOR , потім в налаштуваннях своєї програми вказую використання проксі сервера 127.0.0.1:9150

shell32.dll (якось так) підійде ?
Ним можна викликати функції з іншої програми

В принципі мені підходить будь який варіант, проте як дізнатися яку саме функцію викликати ?

Назвіть ОС та перемістіть у розділ тієї ОС.

На жаль ОС windows( На Linux реалізується без проблем, а от з windows-ом мушу мучитися(

6

Re: Керування програмою TOR з іншої програми

проте як дізнатися яку саме функцію викликати ?

win api monitor я більше поки варіантів не знаю

7 Востаннє редагувалося raxp (20.01.2016 19:54:25)

Re: Керування програмою TOR з іншої програми

На Linux реалізується без проблем, а от з windows-ом мушу мучитися(

а ви не мучтеся, команда "SIGNAL NEWNYM" потрiбна. Задайте пароль для доступу до Тор по Telnet і пропишіть отриманий хеш в його конфіг. Також пропишіть порт доступу в параметрі ControlPort.

Тепер дивимося - під оболонкою Linux через:

#!/bin/sh
empty -f -i torin -o torout telnet 127.0.0.1 9051
empty -s -o torin "AUTHENTICATE \"tor_password\"\n"
empty -s -o torin "signal NEWNYM\n"
empty -s -o torin "quit\n"

Ніхто вам не заважає використовувати Telnet під Windows, хоч з PHP, хоч з батника. Виконання батника можна призначити на гарячу клавішу ярликом на робочому столі.

PHP + апач:

<?php
$fp=fsockopen('127.0.0.1',9051,$errno,$errstr);
if(!$fp){
    echo 'ERROR: '.$errno.' - '.$errstr.'<br>';
}else{
    fwrite($fp,'AUTHENTICATE "1234"'."\r\n");
    echo fread($fp, 60).'<br>';
    fwrite($fp,'SETEVENTS SIGNAL'."\r\n");
    echo fread($fp, 60).'<br>';
    fwrite($fp,'SIGNAL NEWNYM'."\r\n");
    echo fread($fp, 60).'<br>';
    fwrite($fp,'quit'."\r\n");
    echo fread($fp, 60).'<br>';
    fclose($fp);
}
?>
Подякували: 0xDADA11C7, leofun012

Re: Керування програмою TOR з іншої програми

raxp написав:

На Linux реалізується без проблем, а от з windows-ом мушу мучитися(

а ви не мучтеся, команда "SIGNAL NEWNYM" потрiбна. Задайте пароль для доступу до Тор по Telnet і пропишіть отриманий хеш в його конфіг. Також пропишіть порт доступу в параметрі ControlPort.

Тепер дивимося - під оболонкою Linux через:

#!/bin/sh
empty -f -i torin -o torout telnet 127.0.0.1 9051
empty -s -o torin "AUTHENTICATE \"tor_password\"\n"
empty -s -o torin "signal NEWNYM\n"
empty -s -o torin "quit\n"

Ніхто вам не заважає використовувати Telnet під Windows, хоч з PHP, хоч з батника. Виконання батника можна призначити на гарячу клавішу ярликом на робочому столі.

PHP + апач:

<?php
$fp=fsockopen('127.0.0.1',9051,$errno,$errstr);
if(!$fp){
    echo 'ERROR: '.$errno.' - '.$errstr.'<br>';
}else{
    fwrite($fp,'AUTHENTICATE "1234"'."\r\n");
    echo fread($fp, 60).'<br>';
    fwrite($fp,'SETEVENTS SIGNAL'."\r\n");
    echo fread($fp, 60).'<br>';
    fwrite($fp,'SIGNAL NEWNYM'."\r\n");
    echo fread($fp, 60).'<br>';
    fwrite($fp,'quit'."\r\n");
    echo fread($fp, 60).'<br>';
    fclose($fp);
}
?>

Пробував  я уже таке, проблема в тому, що коли задаю значення ControlPort в конфігу тору, то тор стартує не повністю.

Re: Керування програмою TOR з іншої програми

О, тепер став видавати помилку, що неможливо з'єднатися з портом керування TOR , хоча порт є відкритим

http://sunpic.me/OsZj8spT/bez-men.png

10

Re: Керування програмою TOR з іншої програми

коли задаю значення ControlPort в конфігу тору, то тор стартує не повністю.

покажiть, що ви разкомментували цю строку та задали хеш у HashedControlPassword, якщо вибрали авторизацiю по паролю.

Re: Керування програмою TOR з іншої програми

raxp написав:

коли задаю значення ControlPort в конфігу тору, то тор стартує не повністю.

покажiть, що ви разкомментували цю строку та задали хеш у HashedControlPassword, якщо вибрали авторизацiю по паролю.

# This file was generated by Tor; if you edit it, comments will not be preserved
# The old torrc file was renamed to torrc.orig.1 or similar, and Tor will ignore it
ControlPort 9051
DataDirectory "C:\\Users\\\317\356\357\356\342\\Desktop\\Tor Browser\\Browser\\TorBrowser\\Data\\Tor"
ExitNodes {ua}
GeoIPFile "C:\\Users\\\317\356\357\356\342\\Desktop\\Tor Browser\\Browser\\TorBrowser\\Data\\Tor\\geoip"
GeoIPv6File "C:\\Users\\\317\356\357\356\342\\Desktop\\Tor Browser\\Browser\\TorBrowser\\Data\\Tor\\geoip6"
HiddenServiceStatistics 0
StrictNodes 1

Строчку дописував сам, так як її закоментованої не було. Хеш не задавав.