Welcome to CTF Training

Welcome to the Islander Cyber Society CTF Training Gym! This guide will help you get started with Capture The Flag (CTF) competitions. Whether you're completely new to cybersecurity or looking to develop competitive skills, this guide will walk you through everything you need to know.

CTF competitions are the perfect way to learn cybersecurity through hands-on challenges. You'll solve problems, exploit vulnerabilities, and develop skills that translate directly to real-world security work.

What is CTF?

Capture The Flag (CTF) is a type of cybersecurity competition where participants solve security challenges to find hidden "flags" (text strings that prove you completed the challenge). Think of it as a puzzle-solving competition where the puzzles are security problems.

◢ Jeopardy-Style CTF

The most common format. Challenges are organized by category with point values. Solve challenges in any order to earn points. Higher difficulty = more points.

◢ Attack-Defense CTF

Teams run vulnerable services and must patch their own while exploiting opponents' services. More advanced format requiring team coordination and defensive skills.

Why CTF? CTF competitions are the best way to develop practical security skills. You'll learn by doing, not just reading. Skills learned in CTF directly translate to penetration testing, security research, incident response, and software security engineering.

Prerequisites & Skills to Build

Don't worry if you don't have all these skills yet! CTF is a learning process, and you'll develop these through practice.

◢ Linux Fundamentals

Basic command line navigation, file permissions, processes, and shell scripting.

Start Here:
• Learn Linux basics on OverTheWire Bandit
• Practice with Ubuntu or Kali Linux
• Master basic bash commands

◢ Programming

Python is essential for CTF. Understanding code helps you write exploits and analyze programs.

Start Here:
• Learn Python basics (variables, loops, functions)
• Understand reading/writing files
• Practice network requests with requests library

◢ Networking

Understanding how computers communicate: TCP/IP, HTTP, DNS, and common protocols.

Start Here:
• Learn OSI model basics
• Understand HTTP requests/responses
• Practice with Wireshark

◢ Web Technologies

HTML, JavaScript, HTTP, cookies, and how web applications work.

Start Here:
• Build a simple website
• Learn browser developer tools
• Understand client-server architecture

◢ Cryptography Basics

Understanding encryption, hashing, encoding, and common ciphers.

Start Here:
• Learn encoding vs encryption
• Practice with CyberChef
• Understand common hashing algorithms

◢ Problem-Solving Mindset

Persistence, curiosity, and systematic thinking. CTF requires creative problem-solving.

Develop Through:
• Breaking problems into smaller steps
• Reading writeups after solving
• Asking questions and collaborating

CTF Challenge Categories

CTF challenges are organized into categories. Understanding these categories helps you know what skills to develop and what to expect in competitions.

◢ Web Exploitation

Exploit vulnerabilities in web applications like SQL injection, XSS, CSRF, and authentication bypasses.

Common Challenges: SQL injection, cross-site scripting (XSS), SSRF, authentication bypass, file upload vulnerabilities

Tools: Burp Suite, curl, browser DevTools, sqlmap

◢ Binary Exploitation / PWN

Exploit vulnerabilities in compiled programs like buffer overflows, format strings, and heap exploitation.

Common Challenges: Buffer overflow, return-oriented programming (ROP), format strings, heap exploitation

Tools: GDB, pwntools, checksec, ROPgadget

◢ Reverse Engineering

Analyze compiled programs to understand how they work, find hidden functionality, or extract secrets.

Common Challenges: Disassembly, decompilation, anti-debugging, obfuscation, malware analysis

Tools: Ghidra, IDA Pro, radare2, x64dbg, strings

◢ Cryptography

Break or exploit weak cryptographic implementations, from classical ciphers to modern encryption flaws.

Common Challenges: Classical ciphers, RSA attacks, AES misuse, hashing vulnerabilities, weak randomness

Tools: CyberChef, RsaCtfTool, hashcat, Python cryptography libraries

◢ Forensics

Investigate files, memory dumps, network captures, and digital artifacts to find hidden information.

Common Challenges: Steganography, file carving, memory analysis, network traffic analysis, file system analysis

