Project - Defeating SkyNet Part 1: Security Essentials
Introduction
It's 2016. Almost every device with a CPU in it has been connected to the Internet. Whilst this is a stunning advance for humanity, the security for these devices has come as an afterthought or not at all. Millions of computers and devices, all with valuable information and processing power, are left vulnerable to attack.
Blackhats, and even possibly governments, have created viruses, worms and other dastardly schemes to mine for information and turn a prot using these weaknesses. In this project, we'll be specically looking at botnets: how they work, why they're valuable and why it's so di?cult to defeat them.
Botnets perform various tasks including but not limited to:
Stealing condential information (passwords, banking details, etc.)
Sending spam email
Distributed Denial of Service (DDoS) against chosen websites
Mining for Bitcoins
Hold les for ransom by encrypting them and charging for decryption
Providing a secure proxy network for other illegal enterprises
Background & Disclaimer
This project has been created to help you gain an understanding of how practical a massive cyber attack is and how complex it can be to defend against it. The basic technology of this project is pulled from the Concker worm that ravaged the Internet in November 2008. At its peak, Concker controlled up to 7 million computers across 200 countries. Concker would only have needed 2 million of those machines to overpower the top 500 supercomputers at the time combined. To combat the threat, Microsoft formed an industry group to counter Concker, composed of numerous security and technology companies. This group also conversed with government agencies around the world.
To understand why it was so di?cult to slow down or defeat, we'll be implementing key components of this botnet that utilise advanced cryptographic techniques.
This is not an operational botnet nor do we intend you to create one.
To defeat blackhats, you must understand how they work and the techniques they use. Recent botnets have used advanced computer science and cryptographic methods in order to remain secure from both blackhats, whitehats, well funded organisations and even governments. These advanced methods are what we intend you to learn and what we believe will give you the skills to detect, prevent and disassemble such attacks in the future.
Part 1: Securing the Channel
When you're transferring secrets, be they banking details or Bitcoins, you don't want to be overheard. Additionally, communicating in the open makes it easier for SkyNet to be detected via network analysis. Botnet authors don't like easy ways for computer admins to pinpoint infected machines.
In Part 1, you will need to:
-Implement key exchange using the Diffie-Hellman algorithm, when peer-to-peer connections are made between bots.
-Achieve condentiality through encryption of the client-server communications with an appropriate block or stream cipher.
-Enforce integrity through the use of a MAC appended to all messages.
-Implement resistance against replay attacks using a mechanism which you are to devise.
Attachment:- Assignment.rar