Weak encryption vulnerabilities occur when weak encryption algorithms are used or encryption is not used properly. For encryption to work properly, strong and up-to-date cryptographic algorithms must be used. Each cryptographic algorithm has its own specific properties that define the most secure way(s) of using it. Using the wrong encryption scheme or using it incorrectly creates the potential for an attacker to recover the encrypted data within reasonable time. In some cases, the weaknesses are so glaring that recovering the encrypted data becomes trivial.
These issues affect all applications that use encryption.
The impact of using weak encryption is that the attacker will be able to recover encrypted data. Encryption should be the last line of defense - ideally the attacker should not be able to get the encrypted data. However, if the attacker has compromised the system and downloaded the data, the encryption should prevent them from being able to make use of the data. If weak encryption is used, the attacker might be able to use the data.
There is a broad range of possible attack scenarios that involve weak encryption, but in practice, the most common cases of weak encryption are also the most trivial. Many applications use algorithms that are not even meant to be used for encryption, such as XOR, ROT-13 and base64_encode to obfuscate data. To make things worse, that data is often placed in a location accessible by the attacker. In such cases, the attacker will be able to easily recover the obfuscated data.
To prevent encryption issues, use strong cryptographic algorithms correctly, use strong keys, and protect the encryption keys.
To ensure that strong encryption is used, verify that strong cryptographic algorithms are used, verified that they are used correctly, verify that strong keys are used and that the keys are protected.