Implementing a WebSocket server to circumvent access controls, by a web browser, on a web application

US10152590B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10152590-B2
Application numberUS-201615159572-A
CountryUS
Kind codeB2
Filing dateMay 19, 2016
Priority dateJan 4, 2016
Publication dateDec 11, 2018
Grant dateDec 11, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Operations include executing a WebSocket server on a machine executing a web browser; establishing a connection between the WebSocket server and the web browser; receiving, by the WebSocket server from the web browser, a request requiring execution of a local application on the machine; and executing, by the WebSocket server, the local application to serve the request.

First claim

Opening claim text (preview).

What is claimed is: 1. A non-transitory computer readable medium comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising: executing a WebSocket server on a machine executing a web browser, the WebSocket server using a protocol allowing for full-duplex communication between the WebSocket server and the web browser; establishing a connection between the WebSocket server and the web browser; receiving, via the connection by the WebSocket server from a web application executed by the web browser, a request requiring execution of a local application on the machine, the local application being inaccessible by the web application, wherein the web browser sandboxes the web application; responsive to the request: executing, by the WebSocket server, the local application to serve the request, wherein the WebSocket server, the web browser and the local application are executed on the machine. 2. The non-transitory computer readable medium of claim 1 , wherein the connection between the Web Socket server and the web browser is established in response to a user successfully logging into a system, associated with the Web Socket server, via the web browser. 3. The non-transitory computer readable medium of claim 1 , wherein the request is received by the Web Socket server responsive to: displaying, via the web application, a user interface; and receiving, via the user interface, a request from a user to execute the local application. 4. The non-transitory computer readable medium of claim 1 , wherein the operations further comprise, prior to receiving the request by the Web Socket server, executing authentication between the Web Socket server and the web application. 5. The non-transitory computer readable medium of claim 1 , wherein the request comprises one or more of: modifying a document, composing and sending an email, or forwarding communication to a computer system in a set of computer systems comprising the machine. 6. The non-transitory computer readable medium of claim 1 , wherein: the connection between the Web Socket server and the web browser is established in response to a user successfully logging into a system, associated with the Web Socket server, via the web browser; the web browser sandboxes the web application; the request is received by the Web Socket server responsive to: displaying, via the web application, a user interface; and receiving, via the user interface, a request from a user to execute the local application; the request comprises one or more of: modifying a document, composing and sending an email, or forwarding communication to a computer system in a set of computer systems comprising the machine; and the operations further comprise, prior to receiving the request by the Web Socket server, executing authentication between the Web Socket server and the web application. 7. A non-transitory computer readable medium comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising: detecting at least one user successfully logging into a system via a web application executed by a web browser; responsive to detecting the at least one user successfully logging into the system: initiating execution of a WebSocket server, associated with the system, on a particular machine that is executing the web browser; receiving, by the WebSocket server from the web application via the web browser, a request requiring execution of a local application on the particular machine, the local application being inaccessible by the web application, wherein the web browser sandboxes the web application; responsive to the request: executing, by the WebSocket server, the local application to serve the request, wherein the WebSocket server, the web browser and the local application are executed on the particular machine. 8. The non-transitory computer readable medium of claim 7 , wherein the request is received by the Web Socket server responsive to: displaying, via the web application, a user interface; and receiving, via the user interface, a request from a user to execute the local application. 9. The non-transitory computer readable medium of claim 7 , wherein the operations further comprise, prior to receiving the request by the Web Socket server, executing authentication between the Web Socket server and the web application. 10. The non-transitory computer readable medium of claim 7 , wherein the request comprises one or more of: modifying a document, composing and sending an email, or forwarding communication to a computer system in a set of computer systems comprising the particular machine. 11. A non-transitory computer readable medium comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising: executing a WebSocket server on a machine executing a web browser; establishing a connection between the WebSocket server and the web browser; receiving, by the Web Socket server from the web browser, a request requiring execution of a local application on the machine, the local application being inaccessible by a web application executed by the web browser, wherein the web browser sandboxes the web application; responsive to the request: executing, by the WebSocket server, the local application to serve the request, wherein the WebSocket server, the web browser and the local application are executed on the machine. 12. The non-transitory computer readable medium of claim 11 , wherein receiving the request from the web browser comprises receiving the request from the web application executed by the web browser. 13. The non-transitory computer readable medium of claim 12 , wherein the web application is restricted from executing the local application. 14. The non-transitory computer readable medium of claim 12 , wherein the request is received by the Web Socket server responsive to: displaying, via the web application, a user interface; and receiving, via the user interface, a request from a user to execute the local application. 15. The non-transitory computer readable medium of claim 12 , wherein the operations further comprise, prior to receiving the request by the Web Socket server, executing authentication between the Web Socket server and the web application. 16. The non-transitory computer readable medium of claim 11 , wherein the connection between the Web Socket server and the web browser is established in response to a user successfully logging into a system, associated with the Web Socket server, via the web browser. 17. The non-transitory computer readable medium of claim 11 , wherein the request comprises one or more of: modifying a document, composing and sending an email, or forwarding communication to a computer system in a set of computer systems comprising the machine.

Assignees

Inventors

Classifications

  • G06F21/53Primary

    by executing in a restricted environment, e.g. sandbox or secure virtual machine · CPC title

  • Network architectures or network communication protocols for network security (cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00; network architectures or network communication protocols for wireless network security H04W12/00; security arrangements for protecting computers or computer systems against unauthorised activity G06F21/00) · CPC title

  • Restricted operating environment · CPC title

  • Physics · mapped topic

  • based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10152590B2 cover?
Operations include executing a WebSocket server on a machine executing a web browser; establishing a connection between the WebSocket server and the web browser; receiving, by the WebSocket server from the web browser, a request requiring execution of a local application on the machine; and executing, by the WebSocket server, the local application to serve the request.
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification G06F21/53. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 11 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).