UX Design and Cognitive Psychology PlatoBlockchain Data Intelligence. Vertical Search. Ai.

UX-design og kognitiv psykologi

Cyberangreb og datatyveri er blevet så almindeligt i disse dage, især når det kommer til mobilapplikationer. Som følge heraf kan mobilapps, der oplever sikkerhedsbrud, lide økonomiske tab. Med mange hackere, der søger at stjæle kundedata, er sikring af disse applikationer blevet den største prioritet for organisationer og en alvorlig udfordring for udviklere. Ifølge Gartners seneste forskning, Hype-cyklus for applikationssikkerhed, vil investeringerne i applikationssikkerhed stige med mere end det dobbelte i løbet af de næste par år, fra 6 milliarder dollars i år til 13.7 milliarder dollars i 2026. Desuden hedder det i rapporten, "Applikationssikkerhed er nu top-of-mind for udviklere og sikkerhed professionelle, og vægten er nu rettet mod apps hostet i offentlige skyer,” Det er afgørende at få de grundlæggende komponenter i DevOps-sikkerheden korrekte. Her er de 12 tips til at sikre din mobilapplikation: 

1. Installer apps fra pålidelige kilder:

Det er almindeligt at få Android-applikationer genudgivet på alternative markeder eller deres APK'er og IPA'er gjort tilgængelige til download. Både APK og IPA kan downloades og installeres fra en række forskellige steder, herunder websteder, skytjenester, drev, sociale medier og sociale netværk. Kun Play Store og App Store bør have lov til at installere pålidelige APK- og IPA-filer. For at forhindre brugen af ​​disse apps bør vi have en kildekontroldetektion (Play Store eller App Store) ved appstart.

Læs også, https://andresand.medium.com/add-method-to-check-which-app-store-the-android-app-is-installed-from-or-if-its-sideloaded-c9f450a3d069

2. Roddetektion:

Android: En angriber kan starte en mobilapplikation på en enhed med rod og få adgang til den lokale hukommelse eller kalde specifikke aktiviteter eller hensigter om at udføre ondsindede aktiviteter i applikationen. 

iOS: Programmer på en jailbroken enhed kører som root uden for iOS-sandkassen. Dette kan give applikationer adgang til følsomme data, der er gemt i andre apps, eller installere skadelig software, der negerer sandboxing-funktionalitet. 

Mere om roddetektion- https://owasp.org/www-project-mobile-top-10/2016-risks/m8-code-tampering

3. Datalagring:

Udviklere bruger Shared Preferences & User Defaults til at gemme nøgleværdi-par som tokens, mobilnumre, e-mail, booleske værdier osv. Derudover foretrækker udviklere, mens de opretter apps, SQLite-databaser til strukturerede data. Det anbefales at gemme alle data i krypteringsformatet, så det er vanskeligt at udtrække informationen af ​​hackere.

4. Sikre hemmelige nøgler:

API-nøgler, adgangskoder og tokens bør ikke være hårdkodet i koden. Det anbefales at bruge forskellige teknikker til at gemme disse værdier, så hackere ikke kan komme hurtigt væk ved at manipulere med applikationen. 

Her er et referencelink: https://guides.codepath.com/android/Storing-Secret-Keys-in-Android

5. Kode sløring

En angriber kan dekompilere APK-filen og udtrække kildekoden til programmet. Dette kan afsløre følsomme oplysninger, der er gemt i kildekoden til applikationen, for angriberen, som kan bruges til at udføre skræddersyede angreb. 

Det er bedre at sløre kildekoden for at forhindre alle følsomme oplysninger indeholdt i kildekoden.

6. Sikker kommunikation:

En angriber kan udføre ondsindede aktiviteter for at udnytte niveauet af angreb, da al kommunikation foregår over ukrypterede kanaler. Så brug altid HTTPS URL'er over HTTP URL'er.

7. SSL-fastgørelse:

Certifikatpinning giver mobilapplikationer mulighed for kun at begrænse kommunikation til servere med et gyldigt certifikat, der matcher den forventede værdi (pin). Pinning sikrer det ingen netværksdata kompromitteres, selvom en bruger bliver narret til at installere et ondsindet rodcertifikat på deres mobile enhed. Enhver app, der fastholder sine certifikater, ville forhindre sådanne phishing-forsøg ved at nægte at overføre data via en kompromitteret forbindelse

Se venligst: 

https://owasp.org/www-community/controls/Certificate_and_Public_Key_Pinning

8. Sikker API-anmodnings- og svardata

Standardpraksis er at bruge HTTPS til baselinebeskyttelse af REST API-kald. De oplysninger, der sendes til serveren eller modtages fra serveren, kan være yderligere krypteret med AES osv. Hvis der f.eks. er følsomt indhold, kan du vælge at vælge dem, der skal krypteres, så selvom HTTPS'en på en eller anden måde er brudt eller forkert konfigureret har endnu et lag af beskyttelse mod din kryptering.

9. Sikker mobilappgodkendelse:

I tilfælde af at en applikation ikke tildeler distinkte og komplekse sessionstokens efter login til en bruger, kan en angriber udføre phishing for at lokke offeret til at bruge et specialfremstillet token leveret af angriberen og nemt omgå loginsiden med den fangede session ved at bruge et MiTM-angreb.

i) Tildel en distinkt og kompleks sessionstoken til en bruger, hver gang han/hun logger på applikationen. 

ii) Afslut sessionens levetid umiddelbart efter at have logget ud. 

iii) Brug ikke det samme sessionstoken til to eller flere IP-adresser. 

iv) Begræns udløbstiden for hver sessionstoken.

10. Tillad sikkerhedskopiering 

Tillad brugere at sikkerhedskopiere en app, hvis den indeholder følsomme data. Med adgang til backup-filer (dvs. når android:allowBackup=”true”), er det muligt at ændre/læse indholdet af en app, selv på en enhed, der ikke er rootet. Så det anbefales at tillade sikkerhedskopiering falsk. 

11. Begræns adgangen til Android-applikationsskærme fra andre apps

Ideelt set bør dine aktiviteter ikke give mulighed for åbning fra andre tjenester eller applikationer. Gør det kun sandt, når du har et specifikt krav for at få adgang til dine flagreskærme fra andre apps ellers skifte til android:exported= "falsk"

12. Begræns installation af pakker fra Android-applikationen

REQUEST_INSTALL_PACKAGES tilladelse tillader apps at installere nye pakker på en brugers enhed. Vi er forpligtet til at forhindre misbrug på Android-platformen og beskytte brugere mod apps, der selv opdaterer ved hjælp af en anden metode end Google Plays opdateringsmekanisme eller downloader skadelige APK'er.

konklusion: 

Mobile Apps er blevet mere personlige end nogensinde før med masser af kunders personlige data gemt i dem hver dag. For at opbygge tillid og loyalitet blandt brugerne og forhindre betydelige økonomiske og legitimationstab for virksomhederne, er det nu afgørende at sørge for, at applikationen er sikker for brugeren. At følge de ovennævnte sikkerhedstjeklister for mobilapps vil helt sikkert hjælpe med at forhindre hackere i at hacke appen.

Om forfatteren:

Raviteja Aketi er senior softwareingeniør hos Mantra Labs. Han har stor erfaring med B2B-projekter. Raviteja elsker at udforske nye teknologier, se film og tilbringe tid med familie og venner.

Læs vores seneste blog: Implementering af en ren arkitektur med Nest.JS

Viden der er værd at få leveret i din indbakke

Tidsstempel:

Mere fra Mantra Labs