Overwriting a freed chunk
Last updated
Last updated
Lernen Sie AWS-Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen Sie GCP-Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Einige der vorgeschlagenen Techniken zur Heap-Ausnutzung erfordern die Möglichkeit, Zeiger innerhalb freigegebener Chunks zu überschreiben. Das Ziel dieser Seite ist es, die potenziellen Schwachstellen zusammenzufassen, die diesen Zugriff ermöglichen könnten:
Wenn es für den Angreifer möglich ist, Informationen in einem freien Chunk zu schreiben, könnte dies missbraucht werden, um die benötigten Zeiger zu überschreiben.
Wenn der Angreifer zweimal denselben Chunk freigeben kann (möglicherweise andere Chunks dazwischen freigeben) und es schafft, dass er 2-mal im selben Bin ist, wäre es möglich für den Benutzer, den Chunk später zuzuweisen, die benötigten Zeiger zu überschreiben und ihn dann erneut zuzuweisen, was die Aktionen des zugewiesenen Chunks auslöst (z. B. schneller Bin-Angriff, tcache-Angriff...).
Es könnte möglich sein, einen zugewiesenen Chunk zu überlaufen, der anschließend einen freigegebenen Chunk hat, und einige Header/Zeiger davon zu ändern.
In diesem Fall wäre es möglich, die Größe des folgenden Chunks im Speicher zu ändern. Ein Angreifer könnte dies ausnutzen, um einen zugewiesenen Chunk eine größere Größe haben zu lassen, ihn dann freizugeben
, sodass der Chunk einer Bin-Größe (größer) hinzugefügt wird, dann die gefälschte Größe zuzuweisen, und der Angriff wird Zugriff auf einen Chunk mit einer Größe haben, die größer ist, als sie tatsächlich ist, was daher eine Situation mit überlappenden Chunks ermöglicht, die auf die gleiche Weise wie ein Heap-Überlauf ausnutzbar ist (siehe vorherige Sektion).
Lernen Sie AWS-Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen Sie GCP-Hacking: HackTricks Training GCP Red Team Expert (GRTE)