Footprinting is the first and most convenient way that hackers use to gather information about the environment of the target and architecture, usually for the purpose of finding ways to break into that environment.
Footprinting is important for one basic reason, it provides you with a picture of what the hacker sees. And if you know what the hacker sees, you know what possible security issues you have in your environment. And when you know what issues you have, you will know how to prevent future attacks.
Hackers are so smart at one point: getting inside your head and you don’t even know it. Hackers are well-organized and professional in collecting all pieces of information related to the technologies used in your environment.
However, footprinting is usually the most difficult job in attempting to determine the security condition of an entity; and it tends to be the dullest part for freshly security guys. But, footprinting is one of the most significant steps, and it must be done correctly, carefully and in a controlled fashion.
There are several kinds of footprinting methods, all of them are essentially intended at finding information linked to the next environments: Internet, extranet, intranet and remote access.