Author: Kunalk46

An Unconventional Approach to Computer Security: a blog on how you can secure your computer.

Computer Security Hello, my name is Kunal Katke, and I’d like to welcome you to www.TechBlogging.com. We’ve discussed how computers have gotten more networked in the previous three episodes, allowing us to interact almost quickly throughout the world. However, not everyone who utilizes these networks will follow the laws or look out for our best interests. We need to prevent crime and harm in the virtual world, just as we need physical security such as locks, fences, and police officers to prevent crime in the actual world. Ethics do not exist in computers. If you give them an issue to solve, they’ll gladly respond in a flash. Running code that shuts down a hospital’s computer systems until a ransom is paid is the same as running code that keeps a patient’s heart pumping. Like the Force, computers may be pulled to the light or to the dark. Cybersecurity is similar to the Jedi Order in that it strives to bring peace and justice to the cyberverse. The breadth of cybersecurity evolves at the same rate as computing capabilities, but we may think of it as a collection of approaches for safeguarding the confidentiality, integrity, and availability of computer systems and data against attacks. Let’s look at each of the three objectives in more detail: Only permitted personnel should have access to or read certain computer systems and data, which is referred to as secrecy or confidentiality. Hackers exposing people’s credit card information is a breach of privacy. Only permitted personnel should be able to use or alter systems and data, according to the definition of integrity. When hackers figure out your password and send emails pretending to be you, this is referred to as an integrity assault.  And availability refers to the fact that authorized users should always have access to their systems and information. Consider DoS attacks, in which hackers flood a website with fictitious requests, making it sluggish or unavailable for others. This is a direct attack on the availability of the service. To accomplish these three broad objectives, security specialists begin with a threat model, which is an abstract description of who your “enemy” is.  This information is used to characterize attackers, including their capabilities, objectives, and potential attack vectors. Rather of being overwhelmed by all the ways hackers may access your systems and data, threat models allow you to prepare for specific dangers. There are a plethora of possibilities. Assume you wish to “secure” your laptop’s physical access. A nosy roommate is the threat model you’ve chosen. You might keep your laptop concealed in your filthy laundry basket to maintain its secrecy, integrity, and accessibility.  If your threat model is a mischievous younger sister who knows where you keep your valuables, you’ll need to take extra precautions, like as locking it away in a safe. To put it another way, how a system is secured is largely determined by who it is being protected against. Of course, threat models are more formal than “nosy roommate.” Threat models are frequently described in terms of technical ability. “someone who has physical access to your laptop along with unlimited time.” for example. With a threat model in hand, security architects must devise a solution that maintains a system secureas long as certain assumptions are satisfied, such as no one revealing their password to the attacker. Computer systems, networks, and data can be protected in a variety of ways. Many security concerns reduce down to two questions: who are you and what should you have access to? Clearly, the right people should have access, while the wrong individuals should not. Employees at banks, for example, should be permitted to reload ATMs, but not me… because I’d grab everything! That porcelain cat collection isn’t going to happen on its own! So we utilize authentication, which is the mechanism by which a computer determines who it is talking with, to distinguish between right and incorrect persons. What you know, what you have, and who you are are the three sorts, each with its own set of benefits and drawbacks.  Authentication is dependent on the knowledge of a secret, such as a username and password, that should only be known by the true user and the machine. Because it is the simplest to implement, this is the most extensively utilized nowadays. However, if hackers figure out or learn your secret, it might be jeopardized. Some passwords, such as 12356 or Qwerty, are simple for humans to guess. There are, however, some that are computer-friendly. Take 2580 as an example of a PIN. For a human, this appears to be rather tough to estimate.  However, fourdigit PIN combinations are limited to ten thousand. In a fraction of a second, a computer can attempt to input 0000, 0001, 0002, and so on, all the way up to 9999. Because it tries everything, this is considered a brute force attack. The algorithm isn’t really inventive. After three unsuccessful tries, some computer systems lock you out or need you to wait a short time. This is a frequent and sensible technique, and it makes it more difficult for less skilled attackers.  Consider what would happen if hackers had already seized control of tens of thousands of machines and formed a botnet. The same pin (2580) may be tested on tens of thousands of bank accounts at the same time using all of these machines. Even if they just attempt one account every day, they’ll almost certainly get access to one or more that utilize that PIN. We’ve almost certainly guessed someone’s pin. This is an excellent blog to follow. PINs and passwords may be made longer, but even 8digit PINs are rather easy to guess.  This is why many websites now demand you to use a mix of upper and lowercase letters, special symbols, and other characters in your password; it expands the number of possible password combinations. Only a hundred million possible options exist for an 8digit numerical PINfood that’s for computers! However, an 8character password including all of those strange characters offers almost 600 trillion possible possibilities.  Of course, we ordinary humans have trouble remembering these passwords, thus websites should allow us to choose something more memorable, such as three words combined: “green brothers rock” or “pizza tasty yum” With over 100,000 words in usage in English, combining three of them yields roughly one quadrillion passwords. Try your luck figuring it out! I should also mention that utilizing nondictionary terms is much more effective against more complex attacks, but we don’t have time for that right now. In the dooblydoo, Computerphile has a fantastic video on how to choose a password. On the other hand, what you have for authentication is predicated on the possession of a secret token that only the true user possesses.  A physical key and lock are an illustration of this. If you have the key, you can only open the door. This avoids the “guessable” issue. Remote attackers have a considerably tougher time gaining access since they usually demand physical presence. Without initially arriving in Florida, someone from another nation cannot get entry to your front door. However, if an attacker is physically near by, your authentication may be compromised. Locks can be picked, keys duplicated, and cellphones stolen. Finally, you’re relying on… yourself! Presenting oneself to the computer is how you authenticate.  Fingerprint readers and iris scanners are classic examples of biometric authenticators. These can be quite safe, but the most advanced technologies are still fairly pricey. In addition, sensor data changes throughout time. What you know and have verified has the lovely quality of being deterministic — right or wrong. You are allowed access 100 percent of the time if you know the secret or have the key. If you don’t, you’ll only be able to access it 1% of the time. Authentication using biometrics, on the other hand, is a probabilistic process. It’s possible the system won’t detect you because you’re wearing a cap or the illumination is poor.  Worse still, there’s a potential that the system will mistake you for your evil twin! These odds are minimal, but not zero, in production systems. Biometric authentication also has the disadvantage of being unresettable. What happens if an attacker gets their hands on your fingerprint data? You only have so many fingers. For the rest of my life, this might be a huge concern. Researchers recently discovered that shooting a snapshot of yourself may be used to counterfeit your iris, so that’s not promising either.  Basically, all types of authentication have advantages and disadvantages, and they may all be hacked in some fashion. As a result, security experts advise that key accounts be protected by two or more kinds of authentication. Twofactor or multifactor authentication is the term used to describe this process. It’s possible for an attacker to guess your password or take your phone, but it’s far more difficult to accomplish both. The next step is access control, which follows authentication.  Once a system recognizes who you are, it must determine what you should be allowed to access, and who should be able to see, alter, and utilize what is specified. Permissions, also known as access control lists (ACLs), specify which users have access to which files, folders, and programs on a computer. The “Read” permission enables a user to view the contents of a file, while the “write” permission allows a user to change the contents, and the “execute” permission allows a user to run a file like a program. Access control lists are extremely critical for organizations having users with varying degrees of access rights, such as a spy agency, since they maintain secrecy, integrity, and availability.  Consider the following scenarios: public, secret, and top secret access. People should not be able to “read up” according to the first basic guideline. If a person is only authorized to view secret files, they should be able to access both secret and public files. People should not be allowed to “write down” according to the second general guideline. Members with top secret clearance should be allowed to write or alter top secret files, but not secret or public files. It may appear strange that you can’t change less confidential files even if you have the highest clearance.  It does, however, ensure that topsecret material does not slip into secret or public files by accident. The BellLaPadula model is a “no read up, no write down” technique. It was written for the MultiLevel Security strategy of the US Department of Defense. The Chinese Wall model and the Biba model are two alternative access control models. Your usecase determines which model is optimal. Authentication and access control programs assist a computer in determining who you are and what you should be allowed to access, but they rely on the hardware and software that execute the authentication and access control programs being trustworthy.  That is an enormous reliance. How can we be sure security products don’t include a backdoor that enables attackers in if an attacker installs malicious software, dubbed malware, that compromises the host computer’s operating system? We can’t, in a nutshell. We still don’t know how to ensure that a software or computer system is secure. Because even though security software is “secure” in principle, implementation flaws can lead to vulnerabilities.  However, we have ways for reducing the chance of problems, swiftly detecting and patching bugs when they do exist, and mitigating harm when a program is hacked. Implementation mistakes account for the majority of security flaws. Decrease the number of steps in the implementation process to reduce mistakes. A “security kernel” or “trusted computing base” is a minimum collection of operating system software that is close to being provably safe, and it is one of the holy grails of system level security. Determining what should be included in these security kernels is a difficulty.  Keep in mind that the less code you have, the better. Even after reducing code bloat, being able to “guarantee” that the code is secure as written would be fantastic. Formally proving a code’s security is a hot topic right now. Independent Verification and Validation is the best we have right now. This is accomplished by having a group of securityconscious engineers review the code. This is why most security code is opensourced. Bugs are typically difficult to identify for those who authored the original code, but other engineers can spot problems since they have fresh eyes and new skills.  There are other gatherings where likeminded hackers and security specialists can meet and share ideas, the most wellknown of which being DEF CON, which takes place every year in Las Vegas. Finally, even if the code is reduced and audited, astute attackers will undoubtedly find ways to get access. With this in mind, smart programmers should adopt the perspective that if one of their programs is hacked, the harm should be confined and controlled, and not spread to other computer programs. Isolation is the term for this concept. We can “sandbox” apps to provide isolation.  When an unhappy child is placed in a sandbox, the child destroys just the sandcastle in their own box, while the other children in the playground continue to have fun. Operating systems try to sandbox apps by providing each one its own memory block that other programs can’t access. It’s also feasible to operate many virtual machines, which are effectively emulated computers, each in their own sandbox, on a single computer.  If something goes wrong with a software, the worstcase scenario is that it crashes or compromises just the virtual machine on which it is executing. The computer’s other virtual machines are segregated and unaffected. So, that’s a highlevel review of a few important computer security issues. I still haven’t covered network security, such as firewalls. In the following episode, we’ll look at some particular hacking tactics used by hackers to gain access to computer systems.  We’ll discuss encryption after that. In the meanwhile, strengthen your passwords, use 2factor authentication, and never open links in unsolicited emails! The next week, I’ll see you. For more…