2016-08-18 4 views
2

Google Play에 Android 앱을 게시하려면 먼저 릴리스 키로 서명해야합니다. 그것은 안전을위한 것이라고합니다. 열쇠를 생성 할 때 암호를 입력해야합니다.누군가 내 Android 용 앱 키를 훔칠 때 어떤 악마가 발생합니까?

여기에 무슨 소란이 있니? 릴리스 키가 도난 당하거나 복사 된 경우 어떻게 될지 묻습니다. 누군가가 그 키를 사용하여 자신의 앱에 서명 할 수 있다고 가정합니다. 그게 무슨 뜻입니까?

나는 거의 아무 것도 주장하지 않겠다. (내 개발자 계정/콘솔 자격 증명이 도난 당하지 않았다는 것을 고려하면
도난당한 릴리스 키로 서명 된 누군가가 내 앱의 데이터에 더 직접 액세스 할 수있게되면 가장 큰/유일한 위험이 발생할 수 있습니다 (사용자 기기).

+0

CommonsWare를 사용하는 경우에만 응용 프로그램의 자신의 제품군을 기대했던 방식으로 응용 프로그램과 상호 작용 연구를 제공 할 수 있습니다 esult,하지만 만약 당신이 기계공을 알고 싶다면 private/public key encryption을보십시오. 서명을 통해 공개 키를 배포하면 새 버전이 개인 키의 소유자인지 여부를 확인하는 데 사용됩니다. – NameSpace

답변

3

APK (모든 Android 기기에서 공개적으로 읽을 수 있음)를 수정하고 수정 (예 : 악성 코드 추가)하고, 서명하고 배포 할 수 있습니다. versionCode에 부딪혔다 고 가정하면 해킹 된 버전의 앱 설치를 시도하는 사람은 누구나 성공하게됩니다. Android의 관점에서 볼 때 유효한 업그레이드입니다. 해커가 귀하의 배포 채널에 대한 자격 증명을 얻을 수 있다면 (예 : Play 스토어의 Google 계정을 손상 시킴) 업데이트를 모든 사용자에게 제공 할 수 있습니다.

또는 별도의 APK를 만들고 서명 키로 서명 할 수 있습니다. 이제 앱과 앱에 동일한 키가 서명됩니다.

  • 당신이 android:sharedUserId을 사용하는 경우, 그들은

  • (뿌리 장치의 외부) 일반적으로 다른 응용 프로그램에서 보호되는 내부 저장소 앱의 파일을 모두 얻을 수 있습니다 : 그것은 다른 공격의 길을 열어 당신이 signatureprotectionLevel과 권한을 사용하면 자신의 응용 프로그램은 그 같은 권한을 보유하고 아마도

+0

릴리스 키가 없어도 APK를 계속 잡을 수 있고, 악성 코드를 수정할 수 있으며 새로 생성 된 릴리스 키를 사용하여 재배포 할 수 있습니다. 그래서 상황은 더 나 빠졌습니까? 의미있는 방식으로 재배포하려면 어쨌든 내 Google 개발자 콘솔 계정도 도난 당하게됩니다. – humanityANDpeace

+0

@humanityandpeace : Android는 기존 앱 사용자를위한 업그레이드라고 생각하지 않습니다. 따라서 해커가 배포 자격 증명을 얻은 경우 모든 사용자에게 업데이트를 배포 할 수 없습니다. 앱 업데이트 배포를위한 두 가지 요소의 인증으로 생각하십시오. 공격자는 사용자가 가지고있는 것 (릴리스 키 저장소)과 알고있는 것 (예 : Google 계정 자격증 명)이 필요합니다. – CommonsWare

+0

예, 약간의 의미가 있습니다 (두 가지 요소). 또한 앱 내부에 액세스하는 것과 동일한 방식 (즉, 동일한 출시 키로 앱간에 공유 액세스)을 사용하면 릴리스 키가 완전히 무의미하지 않습니다. – humanityANDpeace