Skip to content
/ CCI25 Public

My notes on cybersecurity, might get flagged as malware by your system.

License

Notifications You must be signed in to change notification settings

grimy86/CCI25

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cybersecurity & Code Insights '25

Banner

An open-source guide / insights to x86, x86-64 assembly, C-style C++, cybersecurity operations and Windows internals into a unified learning resource.

Important

This guide is catered towards cybersecurity development, not as much to cybersecurity operations / red teaming or blue teaming.

Tip

No prior knowledge is needed.

However, if you are starting from the ground up I would recommend following path:

graph TD;
	cpp[C-style C++] --> x86-64[x86 & x86-64 assembly]
	x86-64 --> nf[Networking fundamentals]
    nf --> csec[Cybersecurity operations]
	csec --> winint[Windows internals]
	csec --> da[Dynamic analysis]
	winint --> sa[Static analysis]
Loading

Tip

  • Add this folder to your windows defender exclusions as it might remove valuable resources.
  • Don't jump from topic to topic unless you know what you're doing. Most of the "steps" build on top of eachother.
  • Install add-ons like dark reader and remove HTML elements that make reading better.
  • If you really can't wrap your head around something, just ask ChatGPT to clarify it.
  • Keep note of where you left off studying and make bookmarks in your browser application.

1. Core programming and assembly foundations

1.1 C-style C++

A C-style C++ summary of 2024. This summary is entirely possible thanks to the authors of the Learncpp website (Alex, Nascardriver and James C.) who made their knowledge available for public use.

Contains:

  • Keywords
  • Introduction / Getting started
  • Basics
  • Functions and files
  • Debugging
  • Fundamental data types
  • Constants and strings
  • Operators
  • Bit manipulation
  • Scope, duration & linkage
  • Control flow
  • Error detection and handling
  • Type conversion, type aliases & type deduction
  • Function overloading & function templates
  • Compound types: References and pointers
  • Compound types: Enums and structs
  • Summary intermezzo
  • C-style: Arrays & strings
  • Dynamic allocation
  • Functions

References

1.2 x86 & x86-64 assembly

Note this guide was reworked from x86 to x86-64 for really exact and specific differences you should do your own research.

Architecture

  1. Intro
  2. x86 Architecture
  3. Modes of operation
  4. Memory
  5. CPU Registers
  6. E Flags
  7. Word Sizes
  8. The Stack
  9. Calling Conventions
  10. Instructions / Opcodes

x86 Syntax

  1. Directives
  2. Instructions
  3. Radix characters
  4. Character constants
  5. Reserved words
  6. Identifiers
  7. Declaring variables
  8. Operator presedence

Example programs

Note

To compile NASM on windows download NASM & w64devkit-x86.

Use NASM to assemble the .asm file into an object file (.obj). Run this command in the same directory where the .asm file is located: nasm -f win32 -o fileName.obj fileName.asm

Use GCC to link the .obj file and create the final executable (.exe). Run this command: gcc -mconsole -nostartfiles -o fileName.exe fileName.obj

References

2. Cybersecurity operations

2.1 General info

  1. Pentesting Fundamentals
  2. Principles of Security
  3. Red teaming fundamentals
  4. Red teaming engagements
  5. Governance & Regulation

2.2 Cheat Sheets

  1. Networking
  2. Linux
  3. Windows
  4. Windows CLI
  5. Cryptography
  6. Vulnerabilities

2.3 Planning & Recon

  1. Planning
  2. Recon

2.4 Scanning

  1. Nmap
  2. Directory Scanners
  3. SQLmap

2.5 Gaining Access

  1. Web Enumeration
  2. OWASP Top 10
  3. Exploitation
  4. Phishing

Tools used to gain access

  1. Burpsuite
  2. Hydra

2.6 Maintaining Access

  1. Shells
  2. Linux priveledge escalation
  3. Windows priveledge escalation
  4. Windows persistence

2.7 Analysis

  1. CAPA
  2. REMnux & FlareVM

2.8 Scripting

  1. Python for pentesters

References

3. Windows Internals

3.1 Windows internals Overview

  1. Windows Internals Overview

3.2 Memory

  1. Memory

3.2 Portable executable (PE) file format & Packing

  1. PE file format

References

4. Reverse Engineering

  1. Intro to (malware) analysis
  2. Static analysis
  3. Dynamic analysis

References