Heim Betrieb und Instandhaltung Sicherheit Welche Sicherheitsrisiken bestehen, wenn das SDK nicht gehärtet ist?

Welche Sicherheitsrisiken bestehen, wenn das SDK nicht gehärtet ist?

May 23, 2023 pm 05:05 PM
sdk

Was sind die Sicherheitsrisiken, wenn das SDK nicht verstärkt wird?

1 Es ist für Wettbewerber oder böswillige Parteien leicht, einen Einblick in interne Implementierungsdetails oder interne Anrufprozesse zu erhalten, und kann sogar private Daten preisgeben #🎜🎜 ##🎜 🎜#Der Großteil des Android-Plattform-SDKs ist in Java-Sprache geschrieben und lässt sich leicht dekompilieren. Durch einfache Verschleierung können interne Implementierungsdetails offengelegt werden, während private Daten innerhalb des SDK eher durchsickern. Wenn diese Details die Implementierungsmethode der Schlüsseltechnologie offenbaren, kommt dies einem Durchsickern der Kerntechnologie gleich.

2. Schädliche Werbung oder bösartiger Code werden von böswilligen Parteien durch Bytecode-Injektion und auf andere Weise implantiert und dann neu verpackt und veröffentlicht

Aufgrund der Das SDK ist einzigartig, da es nicht über eine Signaturverifizierungslogik wie die App verfügt. Wenn also eine böswillige Person böswilligen Code oder böswillige Werbung in Ihr SDK implantiert und diese dann erneut veröffentlicht, ist dies schwierig zu erkennen, was das Markenimage ernsthaft beeinträchtigt und Ruf des Entwicklers.

3. Die geknackte Person umgeht Schlüssellogik und verursacht wirtschaftliche Verluste

Wenn das SDK über eine Zahlungsfunktion verfügt und von böswilligen Akteuren analysiert wird Finden Sie die Zahlungslogik. Wenn die zahlungsbezogene Logik auf der Serverseite nicht gut überprüft wird, bedeutet dies, dass der kostenpflichtige Dienst kostenlos verfügbar ist, sobald die böswilligen Akteure die Zahlungslogik über AOP entfernen.

4. Das SDK selbst kann Schwachstellen aufweisen und von böswilligen Parteien leicht ausgenutzt werden

SDK-Entwickler konzentrieren sich häufig auf die Implementierung von Funktionen Der Sicherheit wird im Allgemeinen nicht allzu viel Aufmerksamkeit geschenkt, sodass es schwierig ist, sicherzustellen, dass das von Ihnen selbst entwickelte SDK keine Schwachstellen aufweist. Sobald also einige Sicherheitslücken im SDK vorhanden sind und diese Schwachstellen bekannt sind und von böswilligen Akteuren ausgenutzt werden, ist das so, als würde man eine Landmine legen, die jederzeit explodieren kann. Der Ruf von SDK-Entwicklern wird nicht nur durch Bedrohungen der Daten- und Datenschutzsicherheit beeinträchtigt, sondern sie können auch für finanzielle Entschädigungen haftbar gemacht werden, wenn Probleme auftreten.

So lösen Sie

Wie aus der obigen Sicherheitsrisikoanalyse hervorgeht, besteht der Kern des Problems darin, dass böswillige Benutzer leicht darauf zugreifen können die Implementierungslogik des SDK. Daher wird den Entwicklern empfohlen, die folgenden Schutzmaßnahmen zu ergreifen:

1 Änderungen an Schlüsseldaten müssen die serverseitige Überprüfung bestehen: Beispielsweise die oben erwähnte zahlungsbezogene Logik, Änderungen an Daten wie Der Kontostand oder der Zahlungsbetrag müssen zuerst die serverseitige Überprüfung bestehen und dann die Ergebnisse mit dem Client synchronisieren.

