Now, you have an idea of the types of things that can go wrong in web applications. That is, you've reasoned about Web Security and seen what kind of web exploits there can be. But what about the web server itself? The web server is an application that you connect to over the network. Later in this course, we'll explore both the security of network connections and the security of applications themselves. Here, in this module, we will learn how these programs are built!
In some sence, prior modules have approached this point from "above": higher-level concepts like Linux commands, HTTP requests, JavaScript, etc. This module will start at bedrock: computer architecture and x86 assembly, and build up from there. We'll first gain some assembly knowledge, then some debugging knowledge, and, finally, create our very own web server from scratch!
You have two weeks, but don't dawdle. The web server is tough, and debugging can take a bit to wrap your brain around. Our advice is to push through past the Assembly Crash Course in week 1, even though the checkpoint ends partway through that. That'll put you in a good spot for the final push!
The challenges for the module are here: Computing 101.
NEED HELP?
The official way to get help is via our discord!
Start the challenge that you need help with, and then use the /help command!
That will get you pointed in the right direction.
QUESTIONS ON GRADING / DUE DATES? Check the grades page!