On 2013/09/06 17:48:46, Cris Neckar wrote:
On 2013/09/05 09:22:12, Michael Starzinger wrote:
> Looking OK from my end. I'll leave the final decision up to Cris.

Yes, the reason we used PAGE_GUARD is so that we would get an actionable
exception in crash reports. This allows us to filter crashes for
STATUS_GUARD_PAGE_VIOLATION and know with some degree of certainty that a
given
crash will have security relevance. Changing this to PAGE_NOACCESS would mean
we
will simply get a standard ACCESS_VIOLATION and will not have the additional context that we are writing off the end (or before the beginning of a guarded
segment).

That being said are their cases that you found where we are handling this
exception and it is not causing a crash? If so then I agree this is bad and we
need to fix it. Otherwise I would ask that we keep these pages with the
current
protection so that we retain the additional context in crash reports.

Make sense?

No, from what I know we don't handle this exception. My point is that we should not misuse the PAGE_GUARD mechanism here. If someone embedder (or even Chrome) uses PAGE_GUARD in the way it was designed to, he'll have a hard time figuring out what's going on when the exception handler is entered due to an (accidential exploit/bug) in V8. I discovered this issue during general code review, but if we run into such an issue in 1-2 years noone will think of this and we'll have to trace that down for several days (it's totally non-obvious). Especially since this issue is Windows-only then, because all other platforms use PROT_NONE here.

So I vote to change this to PAGE_NOACCESS or even better, just uncommit the
guard pages. They are easy to spot already.

https://codereview.chromium.org/23458022/

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to