Merge pull request #1634 from keepassxreboot/fix/prevent_cross_origin_requests

Prevent Cross-Origin requests to KeePassXC
This commit is contained in:
Sami Vänttinen 2022-05-29 15:58:26 +03:00 committed by GitHub
commit 9af37d688a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -588,6 +588,14 @@ kpxc.retrieveCredentialsCallback = async function(credentials) {
// If credentials are not received, request them again
kpxc.receiveCredentialsIfNecessary = async function() {
if (kpxc.credentials.length === 0 && !_called.retrieveCredentials) {
// Check for Cross-domain security error when inspecting window.top.location.href. We should ignore these requests.
try {
const currentLocation = window.top.location.href;
} catch (err) {
logDebug('Error: Credential request ignored from another domain: ', window.self.location.host);
return [];
}
if (!kpxc.url) {
kpxc.url = document.location.href;
}