Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

PROTECTING A DISTRIBUTED SYSTEM FROM

CYBERATTACKS

SUBJECT : CS8603 DISTRIBUTED SYSTEMS

SUBMITTED BY :
MOHAMED NAUFAL H (911520104027)
ATHIL MOHIDEEN S (911520104006)
AL FAHAD A (911520104003)
KARTHI KUMAR S(911520014019)
FIDEL CASTRO K(911520104014)

Date of Submission : 24 March 2023


PROTECTING A DISTRIBUTED SYSTEM FROM

CYBERATTACKS

INTRODUCTION:
Distributed systems are composed of multiple
independent nodes that communicate and coordinate over a
network. They offer advantages such as scalability, fault
tolerance, and availability, but they also pose significant
challenges for security and protection from cyberattacks. In
this article, you will learn some basic concepts and best
practices for securing and protecting a distributed system from
malicious actors

Distributed system [1]


A distributed system contains multiple nodes that are
physically separate but linked together using the network. All
the nodes in this system communicate with each other and
handle processes in tandem. Each of these nodes contains a
small part of the distributed operating system software.
Types of Cyber Attacks [2]
Some basic Cyber attacks are:
1. Phishing: Phishing is a fraudulent action of sending
spam emails by imitating a legitimate source. At its
center, phishing abuses human motivations through
alluring message or offer. Aggressors as a thumb of
rule resort to phishing assaults by focusing on huge
gatherings and subsequently increase the odds of
probably few targets succumbing to assault. A
commonplace case of phishing assault includes
aggressor mimicking individual or foundation and
sends messages to clueless targets requesting prompt
assistance with connection appended to
correspondence. Unaware client taps on connection,
which takes them to phony site that appears to be like
real site. Individual, uninformed of snare, falls into it
and winds up offering individual subtleties to
aggressor, who at that point ransacks client even
before they understand that they have been assaulted.
2. Ransomware: Ransomware is a document encryption
programming program that utilizes a special
encryption calculation to scramble records on
objective framework. It is particular malware
disseminated to blackmail cash from targets and is
one of most pervasive and known instances of cyber
attacks. Assailant disseminates malware as infection
to get to objective PC’s hard drive. It, at that point,
encodes information and makes PC/information
unusable for client until they make the payoff
installment requested by assailant. It is frequently
difficult to decode record’s substance without anyone
else. WannaCry and Maze ransomware are ongoing
instances of how malware could unleash devastation,
driving numerous enterprises to dish out bitcoins and
cash to pay for recovering their undermined machines
and information.
3. Cryptocurrency Hijacking: As digital currency and
mining are becoming popular, also it is among cyber
criminals. They have found their evil benefit to
crypto-currency mining which involves complex
computing to mine virtual currency like Bitcoin,
Ethereum, Monero, Litecoin so on. Hackers have two
primary ways to get victim’s computer to secretly
mine cryptocurrencies. One is to trick victims into
loading crypto mining code onto their computers.
This is done through phishing-like tactics: Victims
receive legitimate-looking email that encourages them
to click on link. Link runs code that places crypto
mining script on the computer. Script then runs in
background as the victim works.
Preventing Cyber Attacks:
There are several measures that businesses and individuals
can take to prevent cyber attacks, including:

 Installing and updating antivirus software and firewalls


to prevent unauthorized access to computer systems and
networks.
 Educating employees on how to recognize and avoid
phishing attacks and other forms of cyber attacks.
 Using strong passwords and two-factor authentication to
protect sensitive data.
 Regularly backing up data to protect against data loss.

How do you secure and protect a distributed system from


cyberattacks? [3]

Authentication and authorization


The first step to secure a distributed system is to ensure
that only authorized users and nodes can access its resources
and services. Authentication is the process of verifying the
identity of a user or a node, while authorization is the process
of granting or denying permissions based on predefined
policies. You can use various methods and protocols for
authentication and authorization, such as passwords, tokens,
certificates, OAuth, Kerberos, or LDAP. You should also
enforce strong encryption and hashing for sensitive data and
credentials.

