Hash functions, which were originally designed for use in a few cryptographic schemes with specific security needs, have since become regular fare for many developers and protocol designers, who regard them as black boxes with magical characteristics. Message digesting, password verification, data structures, compiler operation and linking file name and path together are contemporary examples of hash functions applications. Since 2004, we've observed an exponential increase in the number and power of attacks against standard hash algorithms. In this paper, we investigated well known broken hashing algorithms. A hash function is said to be broken when an attack is found, which, by exploiting special details of how the hash function operates, finds a preimage, a second preimage or a collision faster than the corresponding generic attack. We collected information on all broken hashing algorithms, including their features, applications and attacks. To increase background knowledge, we also provide a summary of the types of attacks in this area.