Home | Introduction to Steganography | Mod4 vs F5 | How M4JPEG Works | M4JPEG Download | Matlab JPEG Toolbox
 
 
 

Information Hiding
and its Applications
Steganography and Watermarking
A detailed look at Steganography
   ◦ Text Steganography
   ◦ Hypertext Steganography
   ◦ Audio Steganography
   ◦ Image Steganography
   ◦ Steganography in Open System
Image Steganography Techniques
   ◦ Spatial Domain LSB Insertion
   ◦ Masking and Filtering
   ◦ DCT-based Steganography
   ◦ Wavelet-based Steganography
How to Detect Steganography
   ◦ Blind Detection
   ◦ Analytical Detection




 


 


Steganalysis : How to Detect Steganography


Steganalysis is the discovery of the existence of hidden information; therefore, like cryptography and cryptanalysis, the goal of steganalysis is to discover hidden information and to break the security of its carriers. In order to know how the steganalysts work, and what techniques and methods they use, we suggest reading what has been published by the Steganography Analysis and Research Center (SARC) :

"Blind" Steganography Detection:

The blind detection approach to steganalysis has been around for a number of years. Blind detection attempts to determine if a message may be hidden in a file without any prior knowledge of the specific steganography application used to hide the information. Several techniques may be employed to inspect suspect files including various visual, structural, and statistical methods.

Visual analysis methods attempt to detect the presence of steganography through visual inspection, either with the naked eye or with the assistance of automated processes. Visual inspection with the naked eye can succeed when steganography is inserted in relatively smooth areas with nearly equal pixel values. Automated computer processes can, for example, decompose an image into its individual bit-planes. A bit-plane consists of a single bit of memory for each pixel in an image, and is a typical storage place for information hidden by steganography applications. Any unusual appearance in the display of the least significant bit-plane would be expected to indicate the existence of steganography.

Structural analysis methods attempt to reveal alterations in the format of the data file. For example, a steganography application may append hidden information past an image's end-of-file marker. An image that has been modified using this appending technique is interpreted by the operating system just as if it were the original carrier file. The two files are visually and digitally identical, because the image's data bits have not been altered. The hidden information that is embedded past the end-of-file marker is simply ignored by the operating system. Several automated methods for conducting structural analysis have been developed in addition to the manual process of investigating images with a hex editor.

Statistical analysis methods attempt to detect tiny alterations in a file's statistical behavior caused by steganographic embedding. Statistical analysis of files can be difficult and time consuming, since there are a variety of approaches to embedding—each modifying the carrier file in a different way. Therefore, unified techniques for detecting steganography using this method are difficult to find. Determining statistics such as means, variances, and chi-square tests can measure the amount of redundant information and/or deviation from the expected file characteristic. Current research in blind detection steganalysis is focused on these statistical methods.


Complications of Blind Detection

In practice, even if the blind detection technique detects anomalies in suspect files, it is not very likely that the hidden information can successfully be extracted. It is often not possible to identify the particular steganography application used to embed hidden information within the suspect file using current blind detection algorithms. The suspect file may have characteristics similar to an anomaly that will trigger a false positive result. Even if it is possible to extract the hidden information, which is highly unlikely using only a blind detection approach, the hidden information may have been encrypted prior to being embedded in the carrier file.

The following four complications are possible when implementing blind detection techniques for steganalysis:
    •The suspect file may or may not have any information hidden in it in the first place.
    •The hidden message may have been encrypted before being hidden in the carrier file.
    •Some suspect files may have had noise or irrelevant data encoded in them which reduces the stealth aspect
      (i.e., makes it easier to detect use of steganography) but makes analysis very time-consuming.
    •Unless the hidden information can be found, completely recovered, and decrypted (if encrypted), it is often not possible to
      be sure whether the suspect carrier file contained a hidden message in the first place-all the user end up with is a
      probability that the suspect carrier file may have something hidden within it.

 


"Analytical" Steganography Detection:

The analytical approach to steganalysis has been developed by the Steganography Analysis and Research Center as a byproduct of extensive research of steganography applications and the techniques they employ to embed hidden information within files. The premise of this approach is to first determine if any residual file and/or Microsoft Windows Registry artifacts from a particular steganography application exist on the suspect media.

  •  If residual artifacts exist, then the application was probably installed.
  •  If the application was installed, then it was probably used.
  •  If the application was used, then something was probably hidden using it.

The analytical approach attempts to determine if there is any evidence that a steganography application ever existed on the suspect media. Searching for files and registry entries that have been identified by the SARC as belonging to a steganography application will identify these residual artifacts. The goal is to determine what application was used, what type(s) of carrier files it may have been used on, and finding what was hidden by that particular application.

The analytical approach to steganalysis is intended to be an extension of traditional computer forensics practices. For example, all deleted files and alternate data streams should be recovered using traditional forensics utilities prior to conducting steganalysis.

The Steganography Application Library

The SARC maintains a library of steganography, watermarking, and other data-hiding applications by routinely searching the Internet for freeware, shareware, and licensed applications. When found, an application is downloaded and catalogued with the application name, date and time of download, and location it was found on the Internet. Each application is installed, tested, and examined before being added to the library.

The Internet is dynamic and ever changing—a steganography application that appears on a certain website may not be available when a computer forensic examiner needs to access it at a later date. Thus, the SARC also maintains a physical repository containing archive copies of all applications on CD-ROM. This repository may be consulted by computer forensic examiner on a fee-for-service basis if artifacts of an application are discovered during an examination and the original application is no longer available.

Process for Analytical Steganalysis

To determine if residual file artifacts of steganography applications exist on the suspect media, the SARC has developed the Steganography Application Fingerprint Database (SAFDB). The SAFDB contains file profiles associated with hundreds of steganography, watermarking, and other data-hiding applications. These file profiles contain identifying information such as filename, file size, associated application name, and several unique hash values: CRC-32, MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-256, and SHA-512. These hash values may be used to determine the presence of artifacts of steganography applications on the media being examined.

The first step in the analytical approach is to hash all files on the suspect media. Next, compare the generated hash values with those in the SAFDB. A match represents a file artifact that may be associated with one or more steganography applications. Each file profile within the SAFDB identifies which steganography application that artifact belongs to.

Once a list of potential steganography applications has been compiled, carrier file types that can be manipulated by those applications should be identified. To accomplish this, the computer forensic examiner should download and experiment with that application. Next, a focused search should be conducted on the suspect media for carrier file types that are manipulated by the particular steganography application. Finally, the suspect carrier files can be subjected to further analysis based on the specific steganographic techniques that can be used on them.

Once the steganographic technique has been determined, it may be possible to extract the hidden information. If strong encryption has been used prior to hiding the information in the carrier file, then complex cryptanalysis may also be necessary to decrypt the extracted information.

Research conducted in the SARC has revealed that some steganography applications leave behind signatures, or specific byte patterns, that always appear in a file after hidden information has been embedded. The signature discovery process can be very time consuming because each steganography application must be individually analyzed to determine how the application embeds information. Once a signature is discovered, an automated process must be developed to search every potential carrier file for that particular signature.

 


Reference:
"About Steganography" page on SARC website.

Home | Introduction to Steganography | Mod4 vs F5 | How M4JPEG Works | M4JPEG Download | Matlab JPEG Toolbox