pfn / passifox

Extensions to allow Chrome and Firefox (4.0+) to auto form-fill passwords from KeePass (requires KeePassHttp)
GNU General Public License v3.0
905 stars 185 forks source link

ChromeIPass fails to associate with KeePassHttp #420

Closed Archenoth closed 9 years ago

Archenoth commented 9 years ago

So, when trying to connect to KeePass2 using ChromeIPass, the browser never seems to successfully associate with the plugin.

KeePassHTTP's server is active, and I can connect to it manually...though when I attempt to connect ChromeIPass to it, it insta-disconnects, and I see the following message in the button interface:

chromeIPass has been disconnected from KeePassHttp.

Press the reconnect button to establish a new connection.

So, I enabled developer mode, and inspected the XHR requests to the server (Just localhost), and whenever I click "Reconnect" from the ChromeIPass button, I see a request like this:

{"RequestType":"test-associate","TriggerUnlock":false}

All with responses like this:

{"RequestType":"test-associate","Success":false,"Count":0,"Version":"1.8.4.0","Hash":"<snipped>"}

Needless to say, it doesn't connect. So I figured it might be something to do with the association, so after removing the key that was added to my database from KeePassHttp, I attempted to reassociate the browser... The popup window asking me to enter a name for the new key appeared, and after entering a name for that (A unique one, not already used) I see this request:

{"RequestType":"associate","Key":"<Snipped>","Nonce":"<Snipped>","Verifier":"<Snipped>"}

...with this response:

{"RequestType":"associate","Success":true,"Id":"ChromeIPass Hathor","Count":0,"Version":"1.8.4.0","Hash":"<Snipped>","Nonce":"<Snipped>","Verifier":"<Snipped>"}

Then the following prints out into the console:

Encryption key is not recognized!

Then it insta-disconnects like it does with the "Reconnect" button, and the cycle continues.

This is using the KeePassHttp 1.8.4, KeePass 2.25+dfsg-1, ChromeIPass 2.6.8, and mono-runtime 3.2.8+dfsg-4ubuntu1 on Linux Mint 17.2 Rafaela on Chrome 45.0.2454.85 (64-bit) with all proxies and uBlock disabled.

Any idea what's going on? Do I have something misconfigured, or is this a bug?

Thanks..!

Archenoth commented 9 years ago

Gnarly.

After ignoring it for a while, it started inadvertently working...that is to say, my KeePass database appeared in the "Connected Databases" screen and it started matching entries that matched the URL fields.

I'm going to wait a bit before closing this issue though (Probably about a week), in case it "inadvertently stops working" in the near future, because if it can fix itself without input--well, maybe it can break itself too? Intermittent issues are always fun.

On a possibly-related note, I also noticed that the key that is created during the pairing process has to be in the root of your KeePass database, it cannot be in a folder, or else it stops recognizing and you have to pair again. This indicates to me that the way that keys are queried in KeePass might not be standard?

Archenoth commented 9 years ago

Aaaand, still no breakage. I'm glad, but that's also profoundly weird.

Anyway, since it's been a week, it's time to close the issue. I'll open it again if I can reproduce the problem later.

dniku commented 8 years ago

Guess what? I'm facing this issue right now. Can you reopen it?

dniku commented 8 years ago

I guess the problem can be solved by removing the connected database from the Keepasshttp options and then re-adding it. I haven't determined what goes wrong in the first place, but at least I've successfully associated with Keepass.