Cryptovirology

Cryptovirology

Cryptovirology is a field that studies how to use cryptography to design powerful malicious software. The field was born with the observation that public-key cryptography can be used to break the symmetry between what an antivirus analyst sees regarding a virus and what the virus writer sees. The former only sees a public key whereas the latter sees a public key and corresponding private key. The first attack that was identified in the field is called "cryptoviral extortion".[1] In this attack a virus, worm, or trojan hybrid encrypts the victim's files and the user must pay the malware author to receive the needed session key (which is encrypted under the author's public key that is contained in the malware) if the user does not have backups and needs the files back.

The field also encompasses covert attacks in which the attacker secretly steals private information such as private keys. An example of the latter type of attack are asymmetric backdoors. An asymmetric backdoor is a backdoor (e.g., in a cryptosystem) that can be used only by the attacker, even after it is found. This contrasts with the traditional backdoor that is symmetric, i.e., anyone that finds it can use it. Kleptography, a subfield of cryptovirology, is concerned with the study of asymmetric back doors in key generation algorithms, digital signature algorithms, key exchanges, and so on.

Contents

General information

Cryptovirology was born in academia.[1][2] However, practitioners have recently expanded the scope of the field to include the analysis of cryptographic algorithms used by malware writers, attacks on these algorithms using automated methods (such as X-raying[3]) and analysis of viruses' and packers' encryptors. Also included is the study of cryptography-based techniques (such as "delayed code"[4]) developed by malware writers to hamper malware analysis.

A "questionable encryption scheme", which was introduced by Young and Yung, is an attack tool in cryptovirology. Informally speaking, a questionable encryption scheme is a public key cryptosystem (3-tuple of algorithms) with two supplementary algorithms, forming a 5-tuple of algorithms. It includes a deliberately bogus yet carefully designed key pair generation algorithm that produces a "fake" public key. The corresponding private key (witness of non-encryption) cannot be used to decipher data "encrypted" using the fake public key. By supplying the key pair to an efficient verification predicate (the 5th algorithm in the 5-tuple) it is proven whether the public key is real or fake. When the public key is fake, it follows that no one can decipher data "enciphered" using the fake public key. A questionable encryption scheme has the property that real public keys are computationally indistinguishable from fake public keys when the private key is not available. The private key forms a poly-sized witness of decipherability or indecipherability, whichever may be the case.

An application of a questionable encryption scheme is a trojan that gathers plaintext from the host, "encrypts" it using the trojan's own public key (which may be real or fake), and then exfiltrates the resulting "ciphertext". In this attack it is thoroughly intractable to prove that data theft has occurred. This holds even when all core dumps of the trojan and all the information that it broadcasts is entered into evidence. An analyst that jumps to the conclusion that the trojan "encrypts" data risks being proven wrong by the malware author (e.g., anonymously).

When the public key is fake, the attacker gets no plaintext from the trojan. So what's the use? A spoofing attack is possible in which some trojans are released that use real public keys and steal data and some trojans are released that use fake public keys and do not steal data. Many months after the trojans are discovered and analyzed, the attacker anonymously posts the witnesses of non-encryption for the fake public keys. This proves that those trojans never in fact exfiltrated data. This casts doubt on the true nature of future strains of malware that contain such "public keys", since the keys could be real or fake. This attack implies a fundamental limitation on proving data theft.

There are many other attacks in the field of cryptovirology that are not mentioned here.

Examples of viruses with cryptography and ransom capabilities

While viruses in the wild have used cryptography in the past, the only purpose of such usage of cryptography was to avoid detection by antivirus software. For example, the tremor virus[5] used polymorphism as a defensive technique in an attempt to avoid detection by anti-virus software. Though cryptography does assist in such cases to enhance the longevity of a virus, the capabilities of cryptography are not used in the payload. The One-half virus[6] was amongst the first viruses known to have encrypted affected files. However, the One_half virus was not ransomware, that is it did not demand any ransom for decrypting the files that it has encrypted. It also did not use public key cryptography. An example of a virus that informs the owner of the infected machine to pay a ransom is the virus nicknamed Tro_Ransom.A.[7] This virus asks the owner of the infected machine to send $10.99 to a given account through Western Union.
Virus.Win32.Gpcode.ag is a classic cryptovirus.[8] This virus partially uses a version of 660-bit RSA and encrypts files with many different extensions. It instructs the owner of the machine to email a given mail ID if the owner desires the decryptor. If contacted by email, the user will be asked to pay a certain amount as ransom in return for the decryptor.

Creation of cryptoviruses

To successfully write a cryptovirus, a thorough knowledge of the various cryptographic primitives such as random number generators, proper recommended cipher text chaining modes etc. are necessary. Wrong choices can lead to poor cryptographic strength. So, usage of preexisting routines would be ideal. Microsoft's Cryptographic API (CAPI), is a possible tool for the same. It has been demonstrated that using just 8 different calls to this API, a cryptovirus can satisfy all its encryption needs.[9]

Other uses of cryptography enabled malware

Apart from cryptoviral extortion, there are other potential uses[2] of cryptoviruses. They are used in deniable password snatching, used with cryptocounters, used with private information retrieval and used in secure communication between different instances of a distributed cryptovirus.

References

  1. ^ a b A. Young, M. Yung. "Cryptovirology: Extortion-Based Security Threats and Countermeasures". IEEE Symposium on Security & Privacy, May 6–8, 1996. pp. 129 – 141.  IEEEExplore: Cryptovirology: extortion-based security threats andcountermeasures
  2. ^ a b A. Young, M. Yung (2004). Malicious Cryptography: Exposing Cryptovirology. Wiley. ISBN 0-7645-4975-8. 
  3. ^ F. Perriot, P. Ferrie (2004). "Principles and Practise of X-Raying" (PDF). Virus Bulletin Conference. http://pferrie.tripod.com/papers/x-raying.pdf. 
  4. ^ Z0mbie (2000). ""DELAYED CODE" technology (version 1.1)". white paper.  Netlux: Delayed code technology
  5. ^ F-Secure virus descriptions: Tremor
  6. ^ Symantec security response: One_Half
  7. ^ Sophos security analyses: Troj_Ransom.A
  8. ^ Viruslist: Virus.Win32.Gpcode.ag
  9. ^ A. Young. "Cryptoviral Extortion Using Microsoft's Crypto API". International Journal of Information Security, Volume 5, Issue 2, April 2006. pp. 67–76.  SpringerLink: Cryptoviral extortion using Microsoft's Crypto API

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Kleptography — is the study of stealing information securely and subliminally. Kleptography is a natural extension of the theory of subliminal channels. [ [http://www.cryptovirology.com/cryptovfiles/cryptovirologyfaqver1.html Cryptovirology FAQ ] ] Kleptography …   Wikipedia

  • Ransomware (malware) — For other uses, see Ransomware (disambiguation). Ransomware is computer malware which holds a computer system, or the data it contains, hostage against its user by demanding a ransom for its restoration. Operation Ransomware typically propagates… …   Wikipedia

  • Backdoor (computing) — A backdoor in a computer system (or cryptosystem or algorithm) is a method of bypassing normal authentication, securing remote access to a computer, obtaining access to plaintext, and so on, while attempting to remain undetected. The backdoor may …   Wikipedia

  • AIDS (trojan horse) — AIDS Trojan Common name PC Cyborg Trojan Technical name Aids Info Disk/PC Cyborg Trojan Aliases AIDS!Trojan, Aidsinfo. A trojan, Aidsinfo. B trojan, Cyborg, Trj/AidsInfo. A, Trojan. AidsInfo.a, Trj/AidsInfo. B, Trojan. AidsInfo.b, Trojaids!Trojan …   Wikipedia

  • Kleptographie — beschäftigt sich mit dem sicheren und verdeckten Diebstahl von (geschützten) Informationen. Kleptographie ist ein Teilgebiet der Kryptographie und der Kryptovirologie. Außerdem ist sie eine Erweiterung der Theorie der verdeckten Kanäle, die von… …   Deutsch Wikipedia

  • Malware — Malware, short for malicious software, consists of programming (code, scripts, active content, and other software) designed to disrupt or deny operation, gather information that leads to loss of privacy or exploitation, gain unauthorized access… …   Wikipedia

  • Keystroke logging — (often called keylogging) is a method of capturing and recording user keystrokes. The technique and name came from before the era of the graphical user interface; loggers nowadays would expect to capture mouse operations too. Keylogging can be… …   Wikipedia

  • Extortion — Exact redirects here. For the exact sciences, see Exact science. Extort redirects here. For the album by KMFDM, see XTORT …   Wikipedia

  • Cryptographically secure pseudorandom number generator — A cryptographically secure pseudo random number generator (CSPRNG) is a pseudo random number generator (PRNG) with properties that make it suitable for use in cryptography. Many aspects of cryptography require random numbers, for example: Key… …   Wikipedia

  • List of computer viruses — To aid the fight against computer viruses and other types of malicious software, many security advisory organizations and developers of anti virus software compile and publish lists of viruses. The compilation of a unified list of viruses is made …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”