A comprehensive, interactive learning platform for reverse engineering, malware analysis, and cybersecurity research. Built with Next.js 15 and featuring a terminal-inspired dark theme.
- 📚 6 Progressive Lessons - From foundations to advanced techniques
- 🛠️ Interactive Learning - Hands-on exercises with real samples
- 🌙 Dark Theme - Professional hacker/cybersecurity aesthetic
- 📱 Responsive Design - Works on desktop, tablet, and mobile
- 💻 Terminal UI - Authentic command-line interface styling
- 🧭 Navigation System - Seamless lesson-to-lesson progression
| Lesson | Title | Duration | Difficulty | Topics |
|---|---|---|---|---|
| 1 | Foundations | 2 hours | Beginner | Introduction, tool setup, ethical guidelines |
| 2 | Assembly Fundamentals | 3 hours | Beginner | CPU architecture, registers, instructions |
| 3 | Static Analysis | 3 hours | Intermediate | Disassemblers, strings, file structure |
| 4 | File Formats | 2.5 hours | Intermediate | PE/ELF/Mach-O, headers, sections |
| 5 | Dynamic Analysis | 4 hours | Intermediate | Debuggers, runtime analysis, API monitoring |
| 6 | Advanced Static Analysis | 6 hours | Advanced | IDA Pro, Ghidra, control flow analysis |
- Node.js 18.17 or later
- npm or yarn package manager
- Modern web browser
-
Clone the repository
git clone https://github.com/yourusername/reverse-engineering-academy.git cd reverse-engineering-academy -
Install dependencies
npm install # or yarn install -
Run the development server
npm run dev # or yarn dev -
Open your browser Navigate to http://localhost:3000
npm run build
npm start- ⚛️ Framework: Next.js 15.5.3 with App Router
- 📝 Language: TypeScript
- 🎨 Styling: Tailwind CSS
- 🧩 Components: Custom React components
- ✨ Animations: CSS animations and transforms
- 📦 Icons: Unicode emojis and symbols
- 🚀 Deployment: Vercel, Netlify, or any Node.js host
- Dark color scheme (
#0a0a0abackground) - Green accent colors (
#10b981) - Monospace fonts for code authenticity
- Command-line inspired interactions
- Progressive difficulty curve
- Real-world examples and samples
- Hands-on practical exercises
- Professional tool integration
reverse-engineering-academy/
├── src/
│ ├── app/ # Next.js App Router pages
│ │ ├── globals.css # Global styles and dark theme
│ │ ├── layout.tsx # Root layout
│ │ ├── page.tsx # Homepage
│ │ └── lessons/ # Lesson pages
│ │ ├── foundations/
│ │ ├── assembly-basics/
│ │ ├── static-analysis/
│ │ ├── file-formats/
│ │ ├── dynamic-analysis/
│ │ └── 6-advanced-static-analysis/
│ └── components/ # Reusable components
│ ├── CodeBlock.tsx
│ ├── DownloadButton.tsx
│ └── Navigation.tsx
├── public/ # Static assets
│ ├── exercises/ # Practice files
│ ├── samples/ # Analysis samples
│ └── guides/ # Reference materials
├── exercises/ # Source code for exercises
└── README.md # This file
After completing this course, students will be able to:
- ✅ Set up and use professional reverse engineering tools
- ✅ Read and understand assembly language
- ✅ Perform static analysis of binary files
- ✅ Conduct dynamic analysis and debugging
- ✅ Analyze malware samples safely
- ✅ Understand file formats and structures
- ✅ Apply advanced RE techniques
- ✅ Develop detection signatures (YARA rules)
- Ghidra - NSA's open-source disassembler
- Radare2/rizin - Command-line RE framework
- x64dbg - Windows debugger
- GDB - GNU debugger
- YARA - Pattern matching engine
- IDA Pro - Industry standard disassembler
- Binary Ninja - Modern RE platform
- Hex-Rays Decompiler - Advanced decompilation
- Online disassemblers and analyzers
- Sandbox environments for safe analysis
- Threat intelligence platforms
This platform is designed for educational purposes only. All content follows ethical guidelines:
- 📚 Educational Use - Learning defensive security techniques
- 🔬 Research Purpose - Understanding malware for protection
- 🛡️ Defensive Focus - Building better security defenses
⚠️ No Harm - Simulated samples that cannot cause damage
- ✅ Use knowledge for defensive security
- ✅ Respect applicable laws and regulations
- ✅ Practice responsible disclosure
- ✅ Never use skills maliciously
- ❌ Do not attack systems you don't own
- ❌ Do not distribute actual malware
We welcome contributions! Here's how you can help:
- Open an issue on GitHub
- Provide detailed descriptions
- Include screenshots if applicable
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Ensure all content is educational and legal
- Include practical examples and exercises
- Follow existing lesson structure and styling
- Maintain the dark terminal aesthetic
- Test thoroughly before submitting
# Development
npm run dev # Start development server with Turbopack
npm run build # Build production version
npm run start # Start production server
npm run lint # Run ESLint
# Testing
npm run type-check # TypeScript type checking# Connect GitHub repository to Vercel
# Automatic deployments on push to main# Build command: npm run build
# Publish directory: .next# Build Docker image
docker build -t reverse-engineering-academy .
docker run -p 3000:3000 reverse-engineering-academyStudents can track their progress through:
- 📋 Lesson Completion - Complete all 6 lessons
- 🛠️ Tool Mastery - Master key RE tools
- 🔍 Sample Analysis - Analyze practice samples
- 🏅 Certification - Earn completion certificates
- 💬 GitHub Discussions - Ask questions and share knowledge
- 🐦 Twitter - Follow for updates and tips
- 📧 Newsletter - Monthly cybersecurity insights
- 🎮 Discord - Real-time chat with other learners
This project is licensed under the MIT License - see the LICENSE file for details.
Special thanks to:
- NSA Ghidra Team - Open-source reverse engineering framework
- Hex-Rays - IDA Pro and advanced decompilation
- Radare2 Community - Unix-like reverse engineering framework
- YARA Project - Pattern matching engine for malware research
- Next.js Team - Excellent React framework
- Tailwind CSS - Utility-first CSS framework
- Cybersecurity Community - Continuous inspiration and knowledge sharing
For questions, suggestions, or issues:
- 📧 GitHub Issues - Bug reports and feature requests
- 💬 Discussions - General questions and community help
- 🔗 LinkedIn - Professional networking
- 🐦 Twitter - Quick updates and tips
This platform is intended for cybersecurity education and research.
Users are responsible for complying with applicable laws and ethical guidelines.
🏗️ Built with ❤️ for the cybersecurity community
⭐ Give us a star if this project helped you learn!