
Introduction to Remote Access Tool 2.
Client-server terminology
Design of new Command and Control Server UI
Practical on creating the Server User Interface.
Practical: Coding the Server
Coding the Client RAT
Testing the RAT
Introduction to Remote Desktop Capture
Building the Local Desktop Capture Program
Local Desktop Capture with preview PictureBox
Introduction to .NET Remoting in Remote Desktop Capture
Creating the solutions folder
Creating the Remoting Interface
Creating the Remoting Server
Creating the Remoting Client
Testing the solution
Introduction to reverse connection remote desktop capture
Creating the solutions folder
Creating the remoting interface
Creating the remoting command server
Creating the remoting client RAT
Testing the reverse RAT
Testing the reverse RAT using virtual machines
Intro to Remote Command Execution (Remoting Method)
Implementing the remote-cmd-execution interface and server
Implementing the remote-cmd-execution client-RAT
Testing the remote-cmd-exec RAT
Testing the remote-cmd-exec RAT using virtual machines
Introduction to Keyloggers
Creating a Standalone Keylogger
Testing the standalone keylogger and making it invisible
Creating a gmail account for testing email-capable keyloggers
Implementing the email keylogger
Testing the email keylogger and making it invisible
Introduction to RAT Keyloggers
Creating the Keylogger Remoting-Interface
Creating the Keylogger Command Server
Creating the Keylogger Client-RAT
Testing the RAT Keylogger
Remote Access Tools also known as RATs are used to remotely control another PC over the Internet or the Local Area Network. RATs are used in network management, remote surveillance, system administration, classroom teaching systems, and so on. It is also commonly misused as a malware known as Remote Access Trojans where hackers can spy on the victim's desktop, capture keystrokes and run commands remotely.
This course is a follow-up to the first course entitled Fundamentals of Building a Remote Access Tool (RAT1) in C# where we covered C# programming, Networking and Basic RAT development. In this course, you will learn how to:
add keylogging and remote desktop capture functionalities to your RAT projects
create any remote command execution functions that you like
design a scalable multi-tab user interface for the command and control server that allows for unlimited functionalities.
Desktop capture, keylogging and remote command execution are three of the most basic functionalities found in almost all RATs and that is why we need to understand how they work. What better way to learn, than to code them yourself. Learning from existing open-source RATs is frustrating because they are too complex and the authors do not have courses or tutorials to explain them to beginners.
Features of this course:
Designed with beginners in mind.
We will study in detail, how desktop capture, keylogging and remote command execution works.
We start with very simple, bare-bones desktop and keystroke capture
Then, gradually add more functionality to them as the lessons progress.
In that way, you will be able to easily follow along in bite-sized chunks
Use .NET remoting framework for rapid application development*
*Traditionally, RATs are written using socket programming, that makes the code very complex and error-prone. In this course, I will show you an alternative way where you do not have to write low-level code. Instead you can focus on the logic and functionality of your app. We can achieve this using a powerful Microsoft technology called .NET remoting framework.
Everything in this course is highly practical. No boring theory or lectures. More like walk-throughs which you can replicate and follow along. By the end of this course, you will have the basic knowledge to design and build any RAT containing remote desktop and keystroke capture and run any remote commands that you like. This knowledge and skills are suitable for those aspiring to be Red Teamers. Even if you have no intention of creating malware, the insider knowledge and skills you gain from this course will make you a better security professional. Also, having practical knowledge of RAT development will give you a better understanding of how to perform malware analysis on RATs.
Suitable for:
Reverse Engineering and Malware Analysis Students
Programmers who want to know how Malware is created
Students planning on entering Malware Analysis and Reverse Engineering, or Penetration Testers as a Career Path
Penetration Testers and Ethical Hackers
Prerequisite:
Windows PC
Basic programming knowledge is helpful but not mandatory
Completed Fundamentals of Building a Remote Access Tool (RAT) in C#