Tags
Language
Tags
June 2024
Su Mo Tu We Th Fr Sa
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 1 2 3 4 5 6

Assembly Mastery For Ethical Hacking & Penetration Testing

Posted By: ELK1nG
Assembly Mastery For Ethical Hacking & Penetration Testing

Assembly Mastery For Ethical Hacking & Penetration Testing
Published 10/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 14.28 GB | Duration: 24h 19m

Mastering low-level programming for advanced exploitation and penetration testing

What you'll learn

The course will provide an introduction to Assembly Language programming, including the syntax and structure of Assembly Language code.

Students will learn about the internal workings of a computer system, including the CPU, registers, memory management, and other components.

Understanding Reverse Engineering: Students will learn how to reverse engineer programs and understand how they work using Assembly Language.

By the end of the course, students will have gained a deep understanding of Assembly Language programming

Requirements

C programming

linux basics

Description

Assembly language programming for hackers is a specialized skill set that combines the knowledge of computer architecture and low-level programming with the creativity and resourcefulness of a hacker. Assembly language is a low-level programming language that is used to write software that interacts directly with a computer's hardware. It is a powerful tool for hackers who need to perform intricate and precise operations on a system, especially when higher-level languages are not sufficient or efficient enough.Hackers who specialize in assembly language programming are often able to perform tasks that are impossible or extremely difficult with other programming languages. For example, they can write code that directly manipulates a system's memory or registers, which can be critical for certain types of hacks such as exploiting buffer overflow vulnerabilities. Assembly language programming can also be used for reverse engineering, where hackers analyze and understand the inner workings of a system by examining its assembly code.However, assembly language programming requires a deep understanding of computer architecture and low-level programming concepts. Hackers who specialize in this area must be familiar with the instruction set of the specific computer or processor they are targeting, as well as be able to write code that is optimized for performance and efficiency. Despite its complexity, assembly language programming remains an essential skill for hackers who want to push the boundaries of what is possible with computers and systems.

Overview

Section 1: Introduction

Lecture 1 Who can join this course & what skills needed for this course

Section 2: Building the basics for assembly language programming

Lecture 2 Computer system working and the CPU role

Lecture 3 Internal components of the CPU

Lecture 4 What are the registers inside the CPU ?

Lecture 5 Flags of the CPU

Lecture 6 Flag Structure of the CPU

Lecture 7 Flags working in CPU

Lecture 8 Program's memory layout in the computer system

Lecture 9 How to view the stack of a program

Section 3: Hello World in Assembly

Lecture 10 Structure of the assembly program

Lecture 11 System calls Before Hello World in Assembly

Lecture 12 Writing our first Hello World program in assembly

Lecture 13 Compiling an assembly program in gcc

Lecture 14 Debugging our assembly program

Lecture 15 Using C library functions in assembly program

Section 4: Moving Data

Lecture 16 Defining the data in data section in assembly program

Lecture 17 Using static symbols in assembly programs

Lecture 18 How to define and use data in the bss section

Lecture 19 Moving data in Assembly programming

Lecture 20 Practical Demonstration of moving data in assembly

Lecture 21 More advanced data movements in assembly

Lecture 22 Accessing and moving indexed values in assembly

Lecture 23 Direct and indirect addressing in assembly

Lecture 24 Practical example of direct and indirect addressing in assembly

Lecture 25 Concept of indirect address pointer

Lecture 26 Accessing indexed memory locations in assembly

Lecture 27 How to create a stack frame in assembly

Lecture 28 Adding and removing data on stack in assembly

Lecture 29 Data exchange instructions in assembly

Lecture 30 Setting and clearing the flag bits Carry Flag

Lecture 31 Setting and clearning the Overflow Flag in assembly

Lecture 32 Setting and clearing the Parity Flag in assembly

Lecture 33 Setting and clearing the Sign Flag in assembly

Lecture 34 Setting and clearing the Zero Flag in assembly

Section 5: Controlling Execution flow in assembly

Lecture 35 Understanding EIP register in assembly

Lecture 36 Jump instruction in assembly

Lecture 37 what is the work of call instruction in assembly

Lecture 38 Conditional jump in indepth in assembly

Lecture 39 Using Zero flag as a conditional jump in assembly

Lecture 40 Using Overflow flag as conditional jump in assembly

Lecture 41 Using Parity flag as a conditional jump in assembly

Section 6: Using numbers in assembly programming

Lecture 42 Types of numbers which are used in assembly programming

Lecture 43 What are signed and unsigned integers and how unsigned integers are stored

Lecture 44 how unsigned integers are stored in memory

Lecture 45 Using unsigned integers in assembly program

Lecture 46 Concept of how a CPU stores the numbers in memory

Lecture 47 Practical demonstration of how CPU stores numbers in memory

Lecture 48 How to use signed numbers in assembly program

Lecture 49 SIMD registers concept in assembly

Lecture 50 MMX registers in assembly

Lecture 51 Using mmx registers in assembly to move integers

Lecture 52 Understanding SSE registers

Lecture 53 Using SSE registers in assembly

Lecture 54 What are BCD data types

Lecture 55 Storing BCD data types in memory

Lecture 56 How floating point numbers are moved

Lecture 57 Storing floating point numbers into memory

Lecture 58 Storing multiple float values at once

Section 7: Basic math functions in assembly

Lecture 59 Adding numbers in assembly

Lecture 60 Dealing with negative numbers in assembly

Lecture 61 Concept of detecting carry in addition operation

Lecture 62 Writing assembly program for detecting carry flag in addition operation

Lecture 63 Understanding overflow concept in addition arithmetic

Lecture 64 Practical demonstration of overflow in addition instruction in assembly

Lecture 65 Detecting overflow in signed integers addition in assembly

Lecture 66 Concept of add carry instruction in assembly

Lecture 67 Using ADC instruction in assembly

Lecture 68 How binary subtraction works

Lecture 69 Using sub instruction in assembly program

Lecture 70 Increment and decrement instruction in assembly

Lecture 71 Multiplication of two unsigned numbers in assembly

Lecture 72 Different ways of multiplications of signed numbers in assembly

Lecture 73 How division works in assembly

Lecture 74 Bit shifting in assembly programming

Lecture 75 Rotating bits in assembly programming

Lecture 76 Logical operations in assembly

Lecture 77 Using OR, AND and XOR logical operations in assembly programming

Section 8: Working with Strings

Lecture 78 How strings are moved in assembly ?

Lecture 79 Direction flag in string movement in assembly

Lecture 80 Movement of ESI and EDI pointers when DF flag is set in assembly program

Lecture 81 How REP instruction works in strings in assembly program

Lecture 82 Basics of comparing strings in assembly

Lecture 83 How big strings are compared with REP instruction in assembly

Lecture 84 LODS and STOS instructions in string movment in assembly programming

Lecture 85 Basic concept of how we can encrypt a string in assembly

Lecture 86 Encrypting a string in assembly program

Lecture 87 How to decrypt the encrypted string in assembly

Section 9: Using functions in assembly programming

Lecture 88 How to define a function in assembly programming

Lecture 89 Using a function in assembly programming

Lecture 90 Passing input values to functions in assembly

Lecture 91 what are function prolog and epilog with stack frame ?

Lecture 92 Creating function prolog and epilog in assembly programming

Lecture 93 Accessing function parameters using stack data

Lecture 94 Accessing stack data in our function in assembly

Lecture 95 How to use seperate function files in assembly

Lecture 96 Finding program input parameters on stack

Ethical Hackers,Pentesters,Computer Science Students,Malware analysts,Programmers,anyone who wants to learn something new in Computer science