Prosecution Insights
Last updated: April 19, 2026
Application No. 18/586,519

MONITORING OF JAVASCRIPT OBJECT PROPERTIES FOR DETECTION OF WEB BROWSER SECURITY THREATS

Non-Final OA §DP
Filed
Feb 25, 2024
Examiner
SU, SARAH
Art Unit
2431
Tech Center
2400 — Computer Networks
Assignee
Five Media Marketing Limited
OA Round
1 (Non-Final)
80%
Grant Probability
Favorable
1-2
OA Rounds
2y 11m
To Grant
98%
With Interview

Examiner Intelligence

Grants 80% — above average
80%
Career Allow Rate
537 granted / 672 resolved
+21.9% vs TC avg
Strong +19% interview lift
Without
With
+18.6%
Interview Lift
resolved cases with interview
Typical timeline
2y 11m
Avg Prosecution
17 currently pending
Career history
689
Total Applications
across all art units

Statute-Specific Performance

§101
11.3%
-28.7% vs TC avg
§103
50.4%
+10.4% vs TC avg
§102
19.5%
-20.5% vs TC avg
§112
8.8%
-31.2% vs TC avg
Black line = Tech Center average estimate • Based on career data from 672 resolved cases

Office Action

§DP
DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Preliminary Amendment, received on 3 April 2024, has been entered into record. In this amendment, claims 1-20 have been canceled, and claims 21-53 have been added. Claims 21-53 are presented for examination. Priority The claim for priority from US application 17/334,751, now US Patent 11,949,712, filed on 30 May 2021, which claims priority from US application 17/182,711, now US Patent 11,025,671, filed on 23 February 2021, is duly noted. Double Patenting The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969). A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b). The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13. The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer. Claims 21-53 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-31 of U.S. Patent No. 11,949,712. Although the claims at issue are not identical, they are not patentably distinct from each other because the instant claims are anticipated by US Patent ‘713. US Application 18/586,519 US Patent 11,949,712 21. A computer-implemented method comprising: automatically monitoring access to a property of a non-writable, non-configurable JavaScript property in a JavaScript code, wherein the automatic monitoring comprises changing an execution scope of the JavaScript code. 22. The computer-implemented method of claim 21, wherein the automatic monitoring is performed in a web browser. 23. The computer-implemented method of claim 22, further comprising: in response to a security threat being detected by the automatic monitoring, preventing the web browser from executing the JavaScript code beyond the changed execution scope. 1. A computer-implemented method comprising: automatically, indirectly monitoring access to a property of a non-writable, non-configurable JavaScript property, to detect an attempt by a suspect JavaScript code to perform a malicious action in a web browser, wherein the monitoring and the detection are performed when the suspect JavaScript code is executed in the web browser. 2. The computer-implemented method of claim 1, wherein the monitoring comprises: changing a scope of the suspect JavaScript code, to make the access to the property indirectly monitorable. 25. The computer-implemented method of claim 21, wherein: the automatic monitoring comprises executing the JavaScript code within a detection JavaScript code that wraps the JavaScript code; and the detection JavaScript code comprises instructions that effect the automatic monitoring when the wrapped JavaScript code is executed. 3. The computer-implemented method of claim 2, wherein the detection JavaScript code comprises instructions that effect the monitoring and the detection when the wrapped suspect JavaScript code is executed. 26. The computer-implemented method of claim 25, wherein the changing of the execution scope comprises executing the JavaScript code in a dedicated scope of the detection JavaScript code. 5. The computer-implemented method of claim 4, wherein the changing of the scope comprises: executing the suspect JavaScript code in a dedicated scope of the detection JavaScript code. 24. The computer-implemented method of claim 21, wherein the non-writable, non- configurable JavaScript property is of a JavaScript host environment object. 27. The computer-implemented method of claim 21, wherein the automatic monitoring further comprises, in the changed execution scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 6. The computer-implemented method of claim 5, wherein the monitoring further comprises, in the dedicated scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby indirectly monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 28. The computer-implemented method of claim 27, wherein the overriding further comprises creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 7. The computer-implemented method of claim 6, wherein said overriding further comprises: creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 29. The computer-implemented method of claim 27, wherein: the proxy object is configured to throw an error in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; the automatic monitoring further comprises executing the JavaScript code using a 'try' statement; and the automatic monitoring further comprises detecting a security threat when the error is caught using a 'catch' statement associated with the 'try' statement. 30. The computer-implemented method of claim 27, wherein: the proxy object is configured to fire an event in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; and the automatic monitoring further comprises detecting a security threat when the event is captured using an event listener. 8. The computer-implemented method of claim 6, wherein: (a) the proxy object is configured to throw an error in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code, the monitoring further comprises executing the suspect JavaScript code using a ‘try’ statement, and the detection of the security threat is when the error is caught using a ‘catch’ statement associated with the ‘try’ statement; or (b) the proxy object is configured to fire an event in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code, and the detection of the security threat is when the event is captured using an event listener. 31. The computer-implemented method of claim 27, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent a web browser from executing the JavaScript code beyond the wrapped suspect JavaScript code. 9. The computer-implemented method of claim 6, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent the web browser from executing the suspect JavaScript code beyond the wrapped suspect JavaScript code. 32. A system comprising: at least one hardware processor; and a non-transitory computer-readable storage medium having program code embodied therewith, the program code executable by said at least one hardware processor to: automatically monitor access to a property of a non-writable, non-configurable JavaScript property in a JavaScript code, wherein the automatic monitoring comprises changing an execution scope of the JavaScript code. 33. The system of claim 32, wherein the automatic monitoring is performed in a web browser. 34. The system of claim 33, wherein the program code is further executable by said at least one hardware processor to: in response to a security threat being detected by the automatic monitoring, prevent the web browser from executing the JavaScript code beyond the changed execution scope. 45. The computer program product of claim 44, wherein the program code is further executable by said at least one hardware processor to: in response to a security threat being detected by the automatic monitoring, prevent the web browser from executing the JavaScript code beyond the changed execution scope. 12. A system comprising: (a) at least one hardware processor; and (b) a non-transitory computer-readable storage medium having program code embodied therewith, the program code executable by said at least one hardware processor to, automatically: indirectly monitor access to a property of a non-writable, non-configurable JavaScript property, to detect an attempt by a suspect JavaScript code to perform a malicious action in a web browser, wherein the monitoring and the detection are performed when the suspect JavaScript code is executed in the web browser. 12. The system of claim 11, wherein the monitoring comprises: changing a scope of the suspect JavaScript code, to make the access to the property indirectly monitorable. 36. The system of claim 31, wherein: the automatic monitoring comprises executing the JavaScript code within a detection JavaScript code that wraps the JavaScript code; and the detection JavaScript code comprises instructions that effect the automatic monitoring when the wrapped JavaScript code is executed. 13. The system of claim 12, wherein the suspect JavaScript code is executed within a detection JavaScript code that wraps the suspect JavaScript code. 14. The system of claim 13, wherein the detection JavaScript code comprises instructions that effect the monitoring and the detection when the wrapped suspect JavaScript code is executed. 37. The system of claim 36, wherein the changing of the execution scope comprises executing the JavaScript code in a dedicated scope of the detection JavaScript code. 16. The system of claim 15, wherein the changing of the scope comprises: executing the suspect JavaScript code in a dedicated scope of the detection JavaScript code. 35. The system of claim 32, wherein the non-writable, non-configurable JavaScript property is of a JavaScript host environment object. 38. The system of claim 32, wherein the automatic monitoring further comprises, in the changed execution scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 17. The system of claim 16, wherein the monitoring further comprises, in the dedicated scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby indirectly monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 39. The system of claim 38, wherein the overriding further comprises creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 18. The system of claim 17, wherein said overriding further comprises: creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 40. The system of claim 38, wherein: the proxy object is configured to throw an error in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; the automatic monitoring further comprises executing the JavaScript code using a 'try' statement; and the automatic monitoring further comprises detecting a security threat when the error is caught using a 'catch' statement associated with the 'try' statement. 41. The system of claim 38, wherein: the proxy object is configured to fire an event in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; and the automatic monitoring further comprises detecting a security threat when the event is captured using an event listener. 19. The system of claim 17, wherein: (a) the proxy object is configured to throw an error in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code, the monitoring further comprises executing the suspect JavaScript code using a ‘try’ statement, and the detection of the security threat is when the error is caught using a ‘catch’ statement associated with the ‘try’ statement; or (b) the proxy object is configured to fire an event in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code, and the detection of the security threat is when the event is captured using an event listener. 42. The system of claim 38, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent a web browser from executing the JavaScript code beyond the wrapped suspect JavaScript code. 20. The system of claim 17, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent the web browser from executing the suspect JavaScript code beyond the wrapped suspect JavaScript code. 43. A computer program product comprising a non-transitory computer-readable storage medium having program code embodied therewith, the program code executable by at least one hardware processor to: automatically monitor access to a property of a non-writable, non-configurable JavaScript property in a JavaScript code, wherein the automatic monitoring comprises changing an execution scope of the JavaScript code. 44. The computer program product of claim 43, wherein the automatic monitoring is performed in a web browser. 22. A computer program product comprising a non-transitory computer-readable storage medium having program code embodied therewith, the program code executable by at least one hardware processor to, automatically: indirectly monitor access to a property of a non-writable, non-configurable JavaScript property, to detect an attempt by a suspect JavaScript code to perform a malicious action in a web browser, wherein the monitoring and the detection are performed when the suspect JavaScript code is executed in the web browser. 47. The computer program product of claim 42, wherein: the automatic monitoring comprises executing the JavaScript code within a detection JavaScript code that wraps the JavaScript code; and the detection JavaScript code comprises instructions that effect the automatic monitoring when the wrapped JavaScript code is executed. 23. The computer program product of claim 22, wherein the suspect JavaScript code is executed within a detection JavaScript code that wraps the suspect JavaScript code. 24. The computer program product of claim 23, wherein the detection JavaScript code comprises instructions that effect the monitoring and the detection when the wrapped suspect JavaScript code is executed. 48. The computer program product of claim 47, wherein the changing of the execution scope comprises executing the JavaScript code in a dedicated scope of the detection JavaScript code. 26. The computer program product of claim 25, wherein the changing of the scope comprises: executing the suspect JavaScript code in a dedicated scope of the detection JavaScript code. 46. The computer program product of claim 43, wherein the non-writable, non- configurable JavaScript property is of a JavaScript host environment object. 49. The computer program product of claim 43, wherein the automatic monitoring further comprises, in the changed execution scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 27. The computer program product of claim 26, wherein the monitoring further comprises, in the dedicated scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby indirectly monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 50. The computer program product of claim 49, wherein the overriding further comprises creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 28. The computer program product of claim 27, wherein said overriding further comprises: creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 51. The computer program product of claim 49, wherein: the proxy object is configured to throw an error in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; the automatic monitoring further comprises executing the JavaScript code using a 'try' statement; and the automatic monitoring further comprises detecting a security threat when the error is caught using a 'catch' statement associated with the 'try' statement. 52. The computer program product of claim 49, wherein: the proxy object is configured to fire an event in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; and the automatic monitoring further comprises detecting a security threat when the event is captured using an event listener. 29. The computer program product of claim 27, wherein: (a) the proxy object is configured to throw an error in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code, the monitoring further comprises executing the suspect JavaScript code using a ‘try’ statement, and the detection of the security threat is when the error is caught using a ‘catch’ statement associated with the ‘try’ statement; or (b) the proxy object is configured to fire an event in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code, and the detection of the security threat is when the event is captured using an event listener. 53. The computer program product of claim 49, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent a web browser from executing the JavaScript code beyond the wrapped suspect JavaScript code. 30. The computer program product of claim 27, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent the web browser from executing the suspect JavaScript code beyond the wrapped suspect JavaScript code. Claims 21-53 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-20 of U.S. Patent No. 11,025,671. Although the claims at issue are not identical, they are not patentably distinct from each other because the instant claims are anticipated by Patent ‘671. US Application 18/586,519 US Patent 11,025,671 21. A computer-implemented method comprising: automatically monitoring access to a property of a non-writable, non-configurable JavaScript property in a JavaScript code, wherein the automatic monitoring comprises changing an execution scope of the JavaScript code. 22. The computer-implemented method of claim 21, wherein the automatic monitoring is performed in a web browser. 25. The computer-implemented method of claim 21, wherein: the automatic monitoring comprises executing the JavaScript code within a detection JavaScript code that wraps the JavaScript code; and the detection JavaScript code comprises instructions that effect the automatic monitoring when the wrapped JavaScript code is executed. 1. A computer-implemented method comprising: automatically wrapping a suspect JavaScript code with a detection JavaScript code, wherein, when the wrapped suspect JavaScript code is executed in a web browser, the detection JavaScript code indirectly monitors access to a property of a non-writable, non-configurable JavaScript property, to detect an attempt by the suspect JavaScript code to perform a malicious action in the web browser; and automatically executing the wrapped suspect JavaScript code in the web browser, to effect the monitoring and the detection. 2. The computer-implemented method of claim 1, wherein the monitoring comprises: changing a scope of the suspect JavaScript code, to make the access to the property indirectly monitorable. 26. The computer-implemented method of claim 25, wherein the changing of the execution scope comprises executing the JavaScript code in a dedicated scope of the detection JavaScript code. 3. The computer-implemented method of claim 2, wherein the changing of the scope comprises: executing the suspect JavaScript code in a dedicated scope of the detection JavaScript code. 24. The computer-implemented method of claim 21, wherein the non-writable, non- configurable JavaScript property is of a JavaScript host environment object. 27. The computer-implemented method of claim 21, wherein the automatic monitoring further comprises, in the changed execution scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 4. The computer-implemented method of claim 3, wherein the monitoring further comprises, in the dedicated scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby indirectly monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 28. The computer-implemented method of claim 27, wherein the overriding further comprises creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 5. The computer-implemented method of claim 4, wherein said overriding further comprises: creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 29. The computer-implemented method of claim 27, wherein: the proxy object is configured to throw an error in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; the automatic monitoring further comprises executing the JavaScript code using a 'try' statement; and the automatic monitoring further comprises detecting a security threat when the error is caught using a 'catch' statement associated with the 'try' statement. 6. The computer-implemented method of claim 4, wherein: the proxy object is configured to throw an error in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code; the monitoring further comprises executing the suspect JavaScript code using a ‘try’ statement; and the detection of the security threat is when the error is caught using a ‘catch’ statement associated with the ‘try’ statement. 30. The computer-implemented method of claim 27, wherein: the proxy object is configured to fire an event in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; and the automatic monitoring further comprises detecting a security threat when the event is captured using an event listener. 7. The computer-implemented method of claim 4, wherein: the proxy object is configured to fire an event in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code; and the detection of the security threat is when the event is captured using an event listener. 31. The computer-implemented method of claim 27, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent a web browser from executing the JavaScript code beyond the wrapped suspect JavaScript code. 8. The computer-implemented method of claim 4, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent the web browser from executing the suspect JavaScript code beyond the wrapped suspect JavaScript code. 32. A system comprising: at least one hardware processor; and a non-transitory computer-readable storage medium having program code embodied therewith, the program code executable by said at least one hardware processor to: automatically monitor access to a property of a non-writable, non-configurable JavaScript property in a JavaScript code, wherein the automatic monitoring comprises changing an execution scope of the JavaScript code. 33. The system of claim 32, wherein the automatic monitoring is performed in a web browser. 36. The system of claim 31, wherein: the automatic monitoring comprises executing the JavaScript code within a detection JavaScript code that wraps the JavaScript code; and the detection JavaScript code comprises instructions that effect the automatic monitoring when the wrapped JavaScript code is executed. 47. The computer program product of claim 42, wherein: the automatic monitoring comprises executing the JavaScript code within a detection JavaScript code that wraps the JavaScript code; and the detection JavaScript code comprises instructions that effect the automatic monitoring when the wrapped JavaScript code is executed. 11. A system comprising: (a) at least one hardware processor; and (b) a non-transitory computer-readable storage medium having program code embodied therewith, the program code executable by said at least one hardware processor to, automatically: wrap a suspect JavaScript code with a detection JavaScript code, wherein, when the wrapped suspect JavaScript code is executed in a web browser, the detection JavaScript code indirectly monitors access to a property of a non-writable, non-configurable JavaScript property, to detect an attempt by the suspect JavaScript code to perform a malicious action in the web browser, and execute the wrapped suspect JavaScript code in the web browser, to effect the monitoring and the detection. 12. The system of claim 11, wherein the monitoring comprises: changing a scope of the suspect JavaScript code, to make the access to the property indirectly monitorable. 37. The system of claim 36, wherein the changing of the execution scope comprises executing the JavaScript code in a dedicated scope of the detection JavaScript code. 48. The computer program product of claim 47, wherein the changing of the execution scope comprises executing the JavaScript code in a dedicated scope of the detection JavaScript code. 13. The system of claim 12, wherein the changing of the scope comprises: executing the suspect JavaScript code in a dedicated scope of the detection JavaScript code. 35. The system of claim 32, wherein the non-writable, non-configurable JavaScript property is of a JavaScript host environment object. 38. The system of claim 32, wherein the automatic monitoring further comprises, in the changed execution scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 46. The computer program product of claim 43, wherein the non-writable, non- configurable JavaScript property is of a JavaScript host environment object. 49. The computer program product of claim 43, wherein the automatic monitoring further comprises, in the changed execution scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 14. The system of claim 13, wherein the monitoring further comprises, in the dedicated scope: overriding, with a proxy object, a name of an object whose property references a JavaScript host environment object, wherein JavaScript host environment object has the non-writable, non-configurable JavaScript property; and monitoring access to a property of the proxy object, thereby indirectly monitoring access to the non-writable, non-configurable JavaScript property of the JavaScript host environment object. 39. The system of claim 38, wherein the overriding further comprises creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 50. The computer program product of claim 49, wherein the overriding further comprises creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 15. The system of claim 14, wherein said overriding further comprises: creating the proxy object using a function that receives a reference to the name, wherein the reference: is named differently than the name, and is defined in an outer scope that encompasses the dedicated scope. 40. The system of claim 38, wherein: the proxy object is configured to throw an error in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; the automatic monitoring further comprises executing the JavaScript code using a 'try' statement; and the automatic monitoring further comprises detecting a security threat when the error is caught using a 'catch' statement associated with the 'try' statement. 51. The computer program product of claim 49, wherein: the proxy object is configured to throw an error in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; the automatic monitoring further comprises executing the JavaScript code using a 'try' statement; and the automatic monitoring further comprises detecting a security threat when the error is caught using a 'catch' statement associated with the 'try' statement. 16. The system of claim 14, wherein: the proxy object is configured to throw an error in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code; the monitoring further comprises executing the suspect JavaScript code using a ‘try’ statement; and the detection of the security threat is when the error is caught using a ‘catch’ statement associated with the ‘try’ statement. 41. The system of claim 38, wherein: the proxy object is configured to fire an event in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; and the automatic monitoring further comprises detecting a security threat when the event is captured using an event listener. 52. The computer program product of claim 49, wherein: the proxy object is configured to fire an event in response to the non-writable, non- configurable JavaScript property of the proxy object being accessed by the JavaScript code; and the automatic monitoring further comprises detecting a security threat when the event is captured using an event listener. 17. The system of claim 14, wherein: the proxy object is configured to fire an event in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed by the suspect JavaScript code; and the detection of the security threat is when the event is captured using an event listener. 42. The system of claim 38, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent a web browser from executing the JavaScript code beyond the wrapped suspect JavaScript code. 53. The computer program product of claim 49, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent a web browser from executing the JavaScript code beyond the wrapped suspect JavaScript code. 18. The system of claim 14, wherein: the proxy object is configured, in response to the non-writable, non-configurable JavaScript property of the proxy object being accessed, to prevent the web browser from executing the suspect JavaScript code beyond the wrapped suspect JavaScript code. 43. A computer program product comprising a non-transitory computer-readable storage medium having program code embodied therewith, the program code executable by at least one hardware processor to: automatically monitor access to a property of a non-writable, non-configurable JavaScript property in a JavaScript code, wherein the automatic monitoring comprises changing an execution scope of the JavaScript code. 44. The computer program product of claim 43, wherein the automatic monitoring is performed in a web browser. 20. A computer program product comprising a non-transitory computer-readable storage medium having program code embodied therewith, the program code executable by at least one hardware processor to, automatically: wrap a suspect JavaScript code with a detection JavaScript code, wherein, when the wrapped suspect JavaScript code is executed in a web browser, the detection JavaScript code indirectly monitors access to a property of a non-writable, non-configurable JavaScript property, to detect an attempt by the suspect JavaScript code to perform a malicious action in the web browser, and execute the wrapped suspect JavaScript code in the web browser, to effect the monitoring and the detection. Prior Art Made of Record The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Ding et al. (CN 116915618 A) discloses a system and method for network topology graph processing. Huang (CN 107301345 A) discloses a system and method for preventing XSS attacks. Jeyakumar et al. (US 2022/0030018 A1) discloses a system and method for threat detection, characterization, and remediation of email-based threats in real time. Kaminsky (US 2015/0256556 A1) discloses a system and method for web integrity validator. Kisliakov (US 2023/0214235 A1) discloses a system and method for control over application plugins Lee (KR 101577404 B1) discloses a system and method for blocking access malware by using monitoring Java-script object. Sem Siev et al. (US Patent 10,205,749 B1) discloses a system and method for detection and prevention of automatic redirects of mail HTML document from within nested sub-document. Stoletny et al. (US 2020/0358818 A1) discloses a system and method for detecting malicious code received from malicious client side injection vectors. Wang et al. (CN 108900496 A) discloses a system and method for fast detecting site-mining is implanted trojan detection. Wu et al. (CN 102930203 A) discloses a system and method for lightweight JavaScript sandbox. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to SARAH SU whose telephone number is (571)270-3835. The examiner can normally be reached 6:30 AM - 3:00 PM. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Lynn Feild can be reached at 571-272-2092. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /SARAH SU/Primary Examiner, Art Unit 2431
Read full office action