2 Fügen Sie die Schlüssellogik zur Implementierung in die native Ebene ein: Übertragen Sie einige Schlüssellogiken aus Java Ebene auf die JNI-Ebene übertragen und in C/C++ implementieren.

3 Zeichenfolgen im Code verschlüsseln, insbesondere Zeichenfolgen mit vertraulichen Informationen.

Das Erreichen der oben genannten Punkte reicht jedoch nicht aus. Es kann nur normale Entwickler verhindern. Das SDK, an dessen Entwicklung wir so hart gearbeitet haben, könnte in den Händen professioneller Cracker zu Kanonenfutter werden und zu finanziellen Verlusten führen.

Daher wird empfohlen, auf Sicherheitsdienste von Drittanbietern zuzugreifen, beispielsweise auf den SDK-Verstärkungsdienst von Yidun.

Einführung in die Yidun SDK-Verstärkung

Bevor wir die Yidun SDK-Verstärkung vorstellen, stellen wir zunächst vor, was die meisten Entwickler derzeit auf dem Markt verwenden. Die Methode zur Verschleierung - Proguard. Proguard ist die am weitesten verbreitete Verschleierung auf der Android-Plattform. Sie wird von der Syntaxebene aus über abstrakte Syntaxbäume verarbeitet, was das Lesen und Verstehen des verarbeiteten Codes erschwert. Wie unten gezeigt:

Welche Sicherheitsrisiken bestehen, wenn das SDK nicht gehärtet ist?
Aber ändern Sie den Klassennamen und den Methodennamen in einige bedeutungslose Zufallszeichenfolgen, z. B. „a, b, c“. „Obwohl es die Lese- und Verständniskosten des Crackers erhöhen kann, ist seine Wirkung offensichtlich äußerst begrenzt. Für Cracker ist es nur eine Frage der Zeit, bis sie die Absicht des Codes herausfinden können.

Was ist also Yiduns SDK-Verstärkungslösung? Als nächstes stelle ich Ihnen Folgendes vor:

1. Yidun SDK-Verstärkungs-VMP-Lösung

Leeren Sie die Methoden der zu schützenden Klasse und extrahieren Sie sie Die Verarbeitung der Befehlsverschlüsselung wird zur Laufzeit über eine benutzerdefinierte virtuelle Maschine ausgeführt, wodurch es für Cracker unmöglich ist, an die ursprüngliche Codelogik zu gelangen.

Der Effekt ist wie folgt:

Welche Sicherheitsrisiken bestehen, wenn das SDK nicht gehärtet ist?

2. Easy Shield SDK-Verstärkung Java2c-Lösung #🎜🎜 #

Diese Lösung besteht darin, die Methode der zu schützenden Klasse zu nativenisieren und gleichzeitig die ursprüngliche Funktionsimplementierungslogik in den der nativen Ebene entsprechenden C/C++-Code zu konvertieren Führen Sie die entsprechende Native-Funktion direkt zur Laufzeit aus. Der Effekt ist wie folgt:

Beispiel vor Verstärkung

Welche Sicherheitsrisiken bestehen, wenn das SDK nicht gehärtet ist?

Welche Sicherheitsrisiken bestehen, wenn das SDK nicht gehärtet ist?# 🎜🎜#
Welche Sicherheitsrisiken bestehen, wenn das SDK nicht gehärtet ist?

Beispiel nach der Verstärkung Welche Sicherheitsrisiken bestehen, wenn das SDK nicht gehärtet ist?
Aus der Perspektive der statischen Analyse ist im Vergleich zur Proguard-Verschleierung offensichtlich, dass die Verstärkungsmethode dies hat wurde nativeisiert und implementiert. Die Logik ist in der Java-Schicht völlig unsichtbar. Die ursprüngliche Funktionslogik der Java-Schicht wird in die C/C++-Code-Implementierung der JNI-Schicht umgewandelt. Gleichzeitig wird das generierte native Schicht-SO verschlüsselt, um die Schwierigkeit des Knackens in allen Aspekten zu verbessern.

