<summary><strong>Lernen Sie AWS-Hacking von Grund auf mit</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegramm-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
Da die Verschlüsselung in **festen****Blockgrößen** durchgeführt wird, ist in der Regel ein Padding im **letzten****Block** erforderlich, um seine Länge zu vervollständigen.\
In der Regel wird **PKCS7** verwendet, das ein Padding generiert, das die **Anzahl** der **benötigten Bytes** wiederholt, um den Block zu vervollständigen. Wenn zum Beispiel dem letzten Block 3 Bytes fehlen, wird das Padding `\x03\x03\x03` sein.
Wenn eine Anwendung verschlüsselte Daten entschlüsselt, entschlüsselt sie zuerst die Daten; dann entfernt sie das Padding. Während der Bereinigung des Paddings, wenn ein **ungültiges Padding ein erkennbares Verhalten auslöst**, haben Sie eine **Padding-Oracle-Schwachstelle**. Das erkennbare Verhalten kann ein **Fehler**, ein **Fehlen von Ergebnissen** oder eine **langsamere Antwort** sein.
Sie könnten [https://github.com/AonCyberLabs/PadBuster](https://github.com/AonCyberLabs/PadBuster) verwenden, um diese Art von Schwachstelle auszunutzen oder einfach...
Sie könnten auch diese Schwachstelle **ausnutzen, um neue Daten zu verschlüsseln**. Zum Beispiel, stellen Sie sich vor, der Inhalt des Cookies lautet "**_**user=MyUsername**_**", dann könnten Sie es zu "\_user=administrator\_" ändern und Privilegien in der Anwendung eskalieren. Sie könnten dies auch mit `paduster` tun, indem Sie den Parameter -plaintext** angeben:
Wenn die Website anfällig ist, wird `padbuster` automatisch versuchen, den Zeitpunkt des Padding-Fehlers zu finden. Sie können jedoch auch die Fehlermeldung mit dem **-error**-Parameter angeben.
Zusammenfassend kann man beginnen, die verschlüsselten Daten zu entschlüsseln, indem man die richtigen Werte errät, die verwendet werden können, um alle verschiedenen Paddings zu erstellen. Dann beginnt der Padding-Oracle-Angriff damit, Bytes vom Ende bis zum Anfang zu entschlüsseln, indem geraten wird, welcher Wert der richtige ist, der ein Padding von 1, 2, 3 usw. erzeugt.
Stellen Sie sich vor, Sie haben einen verschlüsselten Text, der aus 2 Blöcken besteht, die aus den Bytes von E0 bis E15 gebildet werden. Um den letzten Block (E8 bis E15) zu entschlüsseln, durchläuft der gesamte Block die "Blockchiffre-Entschlüsselung" und erzeugt die Zwischenbytes I0 bis I15. Schließlich wird jedes Zwischenbyte mit den vorherigen verschlüsselten Bytes (E0 bis E7) XOR-verknüpft. Also:
Dieser Brute-Force ist genauso komplex wie der vorherige, da es möglich ist, das `E''15` zu berechnen, dessen Wert 0x02 ist: `E''7 = \x02 ^ I15`, also muss nur das `E'14` gefunden werden, das ein `C14` gleich `0x02` erzeugt. Dann werden die gleichen Schritte durchgeführt, um C14 zu entschlüsseln: `C14 = E6 ^ I14 = E6 ^ \x02 ^ E''6`
Registrieren Sie ein Konto und melden Sie sich mit diesem Konto an.\
Wenn Sie sich **mehrmals anmelden** und jedes Mal das **gleiche Cookie** erhalten, gibt es wahrscheinlich **etwas****falsch** in der Anwendung. Das zurückgesendete Cookie sollte jedes Mal, wenn Sie sich anmelden, eindeutig sein. Wenn das Cookie **immer** das **gleiche** ist, wird es wahrscheinlich immer gültig sein und es gibt **keine Möglichkeit, es ungültig zu machen**.
Wenn Sie nun versuchen, das Cookie zu **ändern**, erhalten Sie einen **Fehler** von der Anwendung.\
Aber wenn Sie das Padding per Brute-Force (z.B. mit PadBuster) erzwingen, können Sie ein anderes Cookie erhalten, das für einen anderen Benutzer gültig ist. Dieses Szenario ist höchstwahrscheinlich anfällig für PadBuster.
<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen** möchten, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder folgen Sie uns auf **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.