Tuesday, January 29, 2019

Computer Security_BSC



Introduction to security
1.      Security Threat: Security threat is a possible danger that might exploit vulnerabilities in a computer system to breach security and thus cause possible harm. Threat is the interaction of actor, motivation and vulnerability.
A threat can be either intentional or accidental. Intentional threats are normally due to intelligent persons like crackers or hackers or criminal organizations. Accidental threats are due to malfunctioning of computers or due to natural disasters or due to mistakes done by computer users.
A threat may cause damage through unauthorized access, destruction, discloser, modification of data or denial of service. There are four types of security threats
Interception: It refers to the situation that an unauthorized party has gained access to a service or data.
Interruption:  It refers to the situation in which services or data become unavailable, unusable, destroyed and so on.
Modification: It involves unauthorized changing of data or tempering with a service so that it no longer adheres to its original specification. Example intercepting and subsequently changing transmitted data.
Fabrication: It refers to the situation in which additional data or activities are generated that would normally not exist. Example an intruder may attempt to add an entry into a password file or database.
2. Security Attacks: An attack is any attempt to destroy exposes, alter, disable, steal or gain unauthorized access to or make unauthorized use of an asset. Intruders first of all analyze our environment and collect information in order to exploit vulnerabilities and then perform desire type of attack in our computer system.
 An intruder can stall harmful malicious software in our computer without our knowledge. These malicious software includes viruses, spywares and Trojan horses. This software often deletes certain vital files on our computer, making our computer   to function abnormally.
