DIABOLICAL CODE

The virus Stuxnet was the first Cyber warfare malware that proved that a piece of code could escape the digital realm and wreak actual physical destruction - in this case, on a nuclear facility.

In this course, we’ll learn how to create a digital weapon like Stuxnet using Python, Go programming language, ARM assembly language, C, and C++.

Diabolical Code

Cyber Warfare

Dive deep into the concepts of Cyber Security and Cyber Warfare by learning to design, build, deploy, and operate Digital Weapons for National Security.

Crafting a Digital Weapon

Components of a Digital Weapon and how to put it all together.

Payload
Payload

Learn to build multiple payloads for your Digital Weapon. Your main payload would attack the PLCs to disrupt it's default operation, while another payload performs a Man-in-the-Middle attack to fake the inputs coming from the PLC's I/O modules and tell it's output to do what it wants, not what the stock hard-coded logic says.

At the same time, program the payload to replay previously recorded input data to make the PLC logic and the operator think that all is well.

Delivery System
Delivery System

Stealth: Learn to build a worm that executes all routines related to the main payload of the attack; a process that automatically executes the propagated copies of the worm; and a rootkit component that hides all malicious files and processes, to prevent detection of your Digital Weapon.

Precision: Learn to write code that enables your worm to stay dormant while it is staking out the target, reactivating itself & attacking systems when the right conditions are met.

Command and Control
Command and Control

Program your Digital Weapon to phone home when needed.

Your weapon would be designed to operate autonomously, but you will also learn how to code Command and Control capabilities (Fly-by-Wire) to flip the kill switch if and when required, to track the health of the worm itself, to monitor it’s operations, to collect telemetry, and to perform version control - update the worm on-the-fly as you learn from it's behaviour while it navigates hostile territory.

Become a Cyber Warrior

Earn your Badge with a specialization in Digital Weapons Design.

Diabolical Code. Learn the Art of building Digital Weapons from Ace Hacker.
LEVEL I

Duration of the course

Duration:

4 weeks


Total hours of training and engagement

≈ 300 hours
of training & engagement


Syllabus

See Syllabus


Start Date

Schedule, 2023

Feb 06 - Mar 06


Fee

Fee, excluding tax (in INR)

₹ 60,480


Hurry!

Applications

Closed


Diabolical Code - Level 2.
LEVEL II

Duration of the course

Duration:

8 weeks


Total hours of training and engagement

≈ 500 hours
of training & engagement


Syllabus

See Syllabus


Start Date

Schedule, 2023

Feb 06 - Apr 06


Fee

Fee, excluding tax (in INR)

₹ 1,20,960


Applications closed

Applications

will open shortly


Notify Me

Diabolical Code - Level 3
LEVEL III

Duration of the course

Duration:

12 weeks


Total hours of training and engagement

≈ 800 hours
of training & engagement


Syllabus

See Syllabus


Start Date

Schedule, 2023

Feb 06 - May 06


Fee

Fee, excluding tax (in INR)

₹ 1,81,440


Applications closed

Applications

will open shortly


Notify Me

Diabolical Code - Level 4
LEVEL IV

Duration of the course

Duration:

16 weeks


Total hours of training and engagement

≈ 1000 hours
of training & engagement


Syllabus

See Syllabus


Start Date

Schedule, 2023

Feb 06 - Jun 06


Fee

Fee, excluding tax (in INR)

₹ 2,41,920


Applications closed

Applications

will open shortly


Notify Me

Syllabus

Data Structures and Algorithms

A good understanding of algorithms and the knowledge of when to apply them is crucial to producing software that not only works correctly, but also performs efficiently. The following topics on Data Structures & Algorithms (DSA) are covered in Level 1 of this course.

  • Introduction to Data Structures & Algorithms
  • Iteration and Recursion
  • Lists
  • Queues
  • Stacks
  • Basic Sorting
  • Advanced Sorting
  • Priority Queues
  • Binary Searching and Insertion
  • Binary Search Trees
  • Hashing
  • Sets
  • Maps
  • Ternary Search Trees
  • B-Trees
  • String Searching
  • String Matching
  • Computational Geometry
  • Pragmatic Optimization

Talk to the Machine

Dive into machine organization without the extra overload of learning assembly language programming. Examples in C/C++, Python, Go lang, Java, and JavaScript, the topics below fills in the low-level details of machine organization that are often left out of computer science and engineering courses.

  • Numeric Representation
  • Binary Arithmetic and Bit Operations
  • Floating-Point Representation
  • Character Representation
  • Memory Organization and Access
  • Composite Data Types and Memory Objects
  • Boolean Logic and Digital Design
  • CPU Architecture
  • Instruction Set Architecture
  • Memory Architecture and Organization
  • Input and Output (I/O)

Secure Network Programming

Learn to think like a Cracker so that you can develop effective, defensive code. In this module, you’ll learn hacking techniques and get insights into understanding how to prevent hacking issues in your code. You will also learn to write and use scanners, sniffers, exploits, and how to write network security test harness for application and infrastructure.

  • On Networking
  • Building Network Tools
  • Encryption & Password Cracking
  • Hacking the Web
  • Cracks, Hacks, and Counterattacks
  • Security Architecture
  • Firewalls
  • Passive Defence
  • Wireless Networking

Think Low-Level, Write High-Level

Learn to write portable and efficient programs by analyzing the output of compiler and interpreters. Learn the types of machine code statements that compilers and interpreters generate for common control structures and explore how to choose the best statements when writing High-Level Language code. Design & write shorter and faster programs that translate into efficient machine code.

  • Introduction to Assembly Language
  • 80x86 Assembly for the HLL Programmer
  • Compiler Operation and Code Generation
  • Tools for Analyzing Compiler Output
  • Constants and High-Level Languages
  • Variables in a High-Level Language
  • Array Data Types
  • Pointer Data Types
  • String Data Types
  • Record, Union, and Class Data Types
  • Arithmetic and Logical Expressions
  • Control Structures and Programmatic Decisions
  • Iterative Control Structures
  • Functions and Procedures

Hack with Python

Learn to program in Python while making and breaking ciphers—algorithms used to create and send secret messages. Make, test, and hack Python programs that encrypt text with ciphers like the Transposition cipher and Vigenère cipher. Learn to write Python code for the Reverse and Caesar ciphers, and then work your way up to public key cryptography - the type of encryption used to secure today’s online transactions, including digital signatures, email, and Crypto currency like Bitcoin.

  • Programming in Python
  • The Reverse Cipher
  • The Caesar Cipher
  • Hacking the Caesar Cipher with Brute Force
  • Encrypting with the Transposition Cipher
  • Decrypting with the Transposition Cipher
  • Programming a program to test your program
  • Encrypting and decrypting files
  • Detecting Natural Languages programmatically
  • Hacking the Transposition Cipher
  • An arithmetic module for the Affine Cipher
  • Programming the Affine Cipher
  • Hacking the Affine Cipher
  • Programming the Simple Substitution Cipher
  • Hacking the Simple Substitution Cipher
  • Programming the Vigenère Cipher
  • Frequency Analysis
  • Hacking the Vigenère Cipher
  • The one-time Pad Cipher
  • Finding and generating Prime Numbers
  • Generating keys for the RSA Cipher
  • Programming the RSA Cipher

On Cybersecurity

Beginning with the use of antipatterns and moving through improvements in security architecture, customizing tools, effective pen testing, and network monitoring, learn how to build security into an organization’s systems. The following topics are covered in this module:

  • Cyber Network Security Concepts
  • Cyber Antipatterns
  • Enterprise Security using the Zachman Framework
  • Cyber Network Security Hands-on
  • Network Administration
  • Customizing BackTrack and Security Tools
  • Protocol Analysis and Network Programming
  • Reconnaissance, Vulnerability Assessment
  • Cyber Testing
  • Penetration Testing
  • Cyber Network Defence using Advanced Log Analysis
  • Cyber Network Application Domains
  • Cybersecurity for end users, social media, and virtual worlds
  • Cybersecurity Essentials for Small Business
  • Large Enterprise Cybersecurity: Data Centres and Cloud Infrastructure
  • Cyber Warfare Architecture for Deterrence

Crack the Cybersecurity Interview

