Olika studier har empiriskt visat att majoriteten av Java och Android-appar missbrukar kryptografiska bibliotek, vilket orsakar förödande brott mot datasäkerhet. Därför är det viktigt att upptäcka sådana missbruk tidigt i utvecklingsprocessen. Det faktum att osäkra användningar inte är undantaget utan normen utesluter metoder baserade på egendomsinferens och anomali upptäckt. I detta dokument presenterar vi C SL, ett definitionsspråk som gör det möjligt för kryptografiexperter att specificera den säkra användningen av de kryptografiska bibliotek som de tillhandahåller. C SL kombinerar de generiska begreppen metod-call-sekvenser och data-flödesbegränsningar med domänspecifika begränsningar relaterade till kryptografiska algoritmer och deras parametrar. Vi har implementerat en kompilator som omvandlar en C SL regeluppsättning till en kontext- och flödeskänslig efterfrågestyrd statisk analys. E analys kontrollerar automatiskt en given Java- eller Android-app för brott mot C SL-kodade regler. Vi utvärderade empiriskt vår regeluppsättning genom att analysera 10,001 Android-appar. Våra resultat visar att missbruk av kryptografiska API:er fortfarande är vanligt förekommande, med 96% av appar som innehåller minst ett missbruk. Men vi såg färre av de missbruk som rapporterades i tidigare arbeten.
I REF presenterar författarna CrySL, som erbjuder ett definitionsspråk för att ange regler för korrekt användning av Crypto API:er.
CrySL: Validating Correct Usage of Cryptographic APIs
{'venue': 'ArXiv', 'journal': 'ArXiv', 'mag_field_of_study': ['Computer Science']}