{"title":"Detecting Anomalies in IoT Device Communication Based on MUD Profiles With Zeek and Python","authors":"Rohan Nunugonda, V. Sekar","doi":"10.1109/ISEC54952.2022.10025258","DOIUrl":null,"url":null,"abstract":"The threat of Internet of Things (IoT) vulnerabilities remains highly persistent today, with IoT devices responsible for a third of all infections in mobile networks by the end of 2020. Consumers are now more worried about their personal data being compromised or collected by unauthorized personnel. Run by Dr. Vyas Sekar, the IoT@CyLab Initiative at Carnegie Mellon University’s CyLab focuses on creating technologies that address different IoT issues by creating a network that can independently protect devices from potential threats and miscommunications. In this research, we analyze device communications with the use of Python to generate a Zeek script that uses device protocol and IP address information from the device MUD profile. Via string manipulation, the Python script grabs the allowed destination IP addresses from the MUD profile. This list is passed into the Zeek script, which checks the addresses in the list against destination addresses in a PCAP file that contains the device communications. PCAP files, MUD Files, and other test data are from open-source resources from the University of New South Wales (UNSW). We use the device connection CSV file they offer to find the host address of the device being analyzed. Once that host and destination IPS are inserted into the Zeek Script, logs of suspicious connections are generated. Results of this experiment have led to successful log creations. However, further testing needs to be done to check the validity and accuracy of the logs. Once this is proven, next steps include improving the efficiency of the string manipulation algorithm and a revision of the algorithm to allow assessment of real-time data flow.","PeriodicalId":241826,"journal":{"name":"2022 IEEE Integrated STEM Education Conference (ISEC)","volume":"321 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-03-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 IEEE Integrated STEM Education Conference (ISEC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISEC54952.2022.10025258","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
The threat of Internet of Things (IoT) vulnerabilities remains highly persistent today, with IoT devices responsible for a third of all infections in mobile networks by the end of 2020. Consumers are now more worried about their personal data being compromised or collected by unauthorized personnel. Run by Dr. Vyas Sekar, the IoT@CyLab Initiative at Carnegie Mellon University’s CyLab focuses on creating technologies that address different IoT issues by creating a network that can independently protect devices from potential threats and miscommunications. In this research, we analyze device communications with the use of Python to generate a Zeek script that uses device protocol and IP address information from the device MUD profile. Via string manipulation, the Python script grabs the allowed destination IP addresses from the MUD profile. This list is passed into the Zeek script, which checks the addresses in the list against destination addresses in a PCAP file that contains the device communications. PCAP files, MUD Files, and other test data are from open-source resources from the University of New South Wales (UNSW). We use the device connection CSV file they offer to find the host address of the device being analyzed. Once that host and destination IPS are inserted into the Zeek Script, logs of suspicious connections are generated. Results of this experiment have led to successful log creations. However, further testing needs to be done to check the validity and accuracy of the logs. Once this is proven, next steps include improving the efficiency of the string manipulation algorithm and a revision of the algorithm to allow assessment of real-time data flow.