What is cyber security?
Cyber security can be described as the collective methods, technologies, and processes to help protect the confidentiality, integrity, and availability of computer systems, networks and data, against cyber-attacks or unauthorized access. The main purpose of cyber security is to protect all organizational assets from both external and internal threats as well as disruptions caused due to natural disasters.
As organizational assets are made up of multiple disparate systems, an effective and efficient cyber security posture requires coordinated efforts across all its information systems. Therefore, cyber security is made up of the following sub-domains:
Application security involves implementing various defenses within all software and services used within an organization against a wide range of threats. It requires designing secure application architectures, writing secure code, implementing strong data input validation, threat modeling, etc. to minimize the likelihood of any unauthorized access or modification of application resources.
Identity Management and Data Security
Identity management includes frameworks, processes, and activities that enables authentication and authorization of legitimate individuals to information systems within an organization. Data security involves implementing strong information storage mechanisms that ensure security of data at rest and in transit.
Network security involves implementing both hardware and software mechanisms to protect the network and infrastructure from unauthorized access, disruptions, and misuse. Effective network security helps protect organizational assets against multiple external and internal threats.
Mobile security refers to protecting both organizational and personal information stored on mobile devices like cell phones, laptops, tablets, etc. from various threats such as unauthorized access, device loss or theft, malware, etc.
Cloud security relates to designing secure cloud architectures and applications for organization using various cloud service providers such as AWS, Google, Azure, Rackspace, etc. Effective architecture and environment configuration ensures protection against various threats.
Disaster recovery and business continuity planning (DR&BC)
DR&BC deals with processes, monitoring, alerts and plans that help organizations prepare for keeping business critical systems online during and after any kind of a disaster as well as resuming lost operations and systems after an incident.
Formally training individuals regarding topics on computer security is essential in raising awareness about industry best practices, organizational procedures and policies as well as monitoring and reporting malicious activities.
The importance and challenges of cyber security
Given the rapidly evolving technological landscape and the fact that adoption of software is ever increasing across various sectors including finance, government, military, retail, hospitals, education, energy to name a few, more and more information is becoming digital and accessible through wireless and wired digital communication networks and across the omnipresent internet. All this highly sensitive information is of a great value to criminals and evil doers which is why it is important to protect it using a strong cyber security measures and processes.
The importance of good cyber security strategies is evident in the recent high-profile security breaches of organizations such as Equifax, Yahoo, and the U.S. Securities and Exchange Commission (SEC), who lost extremely sensitive user information that caused irreparable damage to both their finances and reputation. And as the trend suggests, the rate of cyber-attacks show no sign of slowing down. Companies, both large and small, are targeted everyday by attackers to obtain sensitive information or cause disruption of services.
The same evolving technological landscape also poses challenges in implementing effective cyber security strategies. Software constantly changes when its updated and modified which introduces new issues and vulnerabilities and opens it up for various cyber-attacks. Furthermore, IT infrastructure evolves as well with many of the companies already migrating their on-premise systems to the cloud which introduces a whole new set of design and implementation issues resulting in a new category of vulnerabilities. Companies are unaware of the various risks within their IT infrastructure and hence fail to have any cyber security countermeasures in place until it’s far too late.
What is a cyber-attack?
A cyber-attack is a deliberate attempt by external or internal threats or attackers to exploit and compromise the confidentiality, integrity and availability of information systems of a target organization or individual(s). Cyber-attackers use illegal methods, tools and approaches to cause damages and disruptions or gain unauthorized access to computers, devices, networks, applications and databases.
Cyber-attacks come in a wide variety and the following list highlights some of important ones that criminals and attackers use to exploit software:
Injection attacks (e.g., cross-site scripting, SQL injection, command injection)
Session management and Man-in-the-Middle attacks
Denial of service
Remote code execution
What’s the difference between a cyber-attack and a security breach?
A cyber-attack is not exactly the same as a security breach. A cyber-attack as discussed above is an attempt to compromise the security of a system. Attackers try to exploit the confidentially, integrity or availability of a software or network by using various kinds of cyber-attacks as outlined in the above section. Security breach on the other hand is a successful event or incident in which a cyber-attack results in a compromise of sensitive information, unauthorized access to IT systems or disruption of services.
Attackers consistently try a multitude of cyber-attacks against their targets with a determination that one of them would result in a security breach. Hence, security breaches also highlight another significant part of a complete cyber security strategy; which is Business Continuity and Incidence Response (BC-IR). BC-IR helps an organization with dealing in cases of a successful cyber-attacks. Business Continuity relates to keeping critical business system online when struck with a security incident whereas Incidence Response deals with responding to a security breach and to limit its impact as well as facilitating recovery of IT and Business systems.
11 top cyber security best practices to prevent a breach
1. Conduct cyber security training and awareness
A strong cyber security strategy would not be successful if the employees are not educated on topics of cyber security, company policies and incidence reporting. Even the best technical defenses may fall apart when employees make unintentional or intentional malicious actions resulting in a costly security breach. Educating employees and raising awareness of company policies and security best practices through seminars, classes, online courses is the best way to reduce negligence and the potential of a security violation.
2. Perform risk assessments
Organizations should perform a formal risk assessment to identify all valuable assets and prioritize them based on the impact caused by an asset when its compromised. This will help organizations decide how to best spend their resources on securing each valuable asset.
3. Ensure vulnerability management and software patch management/updates
It is crucial for organizational IT teams to perform identification, classification, remediation, and mitigation of vulnerabilities within all software and networks that it uses, to reduce threats against their IT systems. Furthermore, security researchers and attackers identify new vulnerabilities within various software every now and then which are reported back to the software vendors or released to the public. These vulnerabilities are often exploited by malware and cyber attackers. Software vendors periodically release updates which patch and mitigate these vulnerabilities. Therefore, keeping IT systems up-to-date helps protect organizational assets.
4. Use the principle of least privilege
The principle of least privilege dictates that both software and personnel should be allotted the least amount of permissions necessary to perform their duties. This helps limits the damage of a successful security breach as user accounts/software having lower permissions would not be able to impact valuable assets that require a higher-level set of permissions. Also, two-factor authentication should be used for all high-level user accounts that have unrestricted permissions.
5. Enforce secure password storage and policies
Organizations should enforce the use of strong passwords that adhere to industry recommended standards for all employees. They should also be forced to be periodically changed to help protect from compromised passwords. Furthermore, password storage should follow industry best practices of using salts and strong hashing algorithms.
6. Implement a robust business continuity and incidence response (BC-IR) plan
Having a solid BC-IR plans and policies in place will help an organization effectively respond to cyber-attacks and security breaches while ensuring critical business systems remain online.
7. Perform periodic security reviews
Having all software and networks go through periodic security reviews helps in identifying security issues early on and in a safe environment. Security reviews include application and network penetration testing, source code reviews, architecture design reviews, red team assessments, etc. Once security vulnerabilities are found, organizations should prioritize and mitigate them as soon as possible.
8. Backup data
Backing up all data periodically will increase redundancy and will make sure all sensitive data is not lost or comprised after a security breach. Attacks such as injections and ransomware, compromise the integrity and availability of data. Backups can help protect in such cases.
9. Use encryption for data at rest and in transit
All sensitive information should be stored and transferred using strong encryption algorithms. Encrypting data ensures confidentiality. Effective key management and rotation policies should also be put in place. All web applications/software should employ the use of SSL/TLS.
10. Design software and networks with security in mind
When creating applications, writing software, architecting networks, always design them with security in place. Bear in mind that the cost of refactoring software and adding security measures later on is far greater than building in security from the start. Security designed application help reduce the threats and ensure that when software/networks fail, they fail safe.
11. Implement strong input validation and industry standards in secure coding
Strong input validation is often the first line of defense against various types of injection attacks. Software and applications are designed to accept user input which opens it up to attacks and here is where strong input validation helps filter out malicious input payloads that the application would process. Furthermore, secure coding standards should be used when writing software as these helps avoid most of the prevalent vulnerabilities outlined in OWASP and CVE.