US-12625964-B2 - Document object model (DOM) integrity check using hash verification
Abstract
Webpage integrity is monitored using hash verification. A hash verification process is implemented to detect unauthorized changes to value field(s) in a webpage's source code and, while the user is conducting an active web session on the webpage, an alert, which may be communicated via the webpage, is generated and communicated to a user in response to determining that there was an unauthorized change.
Inventors
- Shravan Kumar Vellore Suresh
- Stephen L. Yeager
- Nidhiben Patel
- Lavanya Paruchuri
- Mohana Murali Shivashankar
- Giri Raj Pandit
- Varsha Kotagiri
Assignees
- BANK OF AMERICA CORPORATION
Dates
- Publication Date
- 20260512
- Application Date
- 20240509
Claims (17)
- 1 . A system for monitoring webpage integrity, the system comprising: a webpage controlled by an entity and comprising source code including one or more value fields, the webpage being hosted by the entity for use by a user via a web session on an end-point device; and a source code addendum embedded into the source code and configured to: implement, automatically and without user intervention, a hash verification process to detect unauthorized changes to the one or more value fields, wherein the hash verification process includes generating and storing one or more hash values when the webpage initially loads during the web session, wherein each of the one or more stored hash values is generated for a corresponding value field from amongst the one or more value fields, and wherein the hash verification process is independently implemented for different web sessions, generate an alert and communicate the alert to the user in response to determining that there was an unauthorized change, wherein the user is conducting the web session on the webpage.
- 2 . The system of claim 1 , wherein the hash verification process further includes generating one or more temporary hash values for each subsequent time that the webpage loads or reloads during the web session and comparing the temporary hash values with the stored hash values, wherein each of the one or more temporary hash values is generated for a corresponding value field from amongst the one or more value fields.
- 3 . The system of claim 2 , wherein source code addendum is further configured to determine that there was an unauthorized change when the temporary hash values do not match the stored hash values.
- 4 . The system of claim 1 , wherein an authorized change to a value field results in the stored hash value corresponding to the changed value field being updated directly by the entity.
- 5 . The system of claim 1 , the system further comprising an Application Programming Interface (API), wherein the user may request an authorized change from the entity using the API.
- 6 . The system of claim 1 , wherein the source code addendum is further configured to generate the alert and communicate the alert to the user, wherein communicating the alert includes displaying the alert on the website during the web session.
- 7 . The system of claim 1 , wherein the source code addendum is further configured to generate a second alert and communicate the second alert to the entity in response to determining that there was an unauthorized change.
- 8 . A computer-implemented method for monitoring webpage integrity, the method comprising: implementing, automatically and without user intervention, a hash verification process to detect unauthorized changes to one or more value fields of a webpage, wherein the webpage is controlled by an entity and comprises source code that includes the one or more value fields, the webpage being hosted by the entity for use by a user via a web session on an end-point device, wherein the hash verification process includes generating and storing one or more hash values when the webpage initially loads during the web session, wherein each of the one or more stored hash values is generated for a corresponding value field from amongst the one or more value fields, and wherein the hash verification process is independently implemented for different web sessions, generating an alert and communicating the alert to the user in response to determining that there was an unauthorized change, wherein the user is conducting the web session on the webpage.
- 9 . The computer-implemented method of claim 8 , wherein the hash verification process further includes generating one or more temporary hash values for each subsequent time that the webpage loads or reloads during the web session and comparing the temporary hash values with the stored hash values, wherein each of the one or more temporary hash values is generated for a corresponding value field from amongst the one or more value fields.
- 10 . The computer-implemented method of claim 9 , wherein the method further includes determining that there was an unauthorized change when the temporary hash values do not match the stored hash values.
- 11 . The computer-implemented method of claim 8 , wherein an authorized change to a value field results in the stored hash value corresponding to the changed value field being updated directly by the entity.
- 12 . The computer-implemented method of claim 8 , the method further comprising the user requesting an authorized change from the entity using an Application Programming Interface (API).
- 13 . The computer-implemented method of claim 8 , the method further comprising generating the alert and communicating the alert to the user, wherein communicating the alert includes displaying the alert on the webpage during the web session.
- 14 . The computer-implemented method of claim 8 , the method further comprising generating a second alert and communicating the second alert to the entity in response to determining that there was an unauthorized change.
- 15 . A computer program product for monitoring webpage integrity, the computer program product comprising at least one non-transitory computer-readable medium having computer-readable program code portions embodied therein, the computer readable code portions comprising: an executable portion configured to implement, automatically and without user intervention, a hash verification process to detect unauthorized changes to one or more value fields of a webpage, wherein the webpage is controlled by an entity and comprises source code that includes the one or more value fields, the webpage being hosted by the entity for use by a user via a web session on an end-point device, wherein the hash verification process includes generating and storing one or more hash values when the webpage initially loads during the web session, wherein each of the one or more stored hash values is generated for a corresponding value field from amongst the one or more value fields, and wherein the hash verification process is independently implemented for different web sessions, an executable portion configured to generate an alert and communicate the alert to the user in response to determining that there was an unauthorized change, wherein the user is conducting the web session on the webpage.
- 16 . The computer program product of claim 15 , wherein the hash verification process further includes generating one or more temporary hash values for each subsequent time that the webpage loads or reloads during the web session and comparing the temporary hash values with the stored hash values, wherein each of the one or more temporary hash values is generated for a corresponding value field from amongst the one or more value fields.
- 17 . The computer program product of claim 16 , wherein the computer program product further includes an executable portion configured to determine that there was an unauthorized change when the temporary hash values do not match the stored hash values.
Description
TECHNOLOGICAL FIELD The present invention is related generally to monitoring webpage integrity and, more specifically, using hash verification to detect unauthorized changes and alert webpage users of such unauthorized changes. BACKGROUND Applicant has identified a number of deficiencies and problems associated with monitoring the integrity of a webpage during a user's web session on such webpage. Users are susceptible to elaborate social engineering attacks in which a bad actor convinces the user to give them control over their system and log into their user account on a website. The bad actor may then change the content of the webpage once the user is logged in to essentially trick them into complying with the bad actor's requests. Therefore, a need exists to develop systems, computerized methods, computer program products and the like that will allow for webpages to monitor unauthorized changes on the webpage and notify the user when they may be subject to such a scam. Through applied effort, ingenuity, and innovation, many of these identified problems have been solved by developing solutions that are included in embodiments of the present disclosure, many examples of which are described in detail herein. BRIEF SUMMARY The following presents a simplified summary of one or more embodiments of the invention in order to provide a basic understanding of such embodiments. This summary is not an extensive overview of all contemplated embodiments and is intended to neither identify key or critical elements of all embodiments, nor delineate the scope of any or all embodiments. Its sole purpose is to present some concepts of one or more embodiments in a simplified form as a prelude to the more detailed description that is presented later. Embodiments of the present invention provide for systems, methods, computer program products and the like that provide for monitoring the integrity of a webpage during a user session. Specifically, the webpage monitors its source code to detect unauthorized changes to any of the value fields in the source code using hash verification and notifies the user if there is an unauthorized change. A webpage that is controlled by an entity and comprises source code including various value fields. The source code is embedded with a source code addendum. In some embodiments, the source code addendum may comprise JavaScript code. The source code addendum implements a hash verification process to detect unauthorized changes to the value fields during a user's web session and, in response to detecting an unauthorized change, generates and communicates an alert to the user. In specific embodiments of the invention, the hash verification process includes generating a hash value corresponding with each of the value fields. When the webpage initially loads during a user session, hash values for all the value fields are generated and stored. In further embodiments of the invention, each time the webpage loads or reloads during the user session, new temporary hash values are generated and compared to the stored hash values. If the temporary hash values do not match the stored hash values, the source code addendum determines that there has been an unauthorized change. In specific embodiments of the invention, an authorized change would be initiated by the entity. When the entity makes a change, the stored hash value would be changed directly by the entity, such that when the temporary hash values are generated upon the webpage reloading, the temporary hash values would still match the stored hash values. In additional embodiments, the user may request a change to be made by the entity through an Application Programming Interface (API). Moreover, in specific embodiments of the invention, when an unauthorized change is detected, the source code addendum generates an alert to notify the user of the unauthorized change and communicates the alert by displaying it on the webpage during the user's web session. In additional embodiments of the invention, the source code addendum also generates a second alert to notify the entity of the unauthorized change. As such, the present invention provides for monitoring changes to a webpage to notify users of unauthorized changes. A system for monitoring webpage integrity defines first embodiments of the invention. The system includes a webpage controlled by an entity, where the entity may be any organization, establishment, company, or institution, such as a financial institution, or the like. The webpage is made up of source code and the source code includes one or more value fields. In the context of a financial institution, for example, there may be value fields for each of the name of the account holder, account balance, account number, name of transfer recipients, details of transactions, or the like. The system further includes a source code addendum that is embedded into the webpage's source code and is configured to implement a hash verification process to