Tor и RPi

Тема в разделе "Этичный хакинг и тестирование на проникновение", создана пользователем ghost, 10 ноя 2016.

Наш партнер Genesis Hackspace
Метки:
  1. ghost

    ghost penetration testing
    Grey Team

    Регистрация:
    12 май 2016
    Сообщения:
    169
    Симпатии:
    138
    Вдохновившись своей темой решил написать продолжение. Домашний компьютер/ноутбук не может быть всегда включен. А RPi может. Поэтому...
    Реализовываем создание своего onion-сайта в сети TOR на Raspberry Pi, чтобы он всегда был доступен.

    Нам понадобится RPi, адаптер питания 5V 2A DC, карта памяти min 4Gb, USB-адаптер (лучше ALFA или TP-Link), Для первого подключения клавиатура, HDMI кабель и зомбоящик.

    Будем использовать Raspbian Jessie Lite образ скачиваем отсюда или отсюда.
    Сверили контрольные суммы:
    sha1sum

    3a34e7b05e1e6e9042294b29065144748625bea8

    Распаковываем архив, подключаем карту памяти и записываем образ:

    dd if=2016-09-23-raspbian-jessie-lite.img.img of=/dev/mmcblk0

    Первый запуск. Вставим карту памяти в RPi, подключим клавиатуру и USB-адаптер. Соединим по HDMI шнуру с зомбоящиком. Подключаем адаптер питания. Пойдет первая загрузка. Образ Raspbian небольшой, автоматом расширится все дисковое пространство карты памяти. Когда выскочит на экран ввода логина/пароля, введите pi/raspberry. Дальше будет ОЧЕНЬ много команд!

    Сменим пароль пользователя pi

    passwd
    Перейдем в суперпользователя root
    sudo -i
    и так же сменим пароль
    passwd
    желательно не такой же, как у пользователя pi. Добавим пользователя pi к sudo
    usermod -g sudo pi
    редактируем
    visudo
    находим строки

    # User privilege specification
    root ALL=(ALL:ALL) ALL
    добавляем ниже

    # Allow members of group sudo to execute any command
    pi ALL=(ALL:ALL) ALL
    меняем
    nano /etc/hosts
    и
    nano /etc/motd
    на что то другое вместо raspberry. Так же заменим MOTD – Message of the Day banner
    nano /etc/motd
    Создать вашу собственную картинку ASCII можно здесь, затем вставить ее в MOTD.
    Поправим SSH, так как будем подключаться по нему
    nano /etc/ssh/sshd_config
    Для защиты от брутфорса запретим подключаться через root и сменим порт с 22 на другой
    PermitRootLogin no

    Port 2282
    Настраиваем SSH для постоянной работы
    update-rc.d -f ssh remove
    update-rc.d -f ssh defaults
    cd /etc/ssh/
    mkdir original_keys
    mv ssh_host_* original_keys/
    dpkg-reconfigure openssh-server
    Подключаться будем по wi-fi.
    Приводим
    nano /etc/wpa_supplicant/wpa_supplicant.conf
    к виду
    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
    country=GB

    network={
    ssid="точка доступа"
    psk="пароль"
    key_mgmt=WPA-PSK
    }
    Добавим автовход без ввода логина/пароля
    sudo -i
    mkdir -pv /etc/systemd/system/getty@tty1.service.d
    nano /etc/systemd/system/getty@tty1.service.d/autologin.conf
    в autologin.conf вводим и сохраняем
    [Service]
    ExecStart=
    ExecStart=-/sbin/agetty --autologin pi --noclear %I 38400 linux
    перезагружаем RPi
    reboot
    зайдя под пользователем pi автоматически проверим, появилось ли автоматическое интернет-подключение
    ping google.com
    и узнаем свой IP-адрес
    hostname -I
    клавиатуру и HDMI можно отключить. Будем соединяться по SSH
    ssh pi@ip_address -p 2282
    если не хотите каждый раз вводить пароль, то можно сделать аутентификации по ключам.
    генерируем пару ключей на локальной машине
    ssh-keygen
    устанавливаем открытый ключ на удаленном сервере
    ssh-copy-id -i ~/.ssh/id_rsa.pub pi@ip_adress -p 2282
    добавляем секретный ключ в агент аутентификации на локальной машине
    ssh-add
    пора обновить систему
    apt-get update

    apt-get upgrade
    если хотим сгенерировать красивый адрес для сайта, то нам понадобится СТАРАЯ версия Kali Linux! Я использовал 1.0.6 На новых не заработало. Можно найти в архивах. Нарезаем на болванку/делаем live-usb. Прогружаемся в систему. Подключаемся к сети. Далее в ход пойдет Shallot.
    Shallot позволяет создавать настроенные адреса .onion для скрытых сервисов Tor. Часть адреса может быть произвольной. Для установки загрузим Shallot с github
    wget https://github.com/katmagic/Shallot/archive/master.zip
    распакуем
    unzip master.zip
    перейдем в директорию
    cd Shallot-master
    далее
    ./configure

    make
    и запускаем для примера
    ./shallot ^penis
    ------------------------------------------------------------------
    Found matching domain after 30493976 tries: penistfobso4wxhr.onion
    ------------------------------------------------------------------
    -----BEGIN RSA PRIVATE KEY-----
    MIICXgIBAAKBgQC+dO6h1GjQD0Hqn2LLBX0kIA9px/CtxV5yxMCjbk773igLvXDu
    v7N9Kr1FYB+yKuSWL/aCZttLqiqUA4L3cxI5Dgtk3bRKkmZre9qfH9xU9v+RSr5P
    BQmtp0AMi2wLiZxGggkoqcdIhKC4WWoD1xks0H//f7D+G+rdh4IMOHj7kQIEAPC0
    RQKBgAwEVw9kxxu/SIugn3dDXJ2tq8V/uGNMBm02MnhckgvIS6S9wfB60mjy3FG/
    SUPCWE/f5pUx8fNb3aPnIg2C5FlSE8hAfzdVBIP5F3S2KacSeCL+DPgCpcM8Tkfh
    s5AaqHe5Z+cb2pLE/1VXQpnnSQhLuSQFresIMCxnaBjOizzJAkEA4laycqQo2Guu
    eGkppcdNDRnlI4+bCslp2C4ZOuv8/DaLsQ/UE+RMrhdmJi48bcGBafcQlfewdyvL
    FpF6cpzjtQJBANdqdFilmRwCi1Ij4Q3dBubjjo5+WzxeZ0A6M6g5HDPFZBuHoXtI
    LNbSz5ilriQQ8fhKZi1HpwVWhNNLyIB3me0CQCdn1d98SwNP+gIfyvYT5ufxoBfH
    ElngrkQr4rYhsbCmSorxfen9gxI1hQVy4DsbTfttzSwJmOZ5P/CBG+HPFjUCQQCB
    gWh+P0wOCUDfkRDXdVd1Tb/7nbPbk8r+VlVgnz7fMNPYzjVkq2DTsRvk8uWTdMwQ
    bTDrrSiO0Wv5zxmMocT9AkEAkLfNSgZafRVmipGo9Fn78ZqedvZAqfYkwXgoIfrB
    MEq+FK1D3nyY9QDukbe6uR7k8gTfqTtqiHwIQ5JX7u6v7w==
    -----END RSA PRIVATE KEY-----
    замените "член" именем, которое хотите. Стоит помнить, что чем больше символов вы введете, тем тольше времени уйдет на генерацию. Оптимально не более 6. Полученный вывод сохраните в текстовый файл и пока сохраните на внешний носитель
    установим необходимые пакеты
    apt-get install tor
    apt-get install lighttpd
    далее стартуем tor и lighttpd
    service tor start
    service lighttpd start
    чтобы они создали конфигурации. В /etc/tor/torrc раскомментируем и приведем к такому виду строки
    HiddenServiceDir /var/lib/tor/hidden_service/
    HiddenServicePort 80 127.0.0.1:8123
    и в самом низу добавим это
    ExcludeNodes {ru}, {ua}, {be}
    устранит подключения Tor к *** нодам. Сохраним и выйдем
    в /var/lib/tor/hidden_service есть два файла hostname и private_key
    в первом имя вашего onion сайта, а во втором - уникальный приватный ключ.
    у вас должен остаться полученный вывод в текстовом файле. Вот из него то и подставьте значения в эти два файла. Для примера в hostname впишите penistfobso4wxhr.onion а в private_key
    -----BEGIN RSA PRIVATE KEY-----
    MIICXgIBAAKBgQC+dO6h1GjQD0Hqn2LLBX0kIA9px/CtxV5yxMCjbk773igLvXDu
    v7N9Kr1FYB+yKuSWL/aCZttLqiqUA4L3cxI5Dgtk3bRKkmZre9qfH9xU9v+RSr5P
    BQmtp0AMi2wLiZxGggkoqcdIhKC4WWoD1xks0H//f7D+G+rdh4IMOHj7kQIEAPC0
    RQKBgAwEVw9kxxu/SIugn3dDXJ2tq8V/uGNMBm02MnhckgvIS6S9wfB60mjy3FG/
    SUPCWE/f5pUx8fNb3aPnIg2C5FlSE8hAfzdVBIP5F3S2KacSeCL+DPgCpcM8Tkfh
    s5AaqHe5Z+cb2pLE/1VXQpnnSQhLuSQFresIMCxnaBjOizzJAkEA4laycqQo2Guu
    eGkppcdNDRnlI4+bCslp2C4ZOuv8/DaLsQ/UE+RMrhdmJi48bcGBafcQlfewdyvL
    FpF6cpzjtQJBANdqdFilmRwCi1Ij4Q3dBubjjo5+WzxeZ0A6M6g5HDPFZBuHoXtI
    LNbSz5ilriQQ8fhKZi1HpwVWhNNLyIB3me0CQCdn1d98SwNP+gIfyvYT5ufxoBfH
    ElngrkQr4rYhsbCmSorxfen9gxI1hQVy4DsbTfttzSwJmOZ5P/CBG+HPFjUCQQCB
    gWh+P0wOCUDfkRDXdVd1Tb/7nbPbk8r+VlVgnz7fMNPYzjVkq2DTsRvk8uWTdMwQ
    bTDrrSiO0Wv5zxmMocT9AkEAkLfNSgZafRVmipGo9Fn78ZqedvZAqfYkwXgoIfrB
    MEq+FK1D3nyY9QDukbe6uR7k8gTfqTtqiHwIQ5JX7u6v7w==
    -----END RSA PRIVATE KEY-----
    в /etc/lighttpd/lighttpd.conf изменим значения
    server.document-root = "/var/www/onion"
    server.error-handler-404 = "/404.php"
    server.tag = "Ваше значение"
    server.port = 8123
    $HTTP["remoteip"] !~ "127.0.0.1" {
    url.access-deny = ( "" )
    }
    server.dir-listing = "disable"
    современные веб-технологии предусматривают широкое использование "движков", для поддержки которых требуются PHP и MySQL, поэтому самое время добавить их к нашему серверу. Сначала установим PHP
    apt-get install php5-cgi
    затем в /etc/php/cgi/php.ini найдем и раскомментируем следующую строку
    cgi.fix_pathinfo = 1
    теперь включим поддержку PHP в lighttpd
    lighttpd-enable-mod fastcgi
    lighttpd-enable-mod fastcgi-php
    следующим шагом установим сервер баз данных MySQL и модуль PHP для работы с ним (Можете пропустить, если сайт будет без БД)
    apt-get install mysql-server mysql-client php5-mysql
    по умолчанию MySQL сервер использует кодировку latin1, в то время как большинство современных движков работают в UTF-8. Поэтому откроем /etc/mysql/my.cnf и добавим в секции [client] и [mysqld] следующие строки
    [client]
    default-character-set=utf8

    [mysqld]
    character_set_server=utf8
    collation_server=utf8_unicode_ci
    об управлении БД в mysql я рассказывать не буду. Это отдельная тема
    в /var/www/ создаем папку onion (не забудьте установить права)
    chown www-data:www-data /var/www/onion
    chmod 775 /var/www/onion
    usermod -a -G www-data pi
    dаш сайт разместим в ней. Создадаем проверочную HTML страницу и сохраняем ее под именем index.html
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Тестовая страница</title>
    </head>
    <body>
    <h2>Site Local </h2>
    <h3> Тестовая страница.</h3>
    <p> Веб-сервер работает и настроен правильно. </p>
    </body>
    cоздадаем PHP страницу ошибки и сохраняем ее под именем 404.php
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>404</title>
    </head>
    <body>
    <h2>Site Local </h2>
    <h3> Ошибка 404.</h3>
    <p> Страница не найдена. </p>
    </body>
    перезапустим службы
    service tor restart
    service lighttpd restart
    service mysql restart
    и добавим в автозагрузку
    update-rc.d tor enable
    update-rc.d lighttpd enable
    update-rc.d mysql enable
    в tor-браузере переходим на ВАШ сгенерированный onion адрес, например penistfobso4wxhr.onion и видим результат!
    желательно добавить в /root/***/tor-browser_en-US/Browser/TorBrowser/Data/Tor/torrc в самый низ строку ExcludeNodes {ru}, {ua}, {be}
    теперь, чтобы запустить сайт, достаточно воткнуть вилку в розетку и чтобы wi-fi был доступен
    P. S. От себя замечу, что можно использовать тяжелые движки для сайта, но я бы порекомендовал opensource, можно найти в интернете на том же github
    flatpress - блог без БД
    lechat - чат с БД
    fluxbb - форум с БД
     
    sosiskapi, valerian38, Георгий и 2 другим нравится это.
  2. NSIS

    NSIS New Member

    Регистрация:
    9 ноя 2016
    Сообщения:
    3
    Симпатии:
    2
    Спасибо за статью!!! А можно так для metasploita сервер сделать?
     
    ghost нравится это.
  3. ghost

    ghost penetration testing
    Grey Team

    Регистрация:
    12 май 2016
    Сообщения:
    169
    Симпатии:
    138
    Не задумывался. Думаю все возможно...
     
  4. ghost

    ghost penetration testing
    Grey Team

    Регистрация:
    12 май 2016
    Сообщения:
    169
    Симпатии:
    138
    Добавлю к теме, что если нет возможности подключаться по wi-fi, то можно реализовать соединение через USB-свисток. Ищем по поисковым запросам "sakis3g Raspberry Pi". Там и перепрошить модем под любые сим карты можно и автозагрузку и автоподключение настроить...
     
    #4 ghost, 18 ноя 2016
    Последнее редактирование: 24 ноя 2016
    kot-gor нравится это.
  5. Ishikawa

    Ishikawa Well-Known Member
    Команда форума Grey Team

    Регистрация:
    15 ноя 2016
    Сообщения:
    105
    Симпатии:
    113
    А разве большой брат не видит, что у вас на линии onion? ;)
     
    BaJIepraH и ghost нравится это.
  6. ghost

    ghost penetration testing
    Grey Team

    Регистрация:
    12 май 2016
    Сообщения:
    169
    Симпатии:
    138
    Для него настрой цепочку VPN-Tor. А для защиты от тайминг-атак используй Random Traffic Generator (С github исчез. Выложу копию сюда, может пригодится кому). Пусть забьет канал информационным мусором...
     

    Вложения:

    • rtg.zip
      Размер файла:
      4,8 КБ
      Просмотров:
      3
    #6 ghost, 21 ноя 2016
    Последнее редактирование: 28 ноя 2016
    BaJIepraH, WebWare Team и Ishikawa нравится это.
  7. DSCH

    DSCH New Member

    Регистрация:
    7 дек 2016
    Сообщения:
    4
    Симпатии:
    0
    Сможеш с Картинки оформит тему или лучшее снять видео буду благадорень !
     
  8. ghost

    ghost penetration testing
    Grey Team

    Регистрация:
    12 май 2016
    Сообщения:
    169
    Симпатии:
    138
    Думаю нет. Тут и так все разжевано.

    P.S.

    Иногда бывает что в доме отключают свет и после его включения Paspberry Pi запускается, но Tor и службы lighttpd и mysql не запускаются вместе с ним. Чтобы это исправить:
    Код (Text):
    sudo nano /etc/crontab
    И в конец файла добавьте эту строчку:
    Код (Text):
    @reboot pi service tor start && service lighttpd start && service mysql start
    Выключите электроэнергию и проверьте что после включения Tor и службы lighttpd и mysql на Paspberry Pi сами запустятся.
     
    ghostphisher нравится это.
Загрузка...

Поделиться этой страницей