Prosecution Timeline

Feb 25, 2024
Application Filed
Oct 30, 2025
Non-Final Rejection — §DP (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12587547
CONNECTION DESTINATION MALIGNANCY DETERMINATION SYSTEM, CONNECTION DESTINATION MALIGNANCY DETERMINATION PROGRAM, AND CONNECTION DESTINATION MALIGNANCY DETERMINATION METHOD
2y 5m to grant Granted Mar 24, 2026
Patent 12580942
System and Method for Network Penetration Testing
2y 5m to grant Granted Mar 17, 2026
Patent 12580944
INHERITING SECURITY RISKS FOR CLOUD ENTITIES IN A CLOUD COMPUTING SYSTEM
2y 5m to grant Granted Mar 17, 2026
Patent 12574404
METHODS AND APPARATUS FOR ENHANCED SECURITY IN FEDERATED LEARNING MACHINE LEARNING OPERATIONS IN A COMMUNICATION NETWORK
2y 5m to grant Granted Mar 10, 2026
Patent 12563079
SYSTEMS, METHODS, AND COMPUTER PROGRAMS FOR DETERMINING A VULNERABILITY OF A NETWORK NODE
2y 5m to grant Granted Feb 24, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
80%
Grant Probability
98%
With Interview (+18.6%)
2y 11m
Median Time to Grant
Low
PTA Risk
Based on 672 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month