Вам когда-нибудь хотелось странного? Например запустить drozer в docker-контейнере и достучаться с него до эмулятора на том же хосте? Казалось бы задача предельно простая и понятная. Запускаем эмулятор, на нем drozer-agent
, пробрасываем порты, заводим контейнер говорим drozer console connect —server <locahost ip>
и…. ничего не происходит. При этом если попытаться таким образом подключиться на девайс, который висит на другом ip, то все будет хорошо. Давайте разбираться и чинить.
Создаем reverse proxy с mTLS на Ktor
Если вы любите интегрироваться с внешними системами, которые придерживаются высоких стандартов безопасности, то наверняка сталкивались с такой штукой как Mutual TLS (aka взаимная TLS аутентификация или mTLS). Ничего особенно сложного в такой интеграции нет. За исключением двух нюансов:
- Интеграцию придется делать в каждом сервисе
- В каждый сервис нужно положить клиентские сертификаты для прохожения хэндшейка mTLS
И если с первым нюансом можно как-то жить и мириться, то второй уже вызывает гораздо больше проблем и приводит к грустным лицам вашей команды инфобеза. Чтобы сделать их снова счастливыми, а заодно ликвидировать потребность писать один и тот же код в каждом сервисе — можно сделать умный reverse proxy, который возьмет на себя все тяготы и лишения связанные с хэндшейком и возможно какой-то другой дополнительной логикой, которую накрутили авторы внешней системы. Делать это хозяйство будем на Ktor, потому что почему бы и нет ;)
[Далее]Старый Drozer MacOS не испортит
Drozer - The Leading Security Assessment Framework for Android.
Обычно я не использую Drozer, а еще реже (никогда) я использую его на MacOS. Обычно это все уже есть в Kali Linux и устанавливать ничего не нужно. Но необходимость появилась, а вместе с ней пришлось знатно покувыркаться и поправить скрипты самого Drozer-а чтобы все заработало. После чего я все удалил, потому что в системе было знатно насрано после всех этих замечательных туторилов и issue на гитхабе. В итоге стало понятно, что есть два нормальных способа установки. Через Docker, и так как показано ниже. Все остальное - зло, ад и слезы по бездарно потраченным часам жизни.
[Далее]