Security based on event locations are insecure and can be spoofed.
Events are a messaging system which may provide control data to programs listening for events. Events often do not have any type of authentication framework to allow them to be verified from a trusted source. Any application, in Windows, on a given desktop can send a message to any window on the same desktop. There is no authentication framework for these messages. Therefore, any message can be used to manipulate any process on the desktop if the process does not check the validity and safeness of those messages.
Threat Mapped score: 1.8
Industry: Finiancial
Threat priority: P4 - Informational (Low)
CVE: CVE-2004-0213
Attacker uses Shatter attack to bypass GUI-enforced protection for CVE-2003-0908.
N/A
N/A
Phase | Note |
---|---|
Architecture and Design | N/A |
Implementation | N/A |
Intro: This example code prints out secret information when an authorized user activates a button:
Body: This code does not attempt to prevent unauthorized users from activating the button. Even if the button is rendered non-functional to unauthorized users in the application UI, an attacker can easily send a false button press event to the application window and expose the secret information.
public void actionPerformed(ActionEvent e) { if (e.getSource() == button) { System.out.println("print out secret information"); } }