Używam NETunnelProviderManager w "routingu według docelowego adresu IP" i jestem w stanie uzyskać ruch IP z różnych aplikacji na urządzeniu.
Wyzwanie, jakie mam, polega na tym, że muszę określić, z której aplikacji pochodzi każdy pakiet, dzięki czemu mogę filtrować i blokować ruch w razie potrzeby, dzięki czemu mogę zapobiec tworzeniu fałszywej aplikacji w celu uzyskania dostępu do lokalizacji wewnętrznej. Używanie trybu „na aplikację” NETunnelProviderManager nie jest możliwe, ponieważ nie używam MDM.
Wydaje się, że gdybym miał dostęp do tabeli TCB systemu (lub dostęp do tabeli TCB dla każdego procesu), mógłbym to zrobić, ale wygląda na to, że iOS nie publikuje tych informacji i nie znalazłem żadnych prywatnych interfejsów API, aby uzyskać ta informacja na urządzeniu bez jailbreaku.
Jakieś pomysły?
Odpowiedzi:
Mówi on konkretnie o specyfikacjach NETunnelProvidermanager, „Jedynym sposobem konfiguracji„ na aplikację ”VPN jest MDM…”, więc pod względem głównego nurtu sposób spełnienia wszystkich Specyfikacje Apple , i przynajmniej w kontekście Apple Stack Exchange , wydaje się, że nie byłoby to możliwe. Mam nadzieję, że ktoś inny, lub ja, znajdzie dla ciebie ładne obejście, jeśli to nie zadziała.
Jedna wskazówka: dyskutuje bezpośrednio pod ustawieniami VPN, w przewodniku specyfikacji, jak skonfigurować VPN na żądanie, a jeśli nie jest wymagane, aby sieć VPN była „zawsze włączona”, można spełnić określone wymagania cel tylko przez utworzenie niezbędnych certyfikatów.
Być może wolisz tworzyć pliki .mobilconfig ręcznie, gdy zobaczysz dostępne opcje i składnię, ale możesz być w stanie wygenerować tylko dokładnie potrzebne certyfikaty, na przykład VPN, przy użyciu Konfigurator Apple bez konieczności całkowitego przejęcia kontroli nad urządzeniem.
źródło