Padding Oracle Attacks for CBC mode
Description: Python implementation of Padding Oracle Attack against CBC-mode block cipher.
Test: py.test -s --ignore=my-venv poattack.py
Debug: python -m gudb poattack.py
Solutions:
Toggle P_prime[-2] by XOR C0_prime[-2] ^ 01, then see if it breaks the decrypt(). If it does, it means the P_prime[-1] is not actually x\01.
See “Backtrack” in https://blog.skullsecurity.org/2013/padding-oracle-attacks-in-depth