·        Passive Attacks: An attack that attempts to learn or make use of information from the system but does not affect system resources is called passive attack.
·        Active Attacks: An attack that attempt to alter system resources or affect their operation is called active attack.
·        Insider Attacks:  An attack initiated by an entity that is authorized to access system resources but uses them in a way not approved by those who granted authorization.
·        Outsider Attacks: An attack initiated by an unauthorized user of the system is called outsider attacks. In the internet, potential outside attackers range from amateur pranksters to organized criminals, international terrorist and hostile governments.
3.         Security Policy and Mechanism: Security policy is just the statement about what is allowed and not allowed to do in a system while security mechanism is a procedure how to implement the security policy.
Mechanism are designed to detect, prevent or recover from security attacks
Example considers an office with several employees. The office may have a policy like “the entire employees need to be authenticated before they enter the office” This policy can be enforced by one or more of the below given mechanisms
v  Each employee needs to swipe his/her identity card on an RFID reader. The door will be unlocked only when a valid identity card is swiped.
v  Using a retina/fingerprint scanner, a biosensor will authenticate every employee entering the office.
4.   Formulating Security policy: Formulation of security policy depends upon needs of particular organization. Main purpose of security policy is to secure organizational resource. Following steps are needed to formulating security policy.
·        Analysis of Existing Security policy:  Before formulating new policies, security administrator must analyze current security policy and must identify vulnerabilities in it.
·        Identification of Resources that needs to be secured: Main goal of security policy is to secure IT assets in the organization. Therefore security administrator must identify hardware, software or data resources that need security before designing new policy.
·        Identification of Possible security thread and security attacks:  Once resources to be secured are identified, security administrator must list out security threats and attacks that are possible in the organization. Such threats and attacks may be viruses, unauthorized access, natural disasters etc.
·        Formulation of possible security policies:  While defining new security policy, we must keep broader view and needs to be thought in different ways. It is good to design more than one security policies.
·        Evolution of alternatives Once security policies are designed, we must evaluate each of them. We need to identify strength, weaknesses, cost and easiness out IT assets.
·        Selecting the Best among alternatives: We need the best security policies that are evaluated previously. Selection of the policy may depend upon our security need and organizational budgetary.
5. Security Service: Security service is a service provided by a layer of communicating open systems which ensures adequate security of the system or of data transfer. Security services into 5 categories:
v  Authentication:   A user needs to be authenticated before providing access to the system. Example whether RC can use the system or not is defined by authentication.
v  Authorization: Authorization controls access to objects. Example once Bishnu is authenticated, whether he can write the file abc.txt or not is defined by authorization.
v  Data Confidentiality: It is the property that ensures that information is not made available or disclosed to unauthorized individuals, entities or process.
v  Data Integrity: In Information security, data integrity is the property that ensures that data cannot be modified is unauthorized way or if it is modified in unauthorized way, it should be detected.  Example the message "hello" can be converted into "jgnnq" before transmitting or storing it. Here, "hello" is plain text and "jgnnq" is scrambled message.
v  Non-repudiation: Non repudiation implies that one party of a transaction cannot deny having received a transaction nor can the other party deny having sent a transaction.
Security Awareness Security awareness is about educating employees about corporate security policies and procedures for working with information technology. Employees should receive information about who to contact if they discover a security threat and be threat that data as a valuable corporate asset.
By educating employees, supplies, partners and customers, we can reduce the chances that our organization will become a victim of today’s data security threats and ensures that all staff can property handle incident, if it occurs.
Malicious Software (Malware):  It is software that brings harm to a computer system, It can be used to disrupt computer operation, gather sensitive information or gain access to private computer systems. Malware can be in the form of worms, viruses, Trojans etc. which steal protected data, delete documents or add software not approved by a user. Some form attacks include attachments in emails, browsing a malicious website that installs software after the user clicks ok on a pop-up.
Worms: This types of malware uses network resources for spreading. This class was called worms because of its peculiar features to creep from computer to computer using network, mail and other informational channels. Worms intrude our computer, calculate network addresses of other computers and send to these addresses its copies.
The biggest danger with a worm is its capability to replicate itself on your system, so it could send out hundreds or thousands of copies of itself, creating devastating effect. One example would be for a worm to send a copy of itself to everyone listed in your e-mail address book.
Virus: A computer virus is program that inserts itself into one or more files and then performs some action. Computer virus works into two phases. First phase in which the virus insert itself into a file is called the insertion phase. The second phase in which it perform some action is called the execution phase.
The brain virus written for IBM PCs is an example of this category. It is through to have been created in early 1986 but was first reported in the United States in October 1987. It alters the boot sectors of floppy disks, possibly corrupting files in the process. It also spreads to any uninflected floppy disks inserted into the system.
Trojan horse:  A Trojan horse, or Trojan, in computing is any malicious computer program which misrepresents itself to appear useful, routine, or interesting in order to persuade a victim to install it. Trojans are generally spread by some form of social engineering, for example where a user is duped into executing an e-mail attachment disguised to be unsuspicious, (e.g., a routine form to be filled in), or by drive-by download. Although their payload can be anything, many moderns' forms act as a backdoor, contacting a controller which can then have unauthorized access to the affected computer. While Trojans and backdoors are not easily detectable by themselves, computers may appear to run slower due to heavy processor or network usage.
Malware Vulnerability factors : Factors that makes system vulnerable to malware are:
v  Use of the same Operating system: one cause of vulnerability of networks is consistent use of the same operating system such as MS windows or Apple OS. In such case, if someone can hack that OS, he/she can break into any computer in the system. Diversity in operating systems could increase short-term costs for training and maintenance but it may prevent total shutdown of the network, and allows those nodes to help with recovery of the infected nodes.

v  Software bugs:  Most systems contain bugs or loopholes which may be exploited by malware. A typical example is the buffer over-run weakness, in which an application may allow the user to supply more data than will fit in its buffer.

v  Over-privileged users and codes: In some operating system, users are over-privileged in default configuration. They have been inappropriately granted administrator or equivalent status. Malware, running as over-privileged code, can use this privilege to threaten the system, When a user executes code, almost all operating systems allows that code all rights of that user. This makes users vulnerable to malware in the form of email attachments which may or may not be disguised.

