Closed Bug 36946 Opened 25 years ago Closed 23 years ago

location's getter allows spoofing page source

Categories

(Core :: Security, defect, P2)

x86
Windows NT
defect

Tracking

()

VERIFIED DUPLICATE of bug 143369
mozilla1.1alpha

People

(Reporter: norrisboyd, Assigned: jst)

References

Details

Subject: BUG: location's getter allows spoofing page source Date: Thu, 20 Apr 2000 15:30:11 +0300 From: Georgi Guninski <joro@nat.bg> To: Norris Boyd <norris@netscape.com> [Norris, should I post that to bug 36117?] It is possible to spoof page source using getter and location object. The code is: ----------------------------------- <HTML> <SCRIPT> location getter = function() { return "http://www.yahoo.com"}; location setter = function(a) { alert("setting to " + a); } ; </SCRIPT> Select "View | Page Source" </HTML> -----------------------------------
Seems like a dup of 36117, really a valid comment to add to that bug (but not to file as a separate bug). Once window.location is protected, these attempts to define a getter or setter should fail with exceptions being thrown. /be
Bulk reassigning most of norris's bugs to mstoltz.
Assignee: norris → mstoltz
Marking dependent on 36117, marking M17.
Status: NEW → ASSIGNED
Depends on: 36117
Target Milestone: --- → M17
Assigning QA to czhang
QA Contact: junruh → czhang
This is not a dup of 36117. The issue here is not assigning a getter cross- domain, but of redefining a built-in property of the current page. Apparently, developers depend on some DOM properties being replaceable or modifiable, but there may be some set of properties (such as location) which should be replaced or added to. This is not a beta blocker.
No longer depends on: 36117
Mitch, did you mean to say "there are some properties (such as location) that should not be replaced"? That sounds good to me, and it entails DOM idlc adding JSPROP_PERMANENT, perhaps based on an idlc attribute. Cc'ing jst. /be
Marking nsbeta3. We need to come up with a list of properties which should be PERMANENTed for security reasons without breaking too many scripts.
Keywords: nsbeta3
Whiteboard: [nsbeta3+]
Marking Future. This is a spoofing attack, probably with limited effect, and fixing it might break some pages. In general, this issue should be looked at (marking some DOM properties as unable to be replaced) as it may lead to exploits, but this should not be a stopper.
Group: netscapeconfidential?
Keywords: nsbeta3
Whiteboard: [nsbeta3+]
Target Milestone: M17 → Future
Yet another requirement of XPConnect-based-DOM, or DOM idlc if short-term sol'n is required: a permanent keyword. I don't see a huge backward compatibility problem for well-known names like location, which users never claim in their "left-over" part of the global object's namespace. /be
QA Contact: czhang → junruh
Mass changing QA to ckritzer.
QA Contact: junruh → ckritzer
Mass changing milestones to Moz0.9.1. Many of these bugs are dependent on the XPConnected DOM and its associated security UI changes.
Target Milestone: Future → mozilla0.9.1
Still exists but not a serious exploit, and fixing it may screw up some functionality. So I'm putting it off.
Target Milestone: mozilla0.9.1 → mozilla0.9.2
We should also prevent pages from putting getters/setters on [document.]location.href and document.URL.
Priority: P3 → P1
Target Milestone: mozilla0.9.2 → mozilla0.9.3
Adding nsBranch keyword as these bugs need to get into RTM.
Keywords: nsBranch
mitch - if you feel that this security bug is a "must have" for Netscape rtm, please add [PDT+] to the status whiteboard so this bug can be tracked separately from all the nsbranch keyword bugs. Thank you.
This bug as described is not serious enough to be a stop-ship. However, there may be other exploits caused by the ability to assign getters/setters to built-in properties like window.location. We're continuing to look for those.
Keywords: nsBranch
Target is now 0.9.4, Priority P2.
Priority: P1 → P2
Target Milestone: mozilla0.9.3 → mozilla0.9.4
Not critical for 0.9.4, moving to 0.9.5.
Group: netscapeconfidential?
Target Milestone: mozilla0.9.4 → mozilla0.9.5
See also bug 87428 (link toolbar). Gerv is running into trouble trying to get the current URL securely.
time marches on...retargeting to 0.9.6
Target Milestone: mozilla0.9.5 → mozilla0.9.6
Moving the most time-critical bugs and minor security fixes to 0.9.7
Target Milestone: mozilla0.9.6 → mozilla0.9.7
Mass change: It appears that several bugs got accidentally opened up as part of a mass change - see bug 107718 (now fixed). Moving back to security-sensitive group. These were open for about 10 days.
Group: security?
Target Milestone: mozilla0.9.7 → mozilla0.9.9
Mozilla1.0
Target Milestone: mozilla0.9.9 → mozilla1.0
Mozilla1.1
Target Milestone: mozilla1.0 → mozilla1.1
Patch in 143369 should fix this -- jst, if true, please close as a dup. /be
Assignee: mstoltz → jst
Status: ASSIGNED → NEW
Yup, this is now fixed too. *** This bug has been marked as a duplicate of 143369 ***
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → DUPLICATE
Group: security?
vrfy dupe
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.