
A Padding Oracle Attack is a cryptanalytic attack that allows an attacker to decrypt encrypted data without knowing the key, if the system reports correct padding during decryption. In the context of Bitcoin-related software, this attack is most well known in relation to the wallet file wallet.datin Bitcoin Core.
Programs and tools where Padding Oracle Attack was used or implemented
- Bitcoin Core (wallet.dat)
- The Padding Oracle Attack was first described for the
wallet.datBitcoin Core file back in 2012. The vulnerability is related to the fact that the wallet uses symmetric AES-256-CBC encryption and can leak information about the correctness of the padding during decryption, which allows an attacker to decrypt the contents of the file without knowing the password 1 2 4 5 . - Exploit implementations and practical attack examples are available as Jupyter Notebooks and Google Colab scripts, for example, the public notebook
Padding_Oracle_Attack_on_Wallet_dat.ipynb1 4 . - The attack uses standard tools such as the Metasploit Framework and MSFVenom, as well as custom Python scripts 1 4 .
- The Padding Oracle Attack was first described for the
- CTF tasks and training projects
- Tools for attack automation
- Several publications mention third-party tools and libraries such as padbuster or python-paddingoracle that can be adapted to attack wallet.dat if the system returns discernible errors when padding is incorrect 8 .
Examples and links to implementations
| Program/Tool | Description of the Padding Oracle Attack application | Source |
|---|---|---|
| Bitcoin Core (wallet.dat) | Vulnerability in padding handling when decrypting AES-256-CBC | 1245 |
| Padding_Oracle_Attack_on_Wallet_dat.ipynb | Jupyter Notebook for attacking wallet.dat | 14 |
| Metasploit Framework + MSFVenom | Used to create exploits | 14 |
| padbuster, python-paddingoracle | Universal tools for padding oracle attacks | 8 |
Conclusion
The most well-known and practically implemented Padding Oracle attack in the Bitcoin ecosystem is associated with the wallet file wallet.datin Bitcoin Core. The attack uses both specialized scripts and universal cryptanalysis tools. There is no information in open sources about other popular Bitcoin programs with the implemented Padding Oracle Attack vulnerability – the main attack vector remains associated with Bitcoin Core and its wallet files 1 2 4 5 8 .
Citations:
- https://habr.com/ru/articles/778200/
- https://pikabu.ru/story/padding_oracle_attack_na_walletdat_rasshifrovka_parolya_dlya_populyarnogo_koshelka_bitcoin_core_10888097
- https://habr.com/ru/articles/817735/
- https://pcnews.ru/blogs/padding_oracle_attack_na_walletdat_rassifrovka_parola_dla_popularnogo_koselka_bitcoin_core-1323006.html
- https://rutube.ru/video/9bd3a257873b1c206c2b0542d4979c70/
- https://ru.wikipedia.org/wiki/POODLE
- https://capec.mitre.org/data/definitions/463.html
- https://www.securitylab.ru/analytics/481048.php
- https://www.cryptopro.ru/en/blog/2019/11/19/teoreticheskaya-cryptografiya-v-realnykh-usloviyakh
- https://safe-surf.ru/specialists/base-vulnerabilities/491687/
- https://dzen.ru/video/watch/656d79af904c575fc9896ca2
- https://lolz.live/threads/6380395/
- https://zelenka.guru/threads/6380395/
- https://temofeev.ru/info/articles/padding-oracle-attack-na-wallet-dat-rasshifrovka-parolya-dlya-populyarnogo-koshelka-bitcoin-core/
- https://blogssmartzone.com/216851-padding-oracle-attack-na.html