v  Unconfirmed code: Code from floppy disk, CD-ROM, USB device or internet may be executed without the user's agreement. Such code may be malware sometimes and hence may cause harm to our company system or may steal information from computers.
Hacking: It means gaining authorized access to individual computers or computer network. A hacker is a person who secretly invades the computers of other, inspecting or tampering with the program or data stored on them. A hacker may also be defined as a person who uses a computer to gain an unauthorized access.
Crackers: A cracker is a computer user who attempts to break into copyrighted software or an information system, this is done with intend of releasing software so it can be used without paying royalties. Cracker steals the confidential data, acquire free access to perform the malicious destruction of files.
Categories of Hackers :Hackers are categorized into three categories: Black hats, white hats and gray hats.
v  Black Hats: Black-hat hackers or black hats are the type of hackers that violate computer security for personal gain such as stealing credit card number or harvesting personal data for sale to identify thieves etc.
v  White Hats: White hat hackers or white hats are the opposite to the black hat hackers. They are the ethical hacker's experts in compromising computer security systems who use their abilities for good, ethical and legal purposes rather than bad, unethical and criminal purpose. Example many white-hat hackers are employed to test organizations computer security systems.
v  Gray hats: A gray-hat hackers or gray hat falls somewhere between a black hat and a white hat. A gray hat does not work for their own personal gain but they may technically commit crimes and do arguably unethical things.
Hacking Approaches: Some of the widely used hacking approaches are
·        Packet Sniffing:  It involves capturing, decoding, inspecting and interpreting the information inside a network packet on a TCP/IP network. The purpose is to steal information usually user IDs, password, network details, credit card number etc. Sniffing is passive type of attack, wherein the attackers can be silent/invisible on the network.
·        Password Cracking:  It is the process of recovering password from the data that have been stored in or transmitted by a computer system. The purpose of password cracking might be to help a user recover a forgotten password, to gain unauthorized access to a system or as a preventive measure by system administrator to check for easily crack able passwords.

·        Email Hacking : Email hacked means our password has been comprised and the hacker has actually signed on to our account, read any emails coming in, looked through  our inbox, our saved folders.
Cryptography: Cryptography is the science for providing security for information. It means of providing secure communication between individuals, government agencies and military forces. Cryptography is a cornerstone of the modern security technologies used to protect information and resources on both open and closed networks.
 The terms encode and decode or encipher and decipher are used instead of encrypt and decrypt. This is we say that we encode, encrypt or encipher the original message to hide its meaning. Then we decode, decrypt or decipher it to reveal the original message.
Types of Cryptosystem:  There are two broad classes of cryptosystem
1.         Secret-key Cryptosystem: In a secret-key cryptosystem, the same key is used for both encryption and decryption. Since keys are same, two users wishing to communicate in confidential way must agree and maintain a common secret key. It is also called symmetric key cryptosystem or private key cryptosystem.
2.         Public key cryptosystem: In public key cryptosystem, different keys are used for encryption and decryption. The key used for encryption is public key and is made available to everyone whereas the key used for decryption is called private key and is only known to receiver. It is also called asymmetric key cryptosystem.
Difference between Private Key cryptography and public key cryptography
Private key cryptography
public key cryptography
Same key is used for encryption and decryption. Key must be kept secret.
Different keys are used for encryption and decryption. Key used for encryption is called public key and the key used for decryption is called private key.
Encryption and decryption process is more faster than public key cryptosystems
Encryption and decryption process is slower than private key cryptosystems
Secrecy of the system entirely depends upon shared secret key. If the key is lost or stolen then the entire system will fail.
Private do not need to be shares therefore it is relatively more secure than private cryptosystems.
It cannot be used for other systems than achieving confidentiality.
It can also be used in digital signatures and authentication systems.
 It is useful in the systems where it is possible to share the secret key by meeting.
It is useful in when communication parties are at distant location and is difficult to share secret key.
It is feasible when the numbers of users that involves is communication is few.
It is also feasible when the number of users that involves is communication is large.
Example are Caesar cipher, transposition cipher etc
Example  are RSA algorithm, ELGamal etc.

Digital Signature: A digital signature is a mathematical technique used to validate the authenticity and integrity of a message, software or digital document. The digital equivalent of a handwritten signature or stamped seal, but offering far more inherent security, a digital signature is intended to solve the problem of tampering and impersonation in digital communications. Digital signatures can provide the added assurances of evidence to origin, identity and status of an electronic document, transaction or message, as well as acknowledging informed consent by the signer.
In many countries, including the United States, digital signatures have the same legal significance as the more traditional forms of signed documents. The United States Government Printing Office publishes electronic versions of the budget, public and private laws, and congressional bills with digital signatures.

 A digital signature consists of three algorithms:
