In other cases, the output is such a complex transformation of the input that it is difficult to reconcile. Therefore, it is not always possible for users to know whether the information or programs they are using are accurate. Hardware sharing, data sharing, and the complexity of computers are common aspects of computing. They present certain vulnerabilities to the information on the system, however, that the information security program must address. The following section discusses several of the vulnerabilities commonly encountered in computing environments.
Most computers are unable to distinguish between programs and other data.
In many, a program is unable to recognize itself. Therefore, it is possible for a programmed procedure to overwrite itself, its data, other programs, or their data. It is possible for one process operating in the computer to interfere with the intended operation of another. Again, most of this happens by error but may be done deliberately. Changes Between Time of Check and Time of Use Conditions that are checked and relied on but not otherwise bound can be maliciously changed between the time of check and the time of use.