What is a file?

This chapter discusses creating and analyzing a textual and binary file from fuzzing aspects. The textual formatted files are usually easier on the eye, and can be viewed in favorite textual editor. One can sometimes even read actual words that explain the meaning of each field in the file, or try to find patterns for delimiters and get a grasp on how parsing that data would work. In case of binary files, unfamiliar/new data is not readable to the human eye. As a result, comparing binary files is a less efficient task. When a binary file is presented, it usually means that the file is used for something more complex to begin with; a simple settings file would rarely need to be binary. Even emails hold the nonprintable data as textual using some encoding and try to keep things textual. Binary files are used where complex structures with inner dependencies need to be stored efficiently. Moreover, ordinary pattern searches do not work on binary formats. This chapter explains analyzing and building textual and binary files and running the test. The chapter also discusses monitoring the application with the test cases.