·        A key generation algorithm: This algorithm randomly produces a pair of public key and private key, where private key is used to generating signatures and public key is used to verify signatures.
·        A signing Algorithm: This algorithm takes a message and private key as input and produces a signature that can be attached with documents.
·        A signature verifying algorithm: This algorithm takes the message and the public key as input and verifies the validity of attached signature. It either accepts or rejects the signature.
Hash Functions:  A cryptographic hash function is a one way transformation that takes an input and returns a fixed -size string, which is called the hash value.
Hash function are important type if cryptographic algorithm and are widely used in cryptography such as digital signature, data authentication, e-cash etc. A cryptographic hash function is consider insecure if either of the following is computationally feasible
ü  Finding a message that matches a given digest.
ü  Finding collisions where two different messages have the same message digest.
 Well known functions are HMAC, MD4, MD5, SHA1, SHA256 etc
Some of the areas where hash functions are applied are:
Message Integrity verification: Determining whether any changes have been made to a message (or a file). It can be accomplished by comparing message digests calculated before and after transmission. If they are not equal, it implies that message is modified by some imposter.
Password Verification: Passwords are usually not stored in clear text, for obvious reasons but instead in digest form. To authenticate a user, the password presented by the user is hashed and compared with the stored hash. This is sometimes referred to as one-way encryption.
 Digital Signatures: While generating digital signatures, the message digest is created and it is encrypted with the private key so that the signing process becomes faster.
Firewalls: A firewall is a network security that controls the incoming and outgoing network traffic based on the applies rule set. It established a barrier between a trusted, secure internal network and another network such as internet or any other network that is assumed not to be secure and trusted. It implements a network access policy by forcing connections to pass through the firewall, where they can be examined and evaluated. A firewall examines all traffic routed between the two networks to see if it meets certain criteria. If it does, it is routed between the networks, otherwise it is stopped.
Firewall can be either hardware or software. Hardware firewalls can be purchased as stand-alone product but are also typically found in broadband router, and should be consider an important part of your system and network set-up.
Software firewalls are installed on our computer and we can customize it, allowing us some control over its function and protection features. A software firewall will protects our computer from outside attempts to control or gain access to our computer.
Types of Firewalls:
1.   Packet Filter Firewalls: It inspects the packets that are transferred between computers on the Internet. When a packet passes through a packet filter firewall, its source and destination address, protocol and destination port numbers are checked against the firewall's rule set. Any packets that aren't specifically allowed onto the network are dropped, Example if a firewall is configured with a rule to block Telnet access, then the firewall will drop packets destined for the port 23.
2.  Circuit Filter Firewalls: A circuit -level gateway is a type of firewall that operates on the session layer of the OSI model. Instead of inspecting packets by header, it instead maintains a connection between two hosts that is approved to be safe. It used three way handshaking to see whether a requested connection is legitimate or not.
3. Application -level gateways:  These firewalls work on the application layer of the OSI model and that provide protection for a specific application layer protocols. Proxy server is the best example of application level gateways firewalls. Application level gateway would work only for the protocols which are configured. Example if we install a web proxy based firewall than it will only allow HTTP protocol data. We can set up various proxies on a single firewall for different applications. Both the client and the server connect to these proxies instead of connecting directly to each other. So any suspicious data or connections are dropped by these proxies.
 SMTP application proxies can be configured to allow only certain commands like helo, mail from, rcpt to: to pass through the firewall and block other commands like expn, vrfy etc which tries to expand a list or verify if that account exists and are used by attackers and spammers for their vested self interests.
