Занимаюсь реверс инжинирингом одного мобильного клиента. На python написал mitm proxy. Проблема в том, что сервер детектит то что подключается не оригинальный клиент. Хотя, насколько я проверял, сервер не запрашивает сертификат клиента. Какие еще могут быть варианты детекта?
Клиент может передавать данные из сертификата (полученного от mitm), которые у сервера не сходятся со своими. Или клиент может получить какие-то данные от сервера, зашифровать их данными сертификата сервера и отправить назад. Хорошо б посмотреть обмен (если он хоть как-то читаем) до момента определения что клиент не родной.
Какие угодно. Клиент может передавать какую-нибудь "магическую последовательность" - ключ, по которому определяется "свой-чужой". Если обмен зашифрован - бесполезняк. Если есть расшифрованный оригинальный обмен - садиться и по пакетам разбирать, что и для чего передается.