Security Services for the IoT

This website lists information for the 2020/2021 course Security Services for the IoT (SSI) at the University of Twente.

Last updated at 10 Jun 2021.


Course code 201700083
Prerequisites Network Security (ET4397IN) or Internet Security (192654000); good understanding of network systems
Coordinator Cristian Hesselman (SIDN Labs and University of Twente) (
Credits 5EC (140 hours)
Lecturers dr. Cristian Hesselman (SIDN Labs and University of Twente)
dr. Elmer Lastdrager (SIDN Labs)
Teaching assistant Ramin Yazdani (University of Twente)
Etienne Khan (University of Twente)
Academic year 2020-2021
Quartile 2B: 19 April to 4 July 2021
Room online (Canvas)
Language English
Maximum students 35

Enrollment and course updates

You can only sign up for SSI through OSIRIS, we do not accept registrations via email or other channels. We urge you to scan SSI’s list of papers before you sign up, so you know what to expect. If you nonetheless end up unsubscribing from SSI, then please unregister through OSIRIS/CANVAS. In this case, we appreciate it if you share your feedback as to why you unregistered with the SSI coordinator so we can use it to further improve SSI.

The latest schedule and other information are available through this webpage. The reason we use a separate public website for SSI in addition to Canvas is that we’d like to share SSI’s format with other universities and students so they can potentially learn from it. The second reason is that at SIDN Labs we’re proud of our contribution to courses like SSI, plus we’d like to underscore the importance of companies helping to educate the next generation of engineers and researchers, for instance in the area of IoT security. Finally, the UT is a public institution, which we believe means it should share its output with the Dutch society and beyond as much as possible.


You need to have followed Network Security (ET4397IN) or Internet Security (192654000), or equivalent courses. We expect you to have a good understanding of network systems, for example by having followed the Network Systems course. You may need to read up on your networking skills if you are unfamiliar with terms and tools such as Wireshark, pcap files and tcpdump.

For the lab assignment, each group of 3-4 students needs to get their hands on at least two IoT devices.


SSI lectures will take place online and will focus on discussing two papers (see Schedule). We use Canvas for the lectures. You can join the lectures by going to the SSI course page on Canvas. Then, browse to Conferences and join the lecture that has started. We aim to open the online lectures at least 10 minutes prior to the start of the lecture. Please join the lecture with your microphone muted, but be prepared to switch on your microphone for the discussion (and your webcam, if you want).

You will not need to take a test at the lectures. Instead, the goal of the lectures is to able you to learn from each other so as to be better prepared for the oral exam (see Assessment). This is also why attending the technical lectures is mandatory. The lectures are not recorded to allow students to freely express their opinion and participate in the discussions. We provide a re-sit lecture in case you miss a technical lecture, for example due to illness.

During the lecture, your teachers will present a few slides that summarize the papers and include a few questions. We will review the answers together and allow time for discussion (audio only). For each paper, the teachers will appoint a student at random to share their opinion on the paper, for example on the pros/cons of the solution, or its limitations.


Table 2 shows SSI’s schedule, which consists of a total of 9 lectures: an introduction and guest lecture, 2 more guest lectures, and 6 technical lectures. All lectures will take place online through Canvas. Both guest lectures will be open to everyone. There will be no coffee break.

We also offer a “re-sit” on Wednesday 16 June in case you missed one of the technical lectures. The re-sit will follow the same format as the regular technical lectures.

Upon request, we can also provide a Q&A slot to help you with the SSI lab assignment following one of the lectures.

Table 2: Schedule for SSI 2020/2021.
Lecture Date                 Contents
1 April 21
Course Introduction (30 minutes)
Lecturer: Cristian Hesselman
- SSI assessment, schedule, and background.
- Admin matters, such as signing up for the lab assignment
Lecture slides (pdf)

Guest lecture #1: How the core of the internet is organized
Lecturer: Marco Davids (SIDN Labs)
Lecture slides (pdf)
2 April 28
Guest lecture #2 Securing the Internet of Things through regulation and standardization
Lecturer: Eelco Vriezekolk, Agentschap Telecom (Dutch telecoms regulator)
Lecture slides (pdf)
The guest lecture is open to everyone
Abstract: Securing the Internet of Things requires efforts by all stakeholders in the ecosystem. Manufacturers, software developers, integrators, retailers and end users all have their responsibilities. When public values are at risk, regulation and enforcement become necessary to ensure that stakeholders take their responsibilities. In a common European market, regulation and standardization are negotiated at the EU level. This presentation will describe upcoming EU regulations, and how these will contribute towards a secure the Internet of Things.

Followed by a SPIN demo by Jelte Jansen (SIDN Labs).
Lecture slides (pdf)
Admin slides (pdf)
3 May 6
Lecture: IoT Concepts and Applications
Papers: [DNSIoT] [WEIS]
Lecturer: Cristian Hesselman and Ramin Yazdani
Lecture slides (pdf)
4 May 12
Lecture: IoT Botnet Measurements
Papers: [Mirai] [Hajime]
Lecturer: Elmer Lastdrager and Etienne Khan
Plus a few minutes to get your feedback on the course so far
Lecture slides (pdf)
5 May 18
Lecture: IoT Honeypots
Papers: [IoTPOT] [Honware]
Lecturer: Elmer Lastdrager and Etienne Khan
Lecture slides (pdf)
6 May 25
Guest lecture #3 The Life Of An IoT Device
Lecturer: Eliot Lear, Cisco Systems
The guest lecture is open to everyone
Lecture slides (pdf)
Abstract: As Internet-enabled devices proliferate throughout society, new challenges have emerged about how we connect and secure them. How does the device know to join the correct network? How can the device protect itself? What can the network do to help? What are the challenges to providing that help? Many different organizations are attempting to answer these and other questions, but the ecosystem doesn’t seem to like the answers – yet. Why not? And what’s at stake? We’ll spend some time going through both the questions, the answers, and the economics tied to them.
7 May 26
Lecture: IoT Edge Security Systems
Papers: [CGuard] [DBolt]
Lecturer: Ramin Yazdani and Cristian Hesselman
Plus a few minutes to get your feedback on the course so far
Lecture slides (pdf)
8 Jun 2
Lecture: IoT Device Behavior
Papers: [AuDI] [IMC]
Lecturer: Elmer Lastdrager and Etienne Khan
Lecture slides (pdf)
9 Jun 9
Lecture: IoT Security in Non-Carpeted Areas
Papers: [Lora] [ICS]
Lecturer: Cristian Hesselman and Ramin Yazdani
Lecture slides (pdf)
re-sit Jun 16
Lecture: CANCELLED: IoT Edge Security Systems (re-sit)
Papers: [Heimdall] [NOMS]
Lecturer: Elmer Lastdrager and Ramin Yazdani
This lecture was cancelled

The last regular lecture (number 9, June 9) will also involve a 10-minute discussion to get your feedback on SSI, in addition to the official survey that the UT’s Quality Assurance folks will distribute.


We asses to what extent you attained SSI’s learning outcomes (see Background) based on a total of 12 papers and IETF RFCs you will need to study and a lab assignment you will need to carry out.

Your individual assessment will be based on your deliverables for SSI, which are:

To pass SSI, your score will need to be 5.5 or higher, which we calculate as follows:

       total score = [ (score of oral exam) × 50% + (score of the lab assignment) × 50% ] × (all paper summaries submitted 0=no or 1=yes)

Where the total score is between 1 (worst) and 10 (best).

We will not evaluate the third learning goal (operational business of DNS operators), which serves as a bonus to help you understand how the Internet works operationally.

Deliverables and submission

Your first deliverable consists of a set of 12 paper summaries, one for each of the papers we’ll discuss during the lectures. Each summary can be at most 250 words. You can add figures and graphs from the paper or add your own if you like, but everything has to fit on a single-sided A4 paper. Please submit the summaries through Canvas latest 7AM on the day of the lecture in which the papers will be discussed.

Your second deliverable is the lab report (see Lab Assignment). Please submit it in PDF along with your network measurements (PCAP files, MUD files, and README files) through the SSI site on Canvas, following the submission guidelines described below. The firm deadline is Sunday June 20, 2020, 23:59 CEST.

Oral Exam

The oral exam consists of an online Q&A with an SSI teacher and a Teaching Assistant as observer. It will focus on the 12 papers you studied. We will only discuss the papers of Lecture 3 at a basic level, and go for a more in-depth discussion for the other papers.

The exam takes about 45 minutes and will take place in the Q4 exam weeks (June 21 through July 2). You will be able to pick a time slot for the oral exam in the week before the exams start.

Your input for the oral exam consists of the summaries you wrote for each of the papers, which you can use during the exam. We do not grade the summaries themselves, they are just for your reference during the oral exam.

We’ll take your oral exam through a video call. We will use Canvas, just like during the lectures. You must turn on your camera during the call or else we won’t be able to give you a grade. Please use a fixed Internet connection or sit close to your WiFi access point for optimal video and audio quality. We will pause the oral exam if we lose video.

During the oral exam, you will be evaluated by two members of the teaching staff (the reviewers). Both will individually assess you. The grading consists of four components:

  1. Context: how well you explained the context of a paper, such as the motivation of the work and why it is useful.
  2. Understanding: to what level you can explain the technical content of the paper. This goes further than basic reproducing of the paper.
  3. Relations amongst papers: the extent to which you are able to compare two papers with each other regarding their key differences.
  4. Analysis: how well you are able to identify and motivate weak/strong points and are able to have a critical look at the paper, beyond everything the authors write (i.e., to what extend could you review this paper critically).

Afterwards, both reviewers will discuss your performance and finalize their grades. The average grade of both reviewers will be your final grade for the oral exam.

Lab Assignment

You will need to carry out a lab assignment in teams of two to four, depending on the number of SSI participants. At the first lecture, we’ll inform you of the exact number of participants per team. We’ll create the groups on Canvas after the first lecture.

The goal of the lab assignment is for you to gain hands-on experience with measuring and analyzing the network behavior of IoT devices and capturing this behavior in a device profile. In SSI, we’ll be using the Manufacturer Usage Description (MUD) standard [RFC8520,mud] for this purpose. The measurements will enable you to learn how an IoT device behaves on the network, for instance how it responds to external triggers and what services on the Internet it uses. MUD is an easy to understand language standardized by the IETF in RFC 8520.

Please use open source tools like WireShark or TCPdump to carry out the traffic measurements. If you want, you may also use a SPIN device for this purpose. You can contact the Teaching Assistant if you need help with installing or using the tools.

Every group should analyze at least two IoT devices, which you will need to arrange yourselves. Please use IoT devices without a browser-like interface. Examples of suitable devices are light bulbs, audio speakers, doorbells, and light switches. The reason is that these types of devices interact with people’s physical world (e.g., by adjusting light levels), operate autonomously, and often a have a limited number of tasks, which is typical for IoT devices (see Background). Multi-purpose devices like tablets, on the other hand, focus on enabling human users to interact with content and services, which is typical for “traditional” Internet applications.

Your output for the lab assignment consists of a lab report of at most 5 pages (excluding references) in two-column IEEE format that discusses your methodology, the results of your measurements, your analysis and observations of both the measurements and the MUD specification, and your proposal on novel usages of MUD for IoT security or extensions of the MUD specification to describe the behavior you measured (an actual MUD spec). You may use text, graphs, and tables.

The lab report must be submitted as PDF file. As part of the report, you will also need to deliver your measurement results for each IoT device in the form of:

  1. a capture of its network traffic (e.g., using the SPIN traffic downloader [SPIN] or TCPdump),
  2. its MUD profile, and
  3. a README file with the IP and MAC addresses of the IoT device and gateway and an explanation of where in the PCAP you interacted with the device in what way (use the PCAPs’ timestamps).

The name of a PCAP file must be of the form <team-ID>-<device-name>.pcap, MUD files <team-ID>-<device-name>.mud, and README files of the form <team-ID>-README.txt. If you decide to use mudgee, please include the ip flow information in your report (or as separate file <team-ID>-<device-name>.ipflow). The team IDs are equal to your group number on Canvas.

We will evaluate your report based on SSI’s learning goals, as well as on the following criteria:

During delivery on Canvas, your report will be checked for plagiarism automatically. As per the university’s policy, no forms of plagiarism are tolerated. This means that if you want to literally include sentences from other sources, you need to reference and quote them. This includes sources where you are an author (self-plagiarism). During the first lecture, we will briefly discuss the differences between citing, quoting, and copying. Please contact us if you have questions.

The lab report is evaluated as if it was a submitted paper to an academic conference. The report is considered a work of the entire group: everybody is equally responsible for the report. This means that your research has to be thorough in terms of methodology and description. An excellent 30 minute video on how to write a paper was made by Aiko Pras, so we highly recommend you watch it.

The teaching team will evaluate your report as follows. First, one of us takes all reports and blinds them, that is remove all names and references to group numbers. This ensures a double-blinded reviewing process (you don’t know who reviews your report; the reviewer does not know that you wrote it). We then divide the reports into two sets and assign two reviewers to each set. They use the criteria listed above to grade the report. Once all reports are reviewed, the reviewers cross-review a few papers in the other set of reports to make sure that we review your reports in a consistent way. Finally, we unblind the reports and process the grades.

Papers and RFCs

We’ll be using a total of 12 papers and IETF RFCs on IoT security for the technical lectures (not the guest lectures). Papers 19 and 20 are about the Manufacturer Usage Description (MUD), which you’ll need for the lab assignment. Papers [Heimdall] and [NOMS] are the papers for the re-sit on Wed Jun 16, 2021.

The goal of the papers in lecture 3 (which are not very technical) is to provide you with a broad view on the concept of the IoT in addition to the more specific solutions and analyses in the other lectures.

Lecture #3: IoT Concepts and Applications

[DNSIoT] C. Hesselman, M. Kaeo, L. Chapin, kc claffy, M. Seiden, D. McPherson, D. Piscitello, A. McConachie, T. April, J. Latour, and R. Rasmussen, “The DNS in IoT: Opportunities, Risks, and Challenges”, IEEE Internet Computing, 2020.

[WEIS] E. Leverett, R. Clayton, and R. Anderson, “Standardisation and Certification of the `Internet of Things’”, 16th Annual Workshop on the Economics of Information Security (WEIS2017), USA, June 2017,

Lecture #4: IoT Botnet Measurements

[Mirai] M. Antonakakis, T. April, M. Bailey, M. Bernhard, E. Bursztein, J. Cochran, Z. Durumeric, J. A. Halderman, L. Invernizzi, M. Kallitsis, D. Kumar, C. Lever, Z. Ma, J. Mason, D. Menscher, C. Seaman, N. Sullivan, K. Thomas, and Y. Zhou, “Understanding the Mirai Botnet”, in: 26th USENIX Security Symposium, 2017,

[Hajime] S. Herwig, K. Harvey, G. Hughey, R. Roberts, and D. Levin, “Measurement and Analysis of Hajime, a Peer-to-peer IoT Botnet”, Network and Distributed Systems Security (NDSS) Symposium 2019, San Diego, CA, USA, February 2019,

Lecture #5: IoT Honeypots

[IoTPOT] Yin Minn Pa Pa, Shogo Suzuki, Katsunari Yoshioka, Tsutomu Matsumoto, Takahiro Kasama, Christian Rossow. “IoTPOT: Analysing the Rise of IoT Compromises”. 9th USENIX Workshop on Offensive Technologies (co-located with USENIX Sec ’15), WOOT ’15, Washington, DC,

[Honware] Vetterl, Alexander, and Richard Clayton. “Honware: A virtual honeypot framework for capturing CPE and IoT zero days.” Symposium on Electronic Crime Research (eCrime). IEEE. 2019.

Lecture #6: IoT Edge Security Systems

[CGuard] Chase E. Steward, Anne Maria Vasu, Eric Keller, “CommunityGuard: A Crowdsourced Home Cyber-Security System”, ACM International Workshop on Security in Software Defined Networks and Network Function Virtualization (SDN-NFV Security), March 2017,

[DBolt] R. Ko and J. Mickens, “DeadBolt: Securing IoT Deployments”, Applied Networking Research Workshop, Montreal, QC, Canada, July 16, 2018 (ANRW ’18),

Lecture #7: IoT Device Behavior

[AuDI] Marchal, S., Miettinen, M., Nguyen, T. D., Sadeghi, A-R., & Asokan, N. (2019). AuDI: Towards Autonomous IoT Device-Type Identification using Periodic Communication. IEEE Journal on Selected Areas in Communications,

[IMC] J. Ren, D. J. Dubois, D. Choffnes, A. M. Mandalari, R. Kolcun, and H. Haddadi, “Information Exposure from Consumer IoT Devices: A Multidimensional, Network-Informed Measurement Approach”, Internet Measurement Conference (IMC2019), Amsterdam, Netherlands, Oct 2019,

Lecture #8: IoT Security in Non-Carpeted Areas

[Lora] X. Wang, E. Karampatzakis, C. Doerr, and F.A. Kuipers, “Security Vulnerabilities in LoRaWAN”, Proc. of the 3rd ACM/IEEE International Conference on Internet-of-Things Design and Implementation (IoTDI), Orlando, Florida, USA, April 17-20, 2018,

[ICS] Li, Q., Feng, X., Wang, H., & Sun, L. (2018). Understanding the Usage of Industrial Control System Devices on the Internet. IEEE Internet of Things Journal, 5(3), 2178–2189. doi:10.1109/jiot.2018.2826558,

Lecture #9: Edge Security Systems (re-sit)

[Heimdall] Javid Habibi, Daniele Midi, Anand Mudgerikar, and Elisa Bertino, “Heimdall: Mitigating the Internet of Insecure Things”, IEEE Internet of Things Journal, Vol. 4, No. 4, Aug 2017,

[NOMS] Lastdrager, E.E.H. and Hesselman, C.E.W. and Jansen, J. and Davids, M., “Protecting Home Networks From Insecure IoT Devices,” Proceedings of the 2020 IEEE/IFIP Network Operations and Management Symposium (NOMS 2020). Bugapest, Hungary, 20-24 April 2020,

Lab Assignment

[RFC8520] E. Lear, R. Droms, and D. Romascanu, “Manufacturer Usage Description Specification”, RFC 8520, March 2019,

[MUD] Ayyoob Hamza, Dinesha Ranathunga, H. Habibi Gharakheili, Matthew Roughan, Vijay Sivaraman, “Clear as MUD: Generating, Validating and Applying IoT Behaviorial Profiles” (Technical Report), April 2018,

[SPIN] SPIN homepage,


[Castle] Noah Apthorpe, Dillon Reisman, Nick Feamster, “A Smart Home is No Castle: Privacy Vulnerabilities of Encrypted IoT Traffic”, Workshop on Data and Algorithmic Transparency (DAT ’16), New York University Law School, November 2016,

[5G] B. Hubert, “5G: The outsourced elephant in the room”, blog, Jan 2019,

[Merkel] Opening Speech Internet Governance Forum, Bundes Chancellor Merkel, Nov 2019, (as of 26:00)



The “Internet of Things” (IoT) is an emerging Internet application that promises to make our society smarter, safer, and more sustainable. Analysist expect the IoT will connect 20-30 billion everyday objects to the Internet, such as cars, drones, robots, traffic lights, door locks, and light bulbs.

The key potential of the IoT is its pervasive and passive nature: it’ll be all around us through (tiny) sensors and actuators, operating passively and invisibly “in the background” of our daily lives [WEIS]. Conceptually, the IoT continually interprets and updates a distributed online representation of people’s physical environments based on data from a wide range of sensors and then uses this model to act upon the real world through actuators, all typically without human involvement or awareness.

While the extraordinary high expectations that folks have of the of the IoT may come true, we believe there is a need to complement such optimism with a recognition of the also extraordinary safety and privacy risks to society that the IoT brings. For example, adversaries can exploit vulnerabilities in insecure IoT devices to launch massive DDoS attacks on Internet infrastructure, such as the DDoS attacks on DNS provider Dyn of late 2016 [Mirai], which led to large-scale outages of popular services such as Spotify and Twitter. In addition, it may also jeopardize the privacy and safety of users, for example because insecure IoT devices enable adversaries to remotely capture the video feed of online baby monitors or remotely open doors or change room temperatures.

Another concern is that the IoT is opaque to users: their IoT devices often interact with remote services on the Internet to perform their tasks [Castle, IMC], but users will typically be unaware of this “backend” of the IoT. For example, they will usually not know the companies that operate these services and that process users’ data (e.g., hyper giants such as Google) and the legal jurisdiction that applies. The societal risk is that we lose view of and control over the infrastructure on which the IoT builds and the public values that we find important in the Netherlands and Europe (“digital sovereignty”) [Merkel].


SSI provides you with an overview of current IoT security challenges and technical solutions to address them, for instance using profiles that describe the behavior of IoT devices, measurement systems, and security systems for home networks that automatically block outgoing DDoS traffic. SSI will test your ability to understand, apply, and modify a few of these solutions.

SSI aims to provide you with 20% broad expertise and 80% deep technical expertise.

The study material for SSI consists of (1) scientific papers and IETF RFCs and (2) a hands-on lab assignment to measure the behavior of IoT devices and describe it through a device profile.

Learning Outcomes

After successful completion of SSI you will:

SSI also contributes to your skills to independently carry out research projects and to develop services and systems.



SSI is a collaboration of the University of Twente and SIDN Labs (, the research team of the operator of the Netherlands’ top-level domain, .nl. SIDN Labs’ goal is to increase the trustworthiness of the Internet infrastructure for our society, for instance through SPIN [SPIN], an open source security system that protects the Internet and end-users from compromised IoT devices.

Study Material

The study material of SSI consists of academic papers and (draft) IETF standards (RFCs), the MUD RFC.