2016-09-22 6 views
0

난 그냥 고객의 notice 하나는 Google Play 스토어에서이 경고를받은받은 공유 library project에 대한 기여 오전구글은 경고 재생 : SSL 오류 처리기의 취약점으로 인한 오 탐지를 WebViewClient.onReceivedSslErrorHandler SSL에 대한

안녕하세요, Google Play 개발자, 7 월, 에 나열된 앱 제출이 안전하지 않은 구현 인 Web35Client.onReceivedSslErrorHandler가 이기 때문에이 이메일의 끝이 거부되었습니다. 이 구현 은 모든 SSL 인증서 확인 오류를 무시하므로 앱 은 중간자 공격에 취약합니다. 공격자는 영향을받는 WebView의 콘텐츠를 변경하고, 전송 된 데이터 (예 : 로그인 자격 증명)를 읽고, JavaScript를 사용하여 앱 내에서 코드를 실행할 수 있습니다.

WebViewClient를 확장 우리의 AuthorizationWebViewClient에 찾고, 우리는 우리가 명확에서이 라이브러리를 넣어 기본 구현에 해당 의미 onReceivedSslErrorHandler를 구현하지 않습니다.

가양 성일 경우 또는이 라이브러리에 변경해야 할 사항이있는 경우 확인을받을 수 있습니까?

업데이트 : 이것은이 취약점이 존재할 때 사용 된 SDK의 버전이 훨씬 오래 되었기 때문에 현재 코드베이스에는이 문제가 없으므로 연결이 끊어졌습니다.

+0

우리의 구현은 우선 않습니다 ['onReceivedError (...)'] (https://github.com/OfficeDev/msa-auth-for-android/blob/master/src/main/java/com /microsoft/services/msa/AuthorizationRequest.java#L136)이 경고와 관련이 없기를 기대합니다. –

답변

1

문제의 특정 앱이 무엇인지 잘 모르겠지만 취약한 com.microsoft.services.msa.AuthorizationRequest $ OAuthDialog $ AuthorizationWebViewClient가있는 앱이 있습니다.

예를 들어 한 앱의 코드를 분해하면 실제로 onReceivedSslErrorHandler 구현이 있음을 알 수 있습니다.

.method public onReceivedSslError(Landroid/webkit/WebView;Landroid/webkit/SslErrorHandler;Landroid/net/http/SslError;)V 
    .registers 4 
    .param p1, "view" # Landroid/webkit/WebView; 
    .param p2, "handler" # Landroid/webkit/SslErrorHandler; 
    .param p3, "error" # Landroid/net/http/SslError; 

    .prologue 
    .line 143 
    invoke-virtual {p2}, Landroid/webkit/SslErrorHandler;->proceed()V 

    .line 144 
    return-void 
.end method 
+0

고마워요, 1 년 전에 릴리스 된이 문제는이 제품이 버전을 업그레이드하지 않은 것처럼 보입니다. 이것이 과거의 문제였던 것을 추적하는 데는 많은 시간이 걸렸습니다. 발견 및 해결을 빨리하기 위해 경고 메시지에 나열된 모든 모듈 버전을 개발자에게 보낼 수 있습니까? –

+0

문제는 주어진 코드가 앱에 포함 된 이유를 알 수있는 일반적인 방법이 없다는 것입니다 (앱이 sdk의 일부인지, 어떤 버전인지 여부). 또한 모든 SDK에는 자체 버전 체계가 있으며 일부 앱은 난독 화됩니다. – Antimony

+0

무서운 경험을보다 쉽게 ​​접근 할 수 있도록 기술적 도전 과제를 극복 할 수 있습니다. 나는 너희들을 믿는다! –