-
Notifications
You must be signed in to change notification settings - Fork 145
Conversation
Its already exploited? |
Not found yet, but it can be exploited at any time. |
With CAT it's possible to get similar results, please check #513 |
I agree with @roman-khimov. This should not be consisderd an issue unless it can casue OOM like what @vang1ong7ang and @dusmart did neo-project/neo#2527. Or, say, 100 or 500 or 1000 of such transactions could DOS the consensus. |
I recall that we indeed abused the At that experiment, what we did is purely calling newbuffer and drop again and again. The memory initiation and free cost a lot of time. The 2GB itself didn't matter too much. BTW, sorry if I offend you, I don't like this PR's idea of limiting here and there. Makes things harder and harder. |
Yeah, just wanted to say that some quick allocation/deallocation patterns can be problematic irrespective of the size. This heavily depends on a lot of things (node, runtime, libraries, OS), but I don't think we know of any particularly bad scenario now ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MemorySize
is not free during pop
Yes, this PR's |
2GB is acceptable if it is charged correctly imo |
The
Buffer
type in VM could occupy up to 2GB memory easily, which was abused by malicious users to slow down public nodes.This PR try to limit max used size of
Buffer
up to 100MB in a single execution.