
Welcome to this course! This video outlines what will be covered by each module/section.
This video explains why Linux is everywhere and some examples of historical Linux malware.
We will demonstrate a simple self-propagating code that prints "Hello World", while replicating itself and infecting other binaries. This is a very high level over view and we will explore bits and pieces that made this possible later in the course.
We will go over how to setup up dev containers on Mac.
We will go over how to setup up dev containers on Windows using the Windows Subsystem for Linux (WSL).
We will go over how to setup dev containers on Linux.
A gentle summary of the motivation for this chapter.
We will look at the executable file format from a thousand feet above.
We will introduce the ELF format and take a took at how people abuse the entry point and how malware uses magic array padding to avoid infecting the same binary over and over again.
We will take a look at the program header structure, that dictates how operating systems load parts of an executable file into memory.
We will take a look at the section header structure, and explain the relationship between section, program and elf headers.
New course promotion: use this coupon link to get a discount! Remember to remove brackets in the link which prevents bots.
www.udemy.[com]/course/linux-virus-engineering/?referralCode=9CB1EE4E757F0A3CD1B3
Have you ever wondered how a computer virus runs and spreads? Assuming you possess some knowledge of computer systems, this course will guide you through the intricacies of virus engineering. You will learn how they exploits design trade-offs in computer operating systems and user programs to achieve effectiveness and, at times, cause significant harm.
Unlike conventional software development, virus engineering demands specialized expertise to optimize for survival, replication, and stealth. Whether you are a computer science student, software professional, or technology enthusiast, you will find the techniques employed by malware both eye-opening and informative. By the end of this course, you will have a thorough understanding of virus engineering principles and defensive strategies, supported by live demonstrations and detailed walkthroughs.
The structure of this course aims to provide virus engineering fundamentals, and explain how things work from the operating system to application layers. The last chapter provides real-life runnable examples, demonstrating how viruses could channel data back to attacker machines, hide their tracks from system administrators or forensics, and even execute without touching the file system at all!
Each lecture will be enriched with references to sources, complementary readings to deepen your knowledge, and links to help you catch up on relevant operating systems concepts. At the end, we will summarize the course with a discussion on ethics to wrap up. This course is supplemented with a Virus Software Framework (available publicly on GitHub), that provides working code for infection algorithms that you can build and run on your computers locally. While the course content covers things at great detail, curious students will have the chance to experiment and research deeper into specific topics without starting from scratch, by leveraging existing software infrastructure. Support is also provided, via the GitHub issues page and Udemy course page, in case students have trouble setting up the development environment, or any content related questions.
The content of this course is not taught anywhere to the best of my knowledge. Some technical details from this course are well known in the binary forensics community but are not easily accessible for someone new to this field. I want to lower the barrier for entry and share knowledge more widely to software developers, system administrators, and those who are simply curious. The objective of this course however is not to instigate harm to computer systems. Rather, it aims to elucidate the mechanisms behind computer viruses and the vulnerabilities they exploit, empowering individuals to avoid falling prey to its tactics repeatedly. I want to underscore that, it is ignorance, not viruses, that pose the true harm.
**By enrolling into this course, you agree that nobody but yourself would be held liable for your own actions.**