Problems with using AES Key as IV in CBC-Mode I'm a pentester and currently analysing a web application which are using some strange encryption scheme.

The point is: They encrypt using AES-128, generate a (not cryptographic secure) key and use this as encryption key AND initialization vector.

I'm not a crypto expert, but I know that this is bad (aside of the insecure generation of the key). The problem is, that I don't know what the concrete consequences are?

Can someone please enlighten me, so I can explain to the developers that this is bad? Thanks
CBC mode encrypts as follows:
$$
C_0 = E_K(IV\oplus P_0);\\
C_i = E_K(C_{i-1}\oplus P_i),
$$
where $P_i$ are plaintext blocks and $C_i$ are ciphertext blocks. Traditionally, IV must be random and is published alongside the ciphertext to enable decryption. If it is also published in your case, then this reveals the key and is trivially insecure.

If the $IV=K$ is not attached to the ciphertext, then you get a deterministic (in contrast to probabilistic) encryption  scheme. It has a number of insecure properties, such as


the ciphertext does not change if the same plaintext is encrypted multiple times.
if two plaintexts have the same prefix, then the ciphertexts will have the same property.


Maybe there are others, but these ones are sufficient to avoid using such scheme to protect confidentiality of any reasonable amount of data, except maybe for very short (16 bytes or less) plaintexts.