Answer / Explanation
For proper clarity, we redefine information flow as the navigation of data between humans and systems.
A proper and well secured mode of movement of information or data flow information flow is a critical factor when considering the performance of a process, decision making and in communications. The following are common types of information flow.
It should also be noted that the advantages of an information flow process can not be over emphasized.
Referring back to the question where we are being asked to describe how information flow serve as a building block to curb attacks can also point back to some of its advantages.
(1) Buffer Overflow attack: This can be described as an abnormal behaviour where a program while writing data or transferring data to a buffer exceeds the buffer's boundary and overwrites to adjacent memory locations which may result in abnormal program behavior including memory access errors, incorrect results, and crashes. We should also understand that buffers are allotted areas of memory set aside to hold data, often while moving it from one section of a program to another, or between programs. Thus, information flow helps to curb the buffer overflow attach by setting a boundary limit in the process of transfer of communication between the program and the buffer therefor casing a stoppage in the overwrite process of a buffer overflow.
(2) This can be likened to the page catch attack or Directory Traversal Attacks where an attacker is are able to traverse out of the current directory into parent directories usually by supplying a series of “../” (dot dot slashes). Sometimes it is possible to back out of the root directory of the Web server and traverse into other directories on the file system. Typically, directory traversal attacks allow the attacker to access or overwrite files that are not intended to be accessible. Now to link the attack, it should be noted that the attacker tries to overwrite the buffer therefore intentionally creating a loophole in the program. Thus, by implementing the information flow, we can also curb this.
(3) This can be likened to the aforementioned process. If passwords are accidentally stored in a location where it is accessible to everyone, then it posses a risk of it being hacked or the password being changed. However, to prevent this, we can simply make use of the clear catch or clear buffer catch process, this way, we are sure of the security of the transfer of data which also streamlines it down to one of the functionality of the information flow process.