Hone your skills with:

  • Sprint Coding/Programming Competitions
  • Marathon Hackathons
  • Cyber War Games
  • Catch-The-Flag (CTF) competitions
  • Crack-Me competitions
  • Cyberware Drills
  • Cybersecurity Incident simulation exercises
  • Puzzle solving through Code for sharpening logical aptitude
  • Mock Interviews

Version Control using Git & GitHub

Version control is a system that records changes to a file or set of files over time so that you can recall specific versions later. Using a VCS also generally means that if you screw things up or lose files, you can easily recover. In this module, you’ll learn to use version control using Git & Github.

  • Git Basics
  • Git Branching
  • Git on the Server
  • Distributed Git
  • Github
  • Git Tools
  • Customizing Git
  • Git and Other Systems
  • Git Internals
  • Git in Other Environments
  • Embed Git in your applications

Everything in Level 1 plus additional subjects as highlighted below.

Forge your Weapons, Part I

In this module, you’ll learn how to move from a theoretical understanding of offensive computing concepts to a practical implementation. Instead of relying on another attacker’s tools, you’ll learn to forge your own weapons using Python.

  • Write a Zip-File Password Cracker
  • Write your own Penetration Testing Tools
  • Build a Port Scanner
  • Build a SSH BotNet
  • Build an Anonymous FTP Scanner
  • Build your own Conficker Worm
  • Write your own Zero-Day Proof of Concept Code
  • Write your own tools for Forensic Investigations
  • Build your own tools for doing Web Reconnaissance
  • BlueBugging Phones with Python

Forge your Weapons, Part II

  • Build your own tools for Network Traffic Analysis
  • Build your own tools to passively sniff Wireless Traffic
  • Build your own tools for listening to Probe Requests
  • Build your own tools to locate Hidden Network Beacons
  • Build your own tools to de-cloak Hidden Networks
  • Build your own tools to analyze Metadata
  • Build your own tools to investigate application artifacts
  • Build your own tools to analyze Mobile Backups
  • Write your own tools to analyze Wireless Access Points
  • Build your own tools to recover deleted items in the Recycle Bin
  • Detecting FireSheep
  • Stalking with Bluetooth and Python
  • Taking over Printers with Python

Hacking UAVs

Learn how to Intercept and Spy on UAVs.

  • Intercept the signal Traffic
  • Dissect the Protocol
  • Learn how to craft 802.11 Frames with Scapy
  • Finalizing the Attack
  • Emergency Landing the UAV

Evade Antivirus programs

  • Introduction: How Flame evaded Antivirus programs
  • Build your own scripts to evade Antivirus programs
  • Learn how to verify the Evasion

Go Programming Language

The Go Programming Language was conceived at Google. Go is especially well suited for building infrastructure like networked servers, and tools and systems for programmers, but it is truly a general-purpose language and finds use in domains as diverse as graphics, mobile applications, and machine learning.

  • Introduction to Go
  • Program Structure
  • Basic Data Type
  • Composite Types
  • Functions
  • Methods
  • Interfaces
  • Goroutines and Channels
  • Concurrency with Shared Variables
  • Packages and the Go Tool
  • Testing
  • Reflection
  • Low-Level Programming

Everything in Level 1 and Level 2 plus additional subjects as highlighted below.

Writing Rootkits & Bootkits

In this module, you’ll learn how to create sophisticated, advanced attacks that bury deep in a machine’s boot process or UEFI firmware. You’ll understand in detail the delivery stage of threats against BIOS and UEFI firmware in order to create worms that can evade detection.

  • Understanding Rootkits
  • Understanding Bootkits
  • Festi Rootkit: The most advanced Spam and DDOS Bot
  • Rootkit Infections
  • Operating System Boot Process Essentials
  • Boot Process Security
  • Bootkit Infection Techniques
  • Static Analysis of a Bootkit Using IDA Pro
  • Bootkit Dynamic Analysis: Emulation and Virtualization
  • MBR and VBR Infection Techniques
  • IPL Bootkits
  • Advanced VBR Infections
  • MBR Ransomware
  • UEFI Boot vs. MBR/VBR Boot Process
  • Contemporary UEFI Bootkits
  • UEFI Firmware Vulnerabilities
  • How UEFI Secure Boot works
  • Approaches to analyzing hidden Filesystems
  • BIOS/UEFI Forensics: Firmware Acquisition and Analysis Approaches