User Identification and Authentication: Authentication is the process of determining and validating user identify. The computer system uses an abstract object called user account that contains a set of attributes for each user. The object has a name (user id or logon ID) that is used to represent the abstract. Additional attributes of the object may include the full name of the actual user, the department for which he/she is working, password or any other features of user.
The process of Authentication is often considered to consist of two distinct phases: Identification and authentication. Identification occurs when a user claims an identify. This can be accomplished with a a username, a smart card, or anything else that can uniquely identify a subject. Authentication is the process of providing an identity and it occurs when subjects provide appropriate credentials or evidences to prove their identity. Example when a user provides the correct password with a username, the password proves that the user is the owner of the username. Authentication provides proof of a claimed identify.
Three components involved in the process of user authentication
·        Supplicant: The party in the authentication process that will provide its identity and evidence for it and as a result will be authenticated.
·        Authenticator: It is the server that is responsible for verifying authenticity of users based on the evidences provided by him or her.
·        Authentication Database: It is the database that stores identity and other attributes that the user possesses. Users need to provide these attributes to prove his/her identity. Authentication database can be maintained by authenticator itself or it can be maintained by some another computer in the system
There are several methods of authentication
1.   Password based authentication: Passwords are an example of an authentication mechanism based on what people know the user supplies a password and the computer validates it. If the password is associated with the user, that user's identity is authenticated. If not, the password is rejected and the authentication fails. A password is information associated with an entity that confirms the entity's identity. It can be sequence of characters and digits or sequence of words such as phrases.
Passwords can be used in storing in many ways: in plain text form, in encrypted form or in the form of hash value of password. Hash value of password is consider as most secure and is widely used approach. A password containing at least one digit, one letter, one punctuation symbol and one control characters is usually quite strong.
2.   Smartcard based authentication: A smart card is a small plastic card, containing an embedded microchip that can be programmed to store specific user authentication information. The chip on a smart card can store multiple identification factors of a specific user. When the user swipes his or her card into a smart card reader; the card may implement multiple factors of authentication.
Advantages:
·        It eliminates the threat of hackers stealing stored or transmitted information form a computer.
·        The information is processed on the smart card so the authentication information is never transmitted to another machine.
Disadvantages:
·        Smart card encryption options are limited.
·        Smaller or shorter encryption keys may be necessary, which heightens the chance of data compromise.
·        It also needs extra hardware infrastructure for implementation.
3.   Biometric based authentication: Biometric authentication is a type of system that relies on the unique physiological or behavioral characteristic of individuals to verify identify for secure access to electronic systems. Some of the widely used physiological or behavioral characteristics are face, finger prints, retinal information, voices, DNA structure etc.
Biometric authentication systems compare the current biometric data capture to stored, confirmed authentic data in a database. If both sample of the biometric data match, authentication is conformed and access is granted.
A smart phone user might log on with his personal identification number (PIN) and then provide an iris scan to complete the authentication process.
Other Security measures:
Authorization:  Authorization is the process of giving someone permission to do or have something.  Assuming that someone has logged in to a computer operating system or application, the system or application may want to identify what resources the user can be given during this session. Thus authorization is sometimes seen as setting up of permission by a system administrator and the actual checking of the permission values that have been set up when a user is getting access. Two widely used authorizations are Access Control Lists (ACL) and capability list.
Access control list:  An access control list is a list of permission attached to an object. It stores privileges in the form of <subject, privilege> pairs. Here object is file or any other hardware or software resource, subject is user or process and privileges are allowed operations such as read write and execute.
Example:  File1-RC:RW; Bishnu:RWX; Santosh:R
In the above ACL, It gives permission to read and write the file 1 to RC, to read, write and execute to Bishnu and Read only to Santosh.
Capability List: A capability list is a list of permissions attached to a subject It stores privileges in the form of <object, privilege> pairs. Here, object is file or any other hardware or software resource, subject is user or process, and privileges are allowed operation such as read, write, execute.
RC-File1:RW; File2:R
In the above capability list, It gives permission to RC such that he can read and write the file1 to ram and can only read the file 2.
Antimalware application: Antimalware or antimalware is a type of software program designed to prevent, detect and remediate malware infection on individual computing devices and IT systems. Antimalware software protects against infection caused by many types of malware including viruses, worms, Trojan horse etc. Antimalware software can be installed on an individual computing device, gateway server or dedicated   network appliance. Example antimailware software tools are Avast -Antivirus, Avira antivirus, AVG, anti-virus, Norton Antivirus, Kaspersky antivirus.
Virus dictionary approach: In the virus dictionary approach, when the anti-virus software examines a file, it refers to a dictionary of known viruses that have been identified by the author of the anti-virus software, If a piece of code in the file matches any virus identified in the dictionary, then the antivirus software can be either delete the file, quarantine it so that the file is inaccessible to other programs and its virus is unable to spread or attempt to repair the file by removing the virus itself from the file.
Suspicious behavior approach:  The suspicious behavior approach doesn't attempt to identify known viruses but instead monitors the behavior of all programs. If one program tries to write data to an executable program, Example this is flagged as suspicious behavior and the user is altered to this and asked what to do. The suspicious behavior approach therefore provides protection against brand new viruses that do not yet exit in any virus dictionaries.

No comments:

Post a Comment