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 server, 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 a variety of 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, and DNS. Many other interesting network technologies can also be deployed on the emulator, such as content delivery network and software-defined network.
翻译:在网络安全课程中,开展涉及互联网许多组成部分的亲手活动,例如降低互联网,攻击一个链链等,是相当困难的。 为了解决这个问题,我们开发了一个开放源码互联网模拟器,这是一个Python图书馆,由互联网每个基本组成部分的班组成,包括自主系统、网络、主机、路由器、BGP路由器、互联网交换等。它还包括各种服务,包括网络服务器、DNS、Botnet、Darknet、Darknet、Blackven等的班级。利用这些班子,用户可以建立一个微型互联网来模仿真实世界的互联网。虽然它很小,但它拥有真正的互联网的所有基本要素。它被汇编成Docker集装箱文件,由Docker在一台机器上或多台云端机器上进行模拟。有了这个网络模拟器,我们就可以为网络安全课程开展各种各样的亲手活动,包括BGP前劫持、对智能合同的袭击,利用Darknet达到匿名性内容,启动Btnet网络和赎金网络系统课程,同时可以学习其他网络技术。