앱 서버를 사용한 향상된 탈옥 탐지
향상된 탈옥 탐지 방법의 개요 및 필요성
Section titled “향상된 탈옥 탐지 방법의 개요 및 필요성”AppSealing SDK 내의 주요 기능 중 하나는 탈옥된 기기의 환경을 탐지하고 앱을 강제로 종료하는 것입니다. 그러나 이러한 탐지 기능이 더 정교한 공격 방법에 의해 우회될 가능성이 있습니다. 이는 iOS 운영 체제의 특성상 앱이 실행될 때 로드된 동적 라이브러리(dylib)의 코드가 먼저 실행되기 때문입니다.
[전체 내용은 Unity3D와 동일하나 Unreal 관련 코드로 수정]
iOS 앱 코드
Section titled “iOS 앱 코드”Unreal 프로젝트를 위한 샘플 자격 증명 획득 코드
char credential[290]; int result = Unreal_GetEncryptedCredential( credential ); if ( result == ERROR_NONE ) { FString Fs = FString( ANSI_TO_TCHAR( credential )); UE_LOG( LogTemp, Warning, TEXT( "[AppSealing] Encrupted Credential : %s" ), *Fs ); // send credential to login server (e.g. processLogin( userID, password, credential )) }
자격 증명 문자열을 얻은 후, 앱이 로그인 또는 인증 과정을 위해 서버와 통신할 때 추가 매개변수로 전송하고 서버에서 검증하도록 합니다.
[나머지 서버 검증 코드는 Unity3D와 동일]