Malware Analysis

Learn to analyze, debug, and disassemble malware. Malware Analysis is a cat-and-mouse game with rules that are constantly changing. Through this module, we ensure that your fundamentals are strong enough to handle any situation that is thrown at you.

  • Basic Static Techniques
  • Malware Analysis in Virtual Machines
  • Basic Dynamic Analysis
  • A crash course in x86 Disassembly
  • IDA Pro
  • Recognizing C Code Constructs in Assembly
  • Analysis Malicious Windows Programs
  • Debugging
  • OllyDbg
  • Kernel Debugging with WinDbg
  • Malware Behaviour
  • Covert Malware Launching
  • Data Encoding
  • Malware-Focused Network Signatures
  • Anti-Disassembly
  • Anti-Debugging
  • Anti-Virtual Machine Techniques
  • Packers and Unpacking
  • Shellcode Analysis
  • C++ Analysis
  • 64-Bit Malware

Programming in C

  • Basics of C Programming
  • Expressions
  • Statements
  • Array and Strings
  • Pointers
  • Functions
  • Structures, Unions, Enumerations, and typedef
  • Console I/O
  • File I/O
  • The Preprocessor
  • C99
  • Linking, Libraries, and Headers
  • I/O Functions
  • String and Character Functions
  • Mathematical Functions
  • Time, Date, and Localization Functions
  • Dynamic Allocation Functions
  • Utility Functions
  • Wide-Character Functions
  • Library Features added by C99
  • Sorting and Searching
  • Queues, Stacks, Linked Lists, and Trees
  • Sparse Arrays
  • Expression Parsing and Evaluation
  • AI-based Problem Solving
  • Building a Windows OS Skeleton
  • Efficiency, Porting, and Debugging
  • Writing a C Interpreter

Programming in C++

  • Foundation of C++ Programming
  • Expressions
  • Statements
  • Arrays and Null-Terminated Strings
  • Pointers
  • Functions
  • Structures, Unions, Enumerations, and User-Defined Types
  • C-Style Console I/O
  • The Preprocessor
  • Classes and Objects
  • Array, Pointers, References, and the Dynamic Allocation Operators
  • Function Overloading, Copy Contructors, and Default Arguments
  • Operator Overloading
  • Inheritance
  • Virtual Functions and Polymorphism
  • Templates
  • Exception Handling
  • The C++ I/O System
  • C++ File I/O
  • Run-Time Type ID and the Casting Operators
  • Namespaces, and Conversion Functions
  • The Standard C++ I/O Classes
  • The STL Container Classes
  • The STL Algorithms
  • STL Iterators, Allocators, and Function Objects
  • The String Class
  • The Numeric Classes
  • Exception Handling and Miscellaneous Classes

Everything in Level 1, Level 2, and Level 3 plus additional subjects as highlighted below.

Assembly Language Programming

Learning Assembly Language is a great way to learn about system architecture. In this module, we’ll learn how to program the Raspberry Pi at the lowest level with Assembly Language Programming for the ARM processor. Even though the Raspberry Pi is credit card sized, it is still a sophisticated computer with a quad-core processor, a floating-point co-processor, and a NEON parallel processing unit. What you learn about the Raspberry Pi is directly relevant to any device with an ARM processor, which includes nearly every cell phone and tablet.

  • Getting started with Assembly Language Programming
  • Loading and Adding
  • Tooling Up
  • Controlling Program Flow
  • Programming the Memory
  • Functions and Stack
  • Linux Operating System Services
  • Programming GPIO Pins
  • Interacting with C and Python
  • Multiply, Divide, and Accumulate
  • Floating-Point Operations
  • NEON Co-processor
  • Conditional Instructions and Optimizing Code
  • Reading and Understanding Code
  • Thumb Code
  • 64 Bits
  • The ARM Instruction Set
  • Linux System Calls
  • Assembler Directives

Hacking Cars

