Bir MD5 şifresini kırmak için öncelikle bulmak gerekir sizin dediğiniz gibi.
Bir websitesinde en basitinden SQL açığı bulunursa SQL açığı üzerinden veri çekilince karşımıza bu veri MD5 şekilde şifrelenmiş vaziyette gelebilir.
Haliyle çektiğimiz veriyi anlamak için MD5 şifresini kırmamız gerekicektir.
Bunun için internetten MD5 kıran sitelere bakıp şansımızı deneriz eğer olmazsa bruteforce yaparız.
Ayrıca her websitesi MD5 kullanmak zorunda değil. SHA1 veya SHA532 vs... gibileride kullanılabilir ya da hiçbir şifreleme de kullanmıyabilir.
Dolayısıyla sorularınızın cevabı:
1-)MD5 gibi şifrelemeler verilerimizi saldırganın anlamasından bir nebze de olsa korumak için kullanılabilir.
2-)Çekmek için websitesinin backend verilerine erişmelisin. Dediğim gibi SQL açığı mesela. (Her sitede MD5 bulunmak zorunda değil.)