General Topics - Security and Malware

Encryption - putting a message (E-mail, file etc.) into a form so that only selected people can decode it.
"Strong" encryption: Message cannot be cracked simply by trial and error even with supercomputers.
"Weak" encryption: Message can be cracked by trial and error if you use enough computing power.

Key - "Codeword" used to encrypt messages. Usually a number used to code the message using a mathematical method. The key can be many digits long (often 128 bytes).

Symmetric Key Encryption

Data is encrypted before transmission using a key. The same key is used at the other end to decrypt the message. This process is generally fast, but there is the problem of transmitting the key to the recipient(s) in the first place - as it can be intercepted (packet-sniffing or dictionary programs).

Plain text message symmetric key
Encryption
(Message transmitted) symmetric key
Decryption
Plain text message

Assymetric (Public Key) Encryption

A user creates two mathematically related keys, a public key and a private key, then makes the public key generally available (it doesn't matter who sees that). Anyone wanting to send a message to the user uses the public key to encrypt the message. The message can only be decrypted using the private key, which is never transmitted, thereby defeating any packet-sniffing attacks.

Plain text message asymmetric key
Encryption
(Message transmitted) asymmetric key
Decryption
Plain text message

Asymmetric key encryption takes considerably longer than symmetric key encryption, but is much more secure. Asymmetric algorithms include:

Public key encryption - This is an assymetric key method.

  1. The receiver generates two random keys using a program such as Pretty Good Privacy - a private key and a public key.
  2. He/she publishes quite openly his/her "public" key. It doesn't matter who sees this.
  3. The sender uses the receiver's public key to encrypt the message. The message cannot be decrypted without the receiver's private key (even by the sender!)
  4. The encrypted message is transmitted. Anyone intercepting it cannot understand it.
  5. The receiver decrypts the message using his/her private key - which must be kept secret.

RSA algorithm - The most common asymmetric algorithm, 1977 (Rivest, Shamir and Adelman).

Reasons businesses have for encrypting information include:

Hash encoding (or message digest) - Encryption that cannot be decoded (ever!) Used to check authenticity, i.e. the sender has codes a particular string, the receiver does the same, and if the two results match, the sender is authentic. Also used to protect passwords from disclosure. Not used for ordinary encryption as the process cannot be reversed

Popular hash algorithms: MD2, MD4, MD5 by Rivest, Secure Hash Algorithm (SHA).

Authentication - Users proving their identities when they log on to a system.

  1. Simplest method is a username + password.
  2. Digital certificate - password-protected, encrypted file containing message encryption, user identification and message text. Issued by trusted authorities e.g. Verisign.
  3. Digital signature = Electronic stamp added to a message uniquely identifying the sender and verifying its contents.
  4. Both digital certificates and signatures permit non-repudiation - you can't claim that you didn't send the message.

Systems often employ account lockout, which disables the log-on process after between 3 and 5 unsuccessful attempts. Prevents dictionary or brute-force attacks.

Digital signature - appended to plain-text messages to prove authenticity.

Network-level encryption provides encryption built-in to the OSI-RM model at the Network Layer (layer 6) e.g. Kerberos.

Secure Sockets Layer (SSL)/Transport Layer Security (TLS)

Digital Certificates

The standard for digital certificates is X.509 consisting of:

X.509 also defines 15 methods for transmitting and storing certificates, called the Public-Key Cryptography Standards (PKCS).

Creation of a Digital Certificate:

  1. A company issues a digital certificate request to a Certificate Authority.
  2. The Certificate Authority may verify the credentials of the requesting company before issuing the certificate, by means of a certificate server.
  3. The server always possesses the certificate and sends it to a client beginning an encrypted session.
  4. The client can examine the certificate with a list of them that came installed in its browser.

Certificates expire after a set lifetime oc can be revoked, suspended. They can also be renewed A Certification Revocation List (CRL) lists all certificates that are no longer valid, can be downloaded and checked by users using Online Certificate Status Protocol (OCSP).

Registration authority - part of the CA. It can verify certificates but not issue them. It is used if the CA is under heavy pressure.

Public Key Infrastructure (PKI) - certificate authorities that also manage public encryption.

Once a client and a server are SSL-enabled, the client and server must negotiate a connection by using a handshake. In this handshake, both parties authenticate each other and agree on a type of encryption algorithm to be used (RSA, DSA etc.) This encryption is used to encrypt the session key which is shared between server and client.

Firewalls

Security barriers controlling the flow of information into and out of computer systems.

Desktop firewall systems - found on individual workstations.

Desktop firewalls can be configured

Malware

Malicious software arriving on computer systems secretly with the specific purpose of harming the computer system and spreading to other systems.

Viruses

These assume control of system functions to damage/destroy data and ensure copies of itself are transmitted to other systems. They can

Boot sector virus Hides in the initial sector of a disk used only when the operating system is loaded from the disk ("booting up"). If a hard disk is infected, the virus activates whenever the computer switches on.
Bomb Virus programmed to activate when a specific event happens, often a specific date or anniversary.
Cluster virus Infects the filing system of a disk, and runs when an infected program on the disk is run.
Macro virus Hides in macro programs attached to files such as Word or Excel files. Activates if file is opened (unless the user's Word/Excel blocks macros).
File-infecting virus Infects program files on a disk. Activates when the infected program is run.
Stealth virus Hides in memory and makes conceals changes it makes to files, by redirecting hard disc requests and manipulating directory structures, so that the Operating system cannot detect it.
Polymorphic virus contains code so that it runs differently every time, to fool anti-virus programs that look for patterns of virus behaviour.
Retro specifically attacks antivirus software.

Viruses are typically caught:

To minimise the risk of viruses:

If a virus strikes,

Worms

A self-replicating program spreading across networks that consumes resources such as memory, effectively disabling systems. Unlike viruses, worms do not alter files.

Trojan Horses

A program that appears to be harmless (often posing as a malware removal program!), but performs some malicious function when activated.

Illicit server

This installs hidden software ("server code") on client systems to allow a remote user to monitor or take control of the system without the client's consent.

Spyware

Also known as "adware". This software is secretly placed on a user's system and relays information about browsing habits etc. to a remote system. Spyware can

Spyware can be blocked/removed by anti-spyware programs. These work by having lists of known spyware and by checking systems for unusual activity.

Hosted by www.Geocities.ws

1