From e0bffaf8fe28727d6cc9c99aa37f369abe7d70ff Mon Sep 17 00:00:00 2001 From: Ivaylo Ivanov Date: Sat, 28 Oct 2023 16:44:49 +0200 Subject: [PATCH] Expand unchecked assembly description --- SemSEpaper/exercises.pdf | Bin 171666 -> 172132 bytes SemSEpaper/exercises.tex | 8 +++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/SemSEpaper/exercises.pdf b/SemSEpaper/exercises.pdf index 0d5eac0bd8e753691500682177bdd018df5fd747..1acc3098032155a0ed579deac5d21e4dfa0fad4d 100644 GIT binary patch delta 9805 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 diff --git a/SemSEpaper/exercises.tex b/SemSEpaper/exercises.tex index 4220649..12145c2 100644 --- a/SemSEpaper/exercises.tex +++ b/SemSEpaper/exercises.tex @@ -215,8 +215,14 @@ The contract has a manager mapping, which should be used as a stack. The developer has added the \texttt{setNextManager} function, which should set the top of the stack to the latest user as a manager. The issue is that the function is implemented in such a way, that the stack would not grow, but the first element would always be overwritten - this arises from the fact that the memory slot of the managers mapping does not point to the memory address on the top of the stack, but instead to the base of it. -The function is then using this slot address directly, without calculating any offset, overwriting the base of the stack. +The function is then using this slot address directly, without calculating any offset, overwriting the base of the stack. If social engineeering is applied, an attacker can persuade the +owner to set them as a manager, which would result in the weakness being exploited directly and the owner giving up their own management rights. +\subsection{Consequences} +The consequences of exploiting an arbitrary storage access weakness can be of different types and severity. +An attacker may gain read-write access to private contract data, which should only be accessible to owners, maintainers etc. +They may also exploit the contract to circumvent authorization checks and drain the contract funds. +%TODO: can we expand this? \section{Vulnerable contracts in literature}