/ / Ellenőrizze az ios fejlesztői fiókját a backend - ios, a biztonság területén

ellenőrizze az ios fejlesztői számlát a backend-ios-ban, a biztonságot

Van egy alkalmazásom (App1), amely megnyílikegy másik alkalmazás (App2) biztonságos tokennel, openURL módszerrel (például App2: // [SecureToken]). Az App1 és az App2 különálló fejlesztői számlákon van, így a jogosultsági és kulcstartó hozzáférési csoportok használata itt nem az adatmegosztás lehetősége, amit általában csinálnék.

Bármely alkalmazás regisztrálhat bármilyen URL-címetAz Apple dokumentációja. Az iOS véletlenszerűen kiválasztja, hogy melyik alkalmazást fogja megnyitni. Így fennáll annak a veszélye, hogy egy kártevő regisztrálhatja az App2-t: //. Az App1 megnyitja ezt a malware-t az App2 helyett biztonságos tokennel.

Szükségem van arra, hogy biztosítsuk, hogy a biztonságos tokent csak az App2 használhatja a backend szolgáltatásokon. Hozzáférhetek mind az ügyfél-, mind a backend-forráskódokhoz.

Arra gondoltam, hogy az App2-t ahardcoded kulcsot, és adjuk hozzá a kulcstartóhoz és generáljunk valamilyen hash-t az információ segítségével. De úgy gondolom, hogy a kulcskódolás nem elég erős ahhoz, hogy ezt a forgatókönyvet figyelembe lehessen venni, mivel a biztonságos token rendkívül kritikus információkat tartalmaz. (a kódolt kulcsok könnyen veszélybe kerülhetnek https://security.stackexchange.com/questions/52584/why-can-we-still-crack-snapchat-photos-in-12-lines-of-ruby)

Van-e módja annak, hogy ellenőrizhessük az App2 fejlesztői fiókját a backenden? Szeretném ezt megoldani, de minden alternatívát is szívesen fogadunk.

válaszok:

0 a válasz № 1

A legközelebbi dolog, amit erre találtam, a bevételek. (az ingyenes alkalmazásoknak is van bevétele) A probléma az, hogy semmi nem azonosítja az egyedi eszközt a nyugtán, így még mindig hamis. Van néhány hasznos információ, mint az eredeti vásárlási dátum a csalás észleléséhez, de önmagában nem túl hasznos.

(https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ReceiptFields.html#//apple_ref/doc/uid/TP40010573-CH106-SW1)

A Facebook felsorolja ezt a biztonsági rést az "URL sémák lopása" (https://www.facebook.com/notes/facebook-security/securely-developing-on-mobile/10151408888270766)

és ajánlja

"A hívók URL-sémáinak hamisításának csökkentése érdekében a Facebook SDK lehetővé teszi a hívóknak a főalkalmazás számára, hogy válaszoljon egy titkosítási kulcsot."

A kódolással kapcsolatos titkosítási kulcs elkerülése érdekében azt hiszem, ilyesmit fogok tenni.

Ha az App2 korábban nem hitelesített, az App1 nem hoz létre biztonságos tokent. Amikor az App2 először hitelesíti, egy kulcsot kiszolgáló oldallal generál, és az App2-hez továbbítja. A kulcstartóban tárolódik.

A következő alkalommal, amikor az App1 meghívja az App2-t, az App1 lekérdezi a kulcsot a szerverről, és ezt az információt használja a biztonságos token beillesztéséhez.


Kapcsolódó kérdések


Hozzászólások (0)

Hozzászólni