Linux Exploits & Mitigation: Program Essentials
Ubuntu 20.04
| Intermediate
- 15 Videos | 1h 20m 10s
- Includes Assessment
- Earns a Badge
Navigating the space between userland and kernel and how it impacts how programs reside and execute inside of an operating system can lead to a better understanding of how it's exploited. Being able to debug, disassemble, and dump programs are essential to finding vulnerabilities. In this course, you'll investigate the structure of the Linux kernel, system calls, and program interfaces by running, debugging, and disassembling code. You'll explore how programs fit in memory and how they are protected and executed. You'll debug and disassemble code into its assembly for inspection. Next, you'll explore the GNU C implementation of the standard library and interface using syscalls and the Linux system call table. Finally, you'll explore how programs and scripts are executed and how they are segmented in memory.
WHAT YOU WILL LEARN
-
discover the key concepts covered in this coursedescribe a program's structure in memory in terms of address space layoutrun gdb to step through and trace debug a C programrun gdb to disassemble a program into its assembly coderun objdump and readelf to disassemble and inspect a Linux programdescribe how data and functionality are protected by separating computing resourcesdiscuss how data and functionality are protected within the Linux operating system by kernel and userland separationdescribe the GNU C Library (glibc) and how it integrates with the Linux kernel
-
interface with the Linux kernel through system calls in Cinterface with the Linux kernel through system calls in Assemblydescribe the main components of the Linux system call tablequery system calls available in your installed version of Linuxanalyze simple Linux program system calls using straceexplore how programs are segmented between their text, data, and BSS segmentssummarize the key concepts covered in this course
IN THIS COURSE
-
1.Course Overview1m 24sUP NEXT
-
2.Programming in Memory7m 19s
-
3.Running GDB7m 42s
-
4.Disassembling a Program6m 14s
-
5.Dumping Objects8m 49s
-
6.Protection Rings4m 30s
-
7.Kernel and Userland Separation4m 18s
-
8.The GNU C Library4m 3s
-
9.Using Syscalls with C6m 45s
-
10.Using Syscalls with Assembly6m 34s
-
11.Linux System Call Table3m 49s
-
12.Querying Implemented System Calls4m 33s
-
13.Executing Programs8m 51s
-
14.Segmenting Programs4m 24s
-
15.Course Summary55s
EARN A DIGITAL BADGE WHEN YOU COMPLETE THIS COURSE
Skillsoft is providing you the opportunity to earn a digital badge upon successful completion of this course, which can be shared on any social network or business platform
Digital badges are yours to keep, forever.