Communication and network security


The second step to secure a distributed system is to
protect the communication and network channels between the
nodes and the users. Communication and network security
involves applying techniques such as encryption, digital
signatures, firewalls, VPNs, and intrusion detection systems to
prevent unauthorized access, interception, modification, or
denial of service attacks. You should also use secure protocols
such as HTTPS, SSL, TLS, or SSH for data transmission and
remote access.

Data security and privacy


The third step to secure a distributed system is to safeguard
the data that is stored, processed, or exchanged by the nodes
and the users. Data security and privacy involves applying
techniques such as encryption, hashing, masking,
anonymization, or differential privacy to prevent data
breaches, leaks, or misuse. You should also follow the
principles of data minimization, consent, and accountability,
and comply with the relevant laws and regulations such as
GDPR or HIPAA.

Consensus and fault tolerance


The fourth step to secure a distributed system is to ensure
that the nodes can reach a consistent and reliable state despite
failures, errors, or attacks. Consensus and fault tolerance are
the mechanisms that allow the nodes to agree on the same
data or action, and to recover from or tolerate faults. You can
use various algorithms and protocols for consensus and fault
tolerance, such as Paxos, Raft, Byzantine fault tolerance, or
blockchain.
Monitoring and auditing
The fifth step to secure a distributed system is to monitor
and audit the activities and performance of the nodes and the
users. Monitoring and auditing are the processes of collecting,
analyzing, and reporting data and metrics about the system's
health, behavior, and security. You can use various tools and
frameworks for monitoring and auditing, such as Prometheus,
Grafana, ELK stack, or Splunk. You should also implement
logging, alerting, and incident response policies and
procedures.

Testing and updating


The sixth and final step to secure a distributed system is to test
and update the system regularly and frequently. Testing and
updating are the processes of verifying, validating, and
improving the system's functionality, quality, and security.
You can use various methods and tools for testing and
updating, such as unit testing, integration testing, penetration
testing, code review, or continuous integration and delivery.
You should also follow the best practices of secure coding,
code reuse, and code analysis.

How to secure your distributed system?


It is essential to have a clear understanding of the basics
of distributed systems security. In this article, we will discuss
some key considerations for securing your distributed system.
First and foremost, it is important to remember that security in
a distributed system must be designed into the system from
the ground up. It is not something that can be added on after
the fact.

Second, security must be integrated into all aspects of the


system, including its hardware, software, and networking
components.
Third, because distributed systems are often built using open-
source components, it is important to carefully vet these
components for security vulnerabilities.
Fourth, distributed systems typically span multiple
organizational boundaries. This means that security must be
coordinated across these different organizations.
Finally, it is important to regularly test the security of your
distributed system. This will help you identify any
weaknesses in your system and allow you to make necessary
changes to improve its security.

What needs to be protectedin a distributed system?[4]


In a distributed system, there are a number of different assets
that need to be protected. These include:

Data: In a distributed system, data is often replicated across


multiple nodes. This data must be protected from
unauthorized access and modification.

System resources: Distributed systems typically make use of


a variety of system resources, such as CPU time, memory, and
network bandwidth. These resources must be carefully
managed to ensure that they are not overutilized or abused.

Applications: In a distributed system, applications are often


distributed across multiple nodes. These applications must be
properly secured to prevent unauthorized access and misuse.

User accounts: In order to access a distributed system, users


must have an account on one or more of its nodes. These
accounts must be properly secured to prevent unauthorized
access.

REFERENCES :
[1] https://www.tutorialspoint.com/Distributed-Systems

[2]https://www.geeksforgeeks.org/types-of-cyber-
attacks/?ref=lbp

[3]https://www.linkedin.com/advice/3/how-do-you-secure-
protect-distributed-system-from-
cyberattacks#:~:text=The%20first%20step%20to%20secure,p
ermissions%20based%20on%20predefined%20policies.

[4]https://www.linkedin.com/pulse/how-secure-your-
distributed-system-system-design-us

You might also like