Can’t CAPTCHA this Machine!
Learning Objectives
- Complex neural network structures
- How does a convolutional neural networks function?
- Using neural networks for optical character recognition
- Integrating neural networks into red team tooling
Convolutional Neural Networks
In the previous tasks, we talked about neural network structures. However, most of these structures were fairly basic in nature. Today, we will cover an interesting structure called a convolutional neural network (CNN).
CNNs are incredible ML structures that have the ability to extract features that can be used to train a neural network. In the previous task, we used the garbage-in, garbage-out principle to explain the importance of our inputs having good features. This ensures that the output from the neural network is accurate. But what if we could actually have the neural network select the important features itself? This is where CNN comes into play!
In essence, CNNs are normal neural networks that simply have the feature-extraction process as part of the network itself. This time, we’re not just using maths but combining it with linear algebra. Again, we won’t dive too deep into the maths here to keep things simple.
We can divide our CNN into three main components:
- Feature extraction
- Fully connected layers
- Classification
Questions:
What key process of training a neural network is taken care of by using a CNN?
Feature Extraction
What is the name of the process used in the CNN to extract the features?
Convolution
What is the name of the process used to reduce the features down?
Pooling
What off-the-shelf CNN did we use to train a CAPTCHA-cracking OCR model?
Attention OCR
What is the password that McGreedy set on the HQ Admin portal?
ReallyNotGonnaGuessThis
What is the value of the flag that you receive when you successfully authenticate to the HQ Admin portal?
You can follow the video below in case you are stuck:
THM{Captcha.Can’t.Hold.Me.Back}