Bug 18350

Summary: Limit parsing recursion to prevent crashes
Product: WebKit Reporter: Mark Larson (Google) <mal>
Component: DOMAssignee: Nobody <webkit-unassigned>
Status: RESOLVED DUPLICATE    
Severity: Normal    
Priority: P2    
Version: 525.x (Safari 3.1)   
Hardware: PC   
OS: Windows XP   

Description Mark Larson (Google) 2008-04-07 20:09:43 PDT
I think this is a denial-of-service nuisance attack and not an exploitable crash.

You can create a deeply nested tree by doing something similar to:
   perl -e '{print "<x>"x100000}' >foo.html

(I can provide this as an attachment, but it's 300K and easy  to create on any machine.)

If you load that page and then reload or navigate away, Safari 3.1 crashes.

This might be similar to bug 14886: Stack overflow due to deeply nested parse tree.

Neither IE nor Firefox crash with the same input.
Comment 1 Eric Seidel (no email) 2008-07-03 22:48:18 PDT

*** This bug has been marked as a duplicate of 18282 ***