Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Demythifying Linux Virus Engineering
Highest Rated
Rating: 4.6 out of 5(10 ratings)
94 students
Created byTimothy Chen
Last updated 8/2024
English

What you'll learn

  • how viruses could be engineered and how to overcome various challenges to make them work
  • computer virus infection algorithms and mechanisms on Linux
  • what software design decisions viruses writers exploit
  • how to create your own virus and research its effectiveness using a provided framework by this course
  • code for example (compilable, runnable) viruses and the damage they can do
  • basic executable static analysis skills
  • various tools that are useful for displaying executable information

Course content

7 sections47 lectures4h 13m total length
  • Introduction2:05

    Welcome to this course! This video outlines what will be covered by each module/section.

  • intro quiz
  • Why Linux needs attention4:49

    This video explains why Linux is everywhere and some examples of historical Linux malware.

  • Demo: self-propagating code that prints "Hello World"6:12

    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.

  • Introducing the Containerized Dev Environment3:16
  • Where can you get help?
  • Dev Environment Setup: Mac4:06

    We will go over how to setup up dev containers on Mac.

  • Dev Environment Setup: Windows4:21

    We will go over how to setup up dev containers on Windows using the Windows Subsystem for Linux (WSL).

  • Dev Environment Setup: Linux4:04

    We will go over how to setup dev containers on Linux.

  • Development Environment Q&A

Requirements

  • Prior programming experience in C and C++
  • Basic understanding of operating system concepts
  • Have a computer that's running recent versions of Windows, Linux or Mac.

Description


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.**

Who this course is for:

  • Those who are curious how computer viruses are engineered and how to defend against them
  • Computer science students who wish to start a career in computer security
  • Reverse engineers who wish to learn Linux virus technologies