119x Filetype PDF File size 0.05 MB Source: www.diva-portal.org
Linköping University | Department of Computer and Information Science Master’s thesis, 30 ECTS | Datateknik 2021| LIU-IDA/LITH-EX-A--21/018--SE Using the SEI CERT Secure Cod- ing Standard to Reduce Vulnera- bilities JohanFisch Carl Haglund Supervisors : Senyang Huang, Rahul Hiran, Ioannis Avgouleas Examiner: Andrei Gurtov Linköpings universitet SE–58183Linköping +4613281000,www.liu.se Upphovsrätt DettadokumenthållstillgängligtpåInternet-ellerdessframtidaersättare-under25årfrånpublicer- ingsdatumunderförutsättningattingaextraordinäraomständigheteruppstår. Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner, skriva ut enstaka ko- pior för enskilt bruk och att använda det oförändrat för ickekommersiell forskning och för undervis- ning. Överföring av upphovsrätten vid en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning av dokumentet kräver upphovsmannens medgivande. För att garantera äktheten, säker- hetenochtillgängligheten finns lösningar av teknisk och administrativ art. Upphovsmannensideellarättinnefattarrättattblinämndsomupphovsmanidenomfattningsom godsedkrävervidanvändningavdokumentetpåovanbeskrivnasättsamtskyddmotattdokumentet ändraseller presenteras i sådan form eller i sådant sammanhang som är kränkande för upphovsman- nenslitterära eller konstnärliga anseende eller egenart. För ytterligare information om Linköping University Electronic Press se förlagets hemsida http://www.ep.liu.se/. Copyright The publishers will keep this document online on the Internet - or its possible replacement - for a period of 25 years starting from the date of publication barring exceptional circumstances. Theonlineavailabilityofthedocumentimpliespermanentpermissionforanyonetoread,todown- load, or to print out single copies for his/hers own use and to use it unchanged for non-commercial research and educational purpose. Subsequent transfers of copyright cannot revoke this permission. Allotherusesofthedocumentareconditionalupontheconsentofthecopyrightowner. Thepublisher hastakentechnicalandadministrativemeasurestoassureauthenticity,securityandaccessibility. Accordingtointellectualpropertylawtheauthorhastherighttobementionedwhenhis/herwork is accessed as described above and to be protected against infringement. For additional information about the Linköping University Electronic Press and its procedures for publication and for assurance of document integrity, please refer to its www home page: http://www.ep.liu.se/. ©JohanFisch Carl Haglund Abstract Security is a critical part of every software developed today and it will be even more importantgoingforwardwhenmoredevicesaregettingconnectedtotheinternet. Bystriv- ing to improve the quality of the code, in particular the security aspects, there might be a reduction in the number of vulnerabilities and improvements of the software developed. Bylookingatissues from past problems and studying the code in question to see whether it follows the SEI CERT secure coding standards, it is possible to tell if compliance to this standard would be helpful to reduce future problems. In this thesis an analysis of vulner- abilities, written in C and C++, reported in Common Vulnerabilities and Exposures (CVE), will be done to verify whether applying the SEI CERT secure coding standard will help reduce vulnerabilities. This study also evaluates the SEI CERT rule coverage of three dif- ferent static analysis tools, Rosecheckers, PVS-Studio and CodeChecker by executing them on these vulnerabilities. By using three different metrics, true positive, false negative and the run time. The results of the study are promising since it shows that compliance to the SEI CERT standard does indeed reduce vulnerabilities. Of the analyzed vulnerabilities it wasfoundthatabout60%ofthesecouldhavebeenavoided,ifthestandardhadbeenfol- lowed. Theresultsofthetoolswereofgreatinterestaswell,itshowedthatthetoolsdidnot performaswellasthemanualanalysis,however,allofthemfoundsomeSEICERTrulevi- olations in different areas. Conclusively, a combination of manual analysis and these three static analysis tools would have resulted in the highest number of vulnerabilities avoided. Acknowledgments Wewouldliketothank Ericsson and their employees that have been involved in our work. AspecialthanksgoesouttoRahulHiran,oursupervisoratEricsson. Withouthisinteresting ideas and help throughout the whole process, the results of the thesis would not have been the same. We would also like to thank the developers of the tool CodeChecker at Ericsson, especiallyDanielKruppwhotookthetimetohaveameetingwithusandexplainmoreabout the tool. Appreciation also goes out to Linköping University. We would like to thank our supervisors Senyang Huang and Ioannis Avgouleas as well as our examiner Andrei Gurtov whohaveassisted us with the thesis writing and provided us with interesting and valuable thoughts about the area. iv
no reviews yet
Please Login to review.