Get an understanding of a vehicle’s communication network and learn how to intercept data and perform specific hacks to track vehicles, unlock doors, glitch engines, flood communication, and more.

  • Understanding Threat Models
  • Bus Protocols
  • Vehicle Communication with SocketCAN
  • Diagnostics and Logging
  • Reverse Engineering the CAN Bus
  • ECU Hacking
  • Building and using ECU Test Benches
  • Attacking ECUs and Other Embedded Systems
  • In-Vehicle Infotainment Systems
  • Vehicle-to-Vehicle Communication
  • Weaponizing CAN Findings
  • Attacking Wireless Systems with SDR
  • Performance Tuning

Mobile Forensic Investigations

Learn to conduct mobile device, cloud, IoT, and UAS forensic investigations. Find out how to collect prosecutable evidence, uncover hidden files, and lock down the chain of custody.

  • Introduction to Mobile Device Forensics
  • Forensics Toolbox
  • Preparing the Digital Forensics Environment
  • Conducting a Collection of a Mobile Device
  • Analyzing SIM Cards
  • Analyzing Phone Data
  • Advanced iOS Analysis
  • Querying SQLite
  • Advanced Android Analysis
  • Advanced Device Analysis: IoT, Wearables, Drones

Who can apply?

Eligibility criteria.

Age Group
Age Group

You must be 17 years of age or above at the time of registration. There is no age limit to start learning. The batches may however, be segregated based on age range or number of years of work experience, if required.

Gender
Gender

This is a gender-neutral learning environment. Participants could identify themselves as any gender (male/female/3rd gender/transgender) or choose not to disclose their gender at the time of registration.

Location
Location

Join from anywhere across the globe. Our’s is a Hybrid / Hyflex Classroom learning environment. The classroom includes a mix of students who are present onsite and those who wish to join the class virtually.

Where is Ace Hacker?

Timelines

Next cohort on Diabolical Code, Level 1 begins from Feb 06, 2023. Applications for this batch have closed. If you have already applied, your application will now go through these following stages.

Registrations
Registration

Duration of the course

Applications for Level 1 are now closed.

Registrations:

Closed

Evaluations
Evaluation

Duration of the course

If required, we would request you to take an online test and/or a short online interview between:

Dec 01 - 20, 2022

Selections
Selection

Duration of the course

An extensive assessment of all applications will be conducted to determine seat allocation latest by:

Jan 10, 2023

Communication
Communication

Duration of the course

Results will be communicated in the 3rd week of Jan, 23. Complete the joining formalities by:

Jan 20, 2023

Frequently Asked Questions

Contact us if your question isn’t answered here.

Yes, you do. Based on your performance, you'll either receive a Certificate of Completion or a Certificate of Excellence at the end of the course.

We offer placement assistance through two channels:

  • Challenge Ready: A thorough interview preparation module is built into every level of this course. Over and above your regular assignments, quizzes, tests, research paper submissions, and mock interviews, you will sharpen your skills via sprint coding competitions, marathon hackathons, war games, cyber warfare simulations, catch-the-flag (CTF) challenges and more. You will be required to compete as individuals in some format of the challenges while collaborating & competing as a team in other formats.
  • Partner Connect: When employers approach us, we connect you to their Recruitment team for you to explore all available employment opportunities that match your interest. The Interview Panel of the organizations you apply to will then take the process forward with you.

A full refund is initiated with no questions asked if a refund request is raised within 5 days from the date of commencement of the course. The refund is processed within 14 days from the date of submitting the request.

Join from anywhere across the globe. Our’s is a Hybrid / Hyflex Classroom learning environment. The classroom includes a mix of students who are present onsite and those who wish to join the class virtually.

This option is not yet available for Diabolical Code, Level 1. The option to pay in Equated Monthly Installments may be available for Level 2, Level 3, and Level 4 post launch. We are working on it. Click here if you wish to be updated when Level 2, 3, and Level 4 becomes available.

Picture yourself in a countryside valley among lush green meadowns with a crystalline lake against an endless Alpine backdrop. Fragrance of blomming Cembra Pine flowers fills the air.

You are in the wrong place. We are located in Bengaluru, India.

AceHacker Technologies Pvt. Ltd
3rd Floor, No. 670,
RBI Layout, Opposite Elita Promenade,
J.P. Nagar 7th Phase,
Bengaluru - 560078
Karnataka, India

(+91) 988.011.2117
connect@acehacker.com

View on Google Maps

Need Help?

Support

We got you.

Jump!