(Hinweis: Um die gehärtete Methode im obigen Bild klarer zu sehen, wurde sie in die entsprechende Native-Layer-Implementierung konvertiert. Das generierte Native-Layer-SO ist nicht verschlüsselt. In der tatsächlichen Situation hat das Yidun SDK Java2c gehärtet Die Lösung generiert den gehärteten Code SO für die Verschlüsselung)

Das obige ist der detaillierte Inhalt vonWelche Sicherheitsrisiken bestehen, wenn das SDK nicht gehärtet ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Microsoft entwickelt neue Unschärfeeffekte für Windows 11 Microsoft entwickelt neue Unschärfeeffekte für Windows 11 May 13, 2023 am 09:04 AM

Das neue Windows 11 SDK für Build 22523 enthüllte, dass Microsoft einen neuen Unschärfeeffekt für Windows 11 entwickelt. Dieser Effekt wird Tabbed genannt und gilt zusätzlich zu Acryl und Glimmer. Das neue DWMWA_SYSTEMBACKDROP_TYPE im 22523 SDK, die öffentliche Win32-API für Mica, Acrylic und ihre seltsame neue „Tab“-Mischung: pic.twitter.com/dbsu7ZFiIi – It’s All Back (@StartIsBack) 15. Dezember 2021 Verfügbar in den folgenden SDKs Beispielanwendung

Was ist SDK? Was ist SDK? Jan 06, 2023 pm 03:26 PM

Der vollständige Name von SDK lautet „Software Development Kit“, was auf Chinesisch „Software Development Kit“ bedeutet. Dabei handelt es sich um eine Reihe von Tools, die von Herstellern von Hardwareplattformen, Betriebssystemen (OS) oder Programmiersprachen bereitgestellt werden. SDKs unterstützen Softwareentwickler bei der Erstellung von Anwendungen für bestimmte Plattformen, Systeme oder Programmiersprachen. Ein Basis-SDK besteht normalerweise aus einem Compiler, Debugger und einer Anwendungsprogrammierschnittstelle (API), kann aber auch andere Inhalte enthalten, wie zum Beispiel: Dokumentation, Bibliotheken, Laufzeit-/Entwicklungsumgebung, Test-/Analysetools, Netzwerkprotokolle usw.

Installation und Verwendung des WeChat-Miniprogramms PHP SDK Installation und Verwendung des WeChat-Miniprogramms PHP SDK Mar 27, 2024 am 09:33 AM

Installation und Verwendung des WeChat Mini-Programms PHPSDK Mit der rasanten Entwicklung des mobilen Internets ist das WeChat Mini-Programm für immer mehr Unternehmen zu einer neuen Möglichkeit geworden, Geschäfte abzuwickeln und Produkte zu bewerben. Das WeChat Mini-Programm PHPSDK bietet Entwicklern praktische und schnelle Entwicklungstools, die die Entwicklungseffizienz erheblich verbessern können. In diesem Artikel wird die Installation und Verwendung des WeChat-Applets PHPSDK vorgestellt. 1. Installieren Sie SDK 1. Laden Sie die Projektdatei auf GitHub herunter. PHPSDK ist ein Open-Source-Projekt.

Windows App SDK 1.2 ist jetzt live. Hier finden Sie die Neuerungen Windows App SDK 1.2 ist jetzt live. Hier finden Sie die Neuerungen May 12, 2023 pm 06:07 PM

Das WindowsAppSDK ist eine Reihe von Tools und APIs, die Entwickler in ihren Windows-Anwendungen verwenden können, um „konsistente“ Funktionalität auf einer Vielzahl von Geräten unter Windows 10 (Version 1809 und höher) und Windows 11 bereitzustellen. Es ist wirklich wichtig zu verstehen, dass es bestehende Anwendungstypen wie .NET oder Windows SDK nicht ersetzt, sondern lediglich ein einheitliches API-Toolset bereitstellt, das zur Ergänzung Ihrer vorhandenen Anwendungen verwendet werden kann. Heute hat Microsoft Version 1.2 des Windows App SDK mit vielen neuen Funktionen veröffentlicht. Das Highlight dieser Version könnten Drittentwickler sein

Beherrschen Sie die wesentlichen Fähigkeiten für die Sekundärentwicklung des Java Hikvision SDK Beherrschen Sie die wesentlichen Fähigkeiten für die Sekundärentwicklung des Java Hikvision SDK Sep 06, 2023 am 08:10 AM

Beherrschen Sie die wesentlichen Fähigkeiten für die Sekundärentwicklung des Java Hikvision SDK. Einführung: Mit der rasanten Entwicklung der Informationstechnologie wurden Videoüberwachungssysteme in verschiedenen Bereichen weit verbreitet eingesetzt. Als führender inländischer Anbieter von Videoüberwachungslösungen nehmen die Produkte und Technologien von Hikvision seit jeher eine wichtige Position auf dem Markt ein. Um den Anforderungen verschiedener Projekte gerecht zu werden, stellt Hikvision Entwicklern ein SDK zur Durchführung sekundärer Entwicklungen zur Verfügung. In diesem Artikel werden einige wesentliche Fähigkeiten zur Beherrschung der Sekundärentwicklung des Java Hikvision SDK vorgestellt und entsprechende Codebeispiele beigefügt. 1. Hikvision verstehen

Was ist der SDK-Ordner unter Linux? Was ist der SDK-Ordner unter Linux? Jul 11, 2023 pm 01:38 PM

Das SDK unter Linux ist ein Ordner, der Tools und Ressourcen wie Compiler, Debugger, Bibliotheksdateien, Header-Dateien usw. enthält. SDK ist die Abkürzung für „Software Development Kit“, was Software Development Kit bedeutet. Es handelt sich um eine integrierte Umgebung, die Entwicklern zum Entwickeln und Erstellen von Anwendungen bereitgestellt wird, insbesondere solchen, die auf dem Linux-Betriebssystem ausgeführt werden.

PHP implementiert das Open-Source-Kafka-SDK PHP implementiert das Open-Source-Kafka-SDK Jun 18, 2023 am 09:18 AM

Mit der rasanten Entwicklung des Internets müssen große Datenmengen übertragen und verarbeitet werden. Daher ist das Nachrichtensystem als eine der klassischen Anwendungen der Datenübertragung und -verarbeitung zu einem unverzichtbaren Bestandteil der Internetarchitektur geworden. Kafka wird in der Unternehmensdatenarchitektur häufig als leistungsstarkes, verteiltes und skalierbares Messagingsystem verwendet, das die Datenverarbeitung in Echtzeit unterstützt. Bei der Verwendung von Kafka ist es wichtig, wie die API von Kafka aufgerufen wird. Das Entwicklungsteam stellt hierfür Open-Source-Clients in mehreren Sprachen zur Verfügung und implementiert das Open-Source-KafkaS in PHP

Was genau ist PHP SDK? Was genau ist PHP SDK? Mar 11, 2024 am 11:24 AM

PHPSDK ist ein Softwareentwicklungs-Toolkit, das Entwickler dabei unterstützt, Dienste oder API-Schnittstellen von Drittanbietern schnell und einfach in die PHP-Sprache zu integrieren. Der vollständige Name des SDK lautet Software Development Kit. Es bietet eine Reihe von Funktionen, Klassen, Methoden und Tools, um Entwicklern die Interaktion mit externen Diensten zu erleichtern. Bei der PHP-Entwicklung enthält das SDK normalerweise die Kapselung bestimmter Dienste, um den Prozess des Schreibens des zugehörigen Codes durch Entwickler zu vereinfachen. PHPSD

See all articles