Tools: Wireshark, Volatility, Autopsy, binwalk, exiftool

◢ Miscellaneous

Challenges that don't fit other categories: OSINT, programming puzzles, trivia, and unique challenges.

Common Challenges: OSINT (Open Source Intelligence), programming, scripting, puzzle-solving, reconnaissance

Tools: Google, Python, various scripting languages, creativity

Your First Steps

Step 1: Set Up Your Environment

Install the essential tools you'll need for CTF challenges:

  • Linux Environment: Install Kali Linux (VM or dual-boot) or use Ubuntu/Debian with security tools
  • Python: Install Python 3 and essential libraries (pwntools, requests, pycryptodome)
  • Web Tools: Install Burp Suite Community Edition for web challenges
  • Reverse Engineering: Download Ghidra for binary analysis
  • Text Editor: VS Code or Sublime Text for scripting
View Full Tool List

Step 2: Try Your First Challenges

Start with beginner-friendly challenges to build confidence:

  • picoCTF: Perfect for absolute beginners with guided challenges and hints
  • OverTheWire Bandit: Learn Linux command line through interactive challenges
  • Our Training Platform: Access beginner modules on our CTFd instance
  • HackTheBox Starting Point: Guided penetration testing machines
Access Training Platform

Step 3: Follow a Learning Path

Work through our structured training modules in recommended order:

  1. Web Exploitation Fundamentals: Start with SQL injection and XSS basics
  2. Cryptography Basics: Learn classical ciphers and encoding
  3. Forensics - Steganography: Extract hidden data from files
  4. Reverse Engineering - Assembly: Read and understand basic assembly
  5. Binary Exploitation: Simple buffer overflows
View Training Modules

Step 4: Join the Community

Learning CTF is easier with a team:

  • Attend Weekly Meetings: Join Islander Cyber Society training sessions
  • Compete Together: Participate in CTF competitions as a team
  • Read Writeups: Learn from others' solutions after competitions
  • Ask Questions: Use our Discord/Slack to discuss challenges
  • Share Knowledge: Contribute writeups and tips to help others
View Meeting Schedule

Tips for CTF Success

◢ Start with Easy Challenges

Don't jump into hard challenges immediately. Build confidence with easier problems, then gradually increase difficulty. Every expert started as a beginner.

◢ Read Writeups

After solving (or attempting) a challenge, read writeups to learn different approaches. You'll discover new techniques and tools you didn't know existed.

◢ Document Your Process

Keep notes on what you try. This helps you avoid repeating failed approaches and creates valuable reference material for future challenges.

◢ Learn One Category at a Time

It's tempting to try everything, but focusing on one category helps you build deeper expertise. Master web exploitation before moving to binary exploitation.

◢ Practice Consistently

Regular practice is more effective than cramming. Solve a few challenges each week rather than binging before competitions.

◢ Don't Give Up Too Quickly

CTF challenges are meant to be difficult. Spend time thinking about the problem before looking for hints. The "aha!" moment is worth the struggle.

◢ Use Google Effectively

Searching for error messages, tool usage, and vulnerability types is a crucial skill. CTF is open-book; research is part of the challenge.

◢ Collaborate and Compete

Work with teammates during competitions. Explaining your approach to others helps solidify your understanding and you'll learn from their perspective.

Common Beginner Mistakes to Avoid

Trying Hard Challenges Too Soon

Start with challenges marked "easy" or "beginner." Hard challenges can be demotivating when you're just starting. Build up your skills progressively.

Not Reading Challenge Descriptions Carefully

The challenge description often contains crucial hints. Read it multiple times and pay attention to every word before diving into the problem.

Giving Up After 10 Minutes

CTF challenges require persistence. If you're stuck, take a break and come back later. The best learning happens when you struggle through problems.

Not Learning from Mistakes

After failing or solving a challenge, review what worked and what didn't. Read other solutions to see different approaches. Every challenge is a learning opportunity.

Ready to Begin?

You now have the foundation to start your CTF journey. Choose your next step: