Die größte Herausforderung für Unternehmen und Software-Entwickler ist es, die richtige Lösung, die den individuellen Sicherheitsanforderungen gerecht wird, zu finden. Silicon.de-Blogger Mikro Brandner erklärt, welche Schlüsselfaktoren bei der Auswahl berücksichtigt werden sollten.
Angriffe auf mobile Applikationen haben in den letzten Jahren deutlich zugenommen. Kein Wunder, denn zum einen führt die rasant steigende Nachfrage nach immer neuen Apps und der Zeitdruck, diese möglichst schnell und gewinnbringend zu veröffentlichen, dazu, dass Sicherheitsaspekte im großen Stil vernachlässigt werden. Zum anderen stehen Hackern immer ausgefeiltere Methoden, Tools und Techniken zur Verfügung, um mobile Betriebssysteme zu kompromittieren. Ein weiterer Grund ist, dass sich viele Unternehmen schwer tun, im Dschungel der verschiedensten Lösungsanbieter den Überblick zu behalten. Denn auch die IT-Sicherheitsbranche hat in den letzten Jahren nicht geschlafen und bietet mittlerweile vielfältige, gut durchdachte und individuell anpassbare Lösungsansätze, um mobile Applikationen zu härten, bevor sie in unsichere und verteilte Umgebungen entlassen werden.
Die größte Herausforderung für Unternehmen und Software-Entwickler ist nun, die richtige App-Härtungs-Lösung für die eigenen Anwendungen auszuwählen, das heißt eine Lösung, die den individuellen Sicherheitsanforderungen gerecht wird. Viele, insbesondere uninformierte Unternehmen entscheiden sich pauschal für sogenannte Obfuscation-Lösungen, da sie kostengünstig sind, geringen Schulungsaufwand erfordern und schnell implementiert werden können. Doch wer sich ausschließlich am Kosten-, Bequemlichkeits- und Zeitfaktor orientiert, verliert schnell aus den Augen, worum es eigentlich geht, nämlich die Sicherheit. Klar ist aber auch: Nicht jede App muss mit den aufwendigsten und teuersten Schutzmaßnahmen ausgestattet werden.
Folgende vier Schlüsselfaktoren sollten bei der Auswahl einer geeigneten Sicherheitslösung unbedingt berücksichtigt werden:
1. Der Wert der Applikation
Ein zentrales Kriterium bei der Wahl einer Sicherheitslösung ist der Wert der App und die Höhe an Investitionen, die ein Unternehmen für ihre Entwicklung und Instandhaltung aufwendet. Sind wertvolles und geschütztes geistiges Eigentum wie Algorithmen oder monetarisierbare Inhalte in der Applikationen eingebettet, müssen Unternehmen im Falle eines erfolgreichen Hackerangriffs mit hohen finanziellen Schäden und Einbußen rechnen. Ebenso verhält es sich bei Apps, die sensible Informationen wie Finanztransaktionen, Kontodaten oder Autorisierungsnachweise verarbeiten. Hier öffnen Hackerangriffe Tür und Tor für Betrügereien, die Kollateralschäden ungeahnten Ausmaßes nach sich ziehen. Dazu zählen nicht nur Schadensersatz und Sanktionen wegen Nichteinhaltung von Bestimmungen und erforderlichen Aufwendungen für Sicherheits-Upgrades, sondern auch die Kosten notwendiger Krisenkommunikation zur Bewältigung von Negativschlagzeilen und der Wiederherstellung der Reputation.
Im Falle wertvoller Apps sollten sich Unternehmen niemals auf einfache Verschlüsselungs- und Obfuscation-Techniken verlassen, um Applikationen vor Hacker-Angriffen zu schützen. Verschlüsselung von sensitiven Zeichenketten wie URL-Adressen oder Passwörter (String Encryption) und das Umbenennen von programmierten Variablen und Funktionen (Renaming) sind an sich zwar brauchbare Sicherheitsmaßnahmen, isoliert genutzt jedoch vollkommen unzulänglich.
2. Umfang und Komplexität der Angriffe, denen die App ausgesetzt sein wird
Neben dem Wert der Applikation müssen Unternehmen und Entwickler bei der Auswahl einer Sicherheitslösung stets auch den Umfang und die Komplexität der Angriffe bedenken, denen die App höchstwahrscheinlich ausgesetzt sein wird. Für Kleinunternehmen, die ausschließlich kostenlose oder werbefinanzierte Apps entwickeln, genügt normalerweise ein Basisschutz, obwohl eine mögliche Infizierung mit Malware natürlich auch hier finanzielle Nachteile bereiten kann, wenn etwa Werbeeinnahmen ausbleiben. Hier gilt es abzuwägen und überschaubare Risiken in Kauf zu nehmen. Ganz anders ist die Situation allerdings bei geschäftskritischen Applikationen. Hier werden die Hacker möglicherweise alles daransetzen, die Sicherheitstechnologien der App schnellstmöglich und umfassend zu untergraben und die Angriffe dabei möglichst lange geheim zu halten. So kann es Wochen bis Monate dauern bis die ersten Anhaltspunkte für einen Cyberangriff ans Tageslicht kommen und Sicherheitslücken geschlossen werden können.
3. Agilität und Portabilität
Im Gegensatz zum traditionellen PC-Markt, der von einigen wenigen Chipsatz- und Betriebssystem-Kombinationen dominiert wird, ist der Markt für Smartphones, Tablets, Wearables & Co. ein Albtraum hinsichtlich der Kombination von Chipsätzen, Betriebssystemen, Programmiertechnologien und Hardware-Funktionalitäten. Sicherheit darf aber nicht von speziellen Hard-/Software-Konfigurationen abhängig sein! Entwickelt man Apps für verschiedene Plattformen, sollte man deswegen einen Sicherheitsanbieter wählen, der alle Plattformen abdeckt, da dies die (Entwicklungs-) Prozesse wesentlich vereinfacht.
Darüber hinaus sehen sich die Unternehmen in vielen Fällen bei der Wahl einer passenden Sicherheitslösung gezwungen, Kompromisse einzugehen. Zahlreiche Lösungen adressieren nur ein Problemfeld: So können variable Umbenennungs-Tools zwar ein einfaches Reverse Engineering abwehren, jedoch verhindern sie auch Debugging oder Fehleranalysen mit traditionellen Analyse-Tools. Bei der Wahl einer geeigneten Sicherheitslösung gilt es daher, alle Aspekte der Produktfunktionalität, Überprüfung, Wartung und Agilität zu bedenken.
4. Auswirkungen auf die Performance
Speicherkapazität, Stromverbrauch und Leistung spielen bei Mobilgeräten eine besonders wichtige Rolle, da freie Ressourcen und ausreichend Akkulaufzeit hier besonders kostbar sind. Jede Sicherheitstechnologie aber bedeutet zusätzliche Belastung für den Speicher und die CPU. Auch in Sachen Programmieraufwand, Kompilierungs-Komplexität und Laufzeitparameter erfordern sie deutlichen Mehraufwand. Deshalb ist auch in dieser Hinsicht die Wahl der richtigen Sicherheitstechnologie ausschlaggebend. Im Vergleich zu kostenlosen oder kostengünstigen Lösungen ist das Verhältnis zwischen Performancebelastung und Schutzumfang bei anspruchsvolleren Applikations-Härtungs-Lösungen deutlich besser.
Wenn Applikationen von Millionen Nutzern eingesetzt werden oder wenn hohe Transaktionsvolumina zu erwarten sind, gilt es, eine Sicherheitslösung zu wählen, die genauso robust und verlässlich ist wie der App-Code selbst. Obfuscation-Bereiche des Codes, die empfindlich auf eine Performance-Minderung reagieren, wie etwa rechenaufwändige Funktionen oder Bildverarbeitungsprogramme, beeinflussen die Laufzeitleistung. Umso wichtiger ist es, eine Sicherheitslösung zu wählen, die es ermöglicht, sinnvoll und anpassbar zwischen Performance und Sicherheit abzuwägen. Denn bei aller Sicherheit sollte man natürlich auch die Nutzerfreundlichkeit und damit die Gunst der Kunden niemals aus den Augen verlieren.
Fazit
Auch wenn es verlockend ist, in Sachen App-Härtung das kostengünstigste und am schnellsten verfügbare Tool zu wählen, sollten Unternehmen sich die Zeit nehmen, den Wert ihrer Applikationen zu ermitteln und sich einen Überblick über alle verfügbaren Sicherheitslösungen zu verschaffen. Vor allem hochwertige und geschäftskritische Apps sollten mit einem undurchdringbaren Netzwerk an Schutzmechanismen ausgestattet werden, das sicherstellt, dass die App ausschließlich Funktionen ausführt, die vom Entwickler beabsichtigt sind, und Reverse Engineering, d.h. den illegalen Nachbau, verhindern ohne dabei den Entwicklungsprozess oder die Performance der App zu beeinträchtigen. Denn an der Sicherheit von mobilen Apps zu sparen, ist immer der falsche Weg.
Tipp: Wie gut kennen Sie die Geschichte der Computer-Viren? Überprüfen Sie Ihr Wissen – mit 15 Fragen auf silicon.de