{"title":"SEED Internet Emulator: An Open-Source Tool for Network and Cybersecurity Courses","authors":"Wenliang Du","doi":"10.1145/3478432.3499260","DOIUrl":null,"url":null,"abstract":"In cybersecurity courses, it is quite challenging to do hands-on activities that involve many components of the Internet, such as bringing down the Internet, attacking a blockchain, etc. To solve this problem, we have developed an open-source Internet Emulator, which is a Python library, consisting of the classes for each essential element of the Internet, including autonomous system, network, host, router, BGP router, Internet exchange, etc. It also includes the classes for a variety of services, including Web, DNS, Botnet, Darknet, Blockchain, and more are being developed. Using these classes, users can construct a mini-Internet to emulate the real-world Internet. Although it is small, it has all the essential elements of the real Internet. The construction is compiled into Docker container files, and the emulation is executed by Docker on a single machine or on multiple cloud machines. With this Internet Emulator, we can develop hands-on activities for cybersecurity courses, including BGP prefix hijacking, attacks on smart contract, using Darknet to achieve anonymity, launching Botnet and ransomware attacks, etc. While the emulator was initially developed for cybersecurity courses, it can also be used for network courses, for students to learn how the Internet technologies work, such as routing, BGP, IP Anycast, DNS, CDN, and many other interesting technologies.","PeriodicalId":113773,"journal":{"name":"Proceedings of the 53rd ACM Technical Symposium on Computer Science Education V. 2","volume":"30 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-03-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 53rd ACM Technical Symposium on Computer Science Education V. 2","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3478432.3499260","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
In cybersecurity courses, it is quite challenging to do hands-on activities that involve many components of the Internet, such as bringing down the Internet, attacking a blockchain, etc. To solve this problem, we have developed an open-source Internet Emulator, which is a Python library, consisting of the classes for each essential element of the Internet, including autonomous system, network, host, router, BGP router, Internet exchange, etc. It also includes the classes for a variety of services, including Web, DNS, Botnet, Darknet, Blockchain, and more are being developed. Using these classes, users can construct a mini-Internet to emulate the real-world Internet. Although it is small, it has all the essential elements of the real Internet. The construction is compiled into Docker container files, and the emulation is executed by Docker on a single machine or on multiple cloud machines. With this Internet Emulator, we can develop hands-on activities for cybersecurity courses, including BGP prefix hijacking, attacks on smart contract, using Darknet to achieve anonymity, launching Botnet and ransomware attacks, etc. While the emulator was initially developed for cybersecurity courses, it can also be used for network courses, for students to learn how the Internet technologies work, such as routing, BGP, IP Anycast, DNS, CDN, and many other interesting technologies.