Jump to content
Tadly

[Solved] Enpass 5.2: Browser extension doesn't work on ArchLinux

Recommended Posts

With Enpass 5.2 the browser extension stopped working (at least on chrome, don't know about FF or others as I don't use them)

What I tried so far:
1. Reinstall the extension
2. Disable / Enable the browser extension support within Enpass -> Tools -> Settings

What I discovered:
Looking at the background.html of the extension while browser support is enabled all I see is Uncaught Error: Malformed UTF-8 data (That's fine as I have that on windows too and the extension works just fine).
As soon as I disable browser support within Enpass, the js console screams errors about not being able to connect to the socket.
This means, while browser support is enabled, the extension CAN connect to the Enpass socket (right?).

Also, clicking the extension does NOT show the Enpass is not running page. Just nothing happens at all.
Even the js console doesn't print/log anything.

Share this post


Link to post
Share on other sites
Guest Ankur Sahu

Hello guys,

We are scrutinizing this issue on arch Linux with Gnome 3.18.2. Please help us by confirming

  • the distro and the desktop environment affected at your end.
  • the error message you're getting.

Thanks!:)

Share this post


Link to post
Share on other sites
1 hour ago, Ankur Sahu said:

Hello guys,

We are scrutinizing this issue on arch Linux with Gnome 3.18.2. Please help us by confirming

  • the distro and the desktop environment affected at your end.
  • the error message you're getting.

Thanks!:)

  • OS: Archlinux
  • DE: Gnome 3.20.1 (from the official arch repos)
  • Error Message: There is none. At least none I consider related to the posted issue but following the output when starting enpass from terminal
qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv2_server_method
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
QLayout: Attempting to add QLayout "" to QPasswordEdit "", which already has a layout

 

Share this post


Link to post
Share on other sites
6 hours ago, Ankur Sahu said:

I am running Manjaro (Cinnamon edition).  No error message with the browser extension on Firefox--nothing seems to happen at all when icon is clicked.

Desktop client is functioning, although will no longer autostart from the Enpass settings.  I was, however, able to manually set it to auto start from the Cinnamon settings.

 

Hello guys,

We are scrutinizing this issue on arch Linux with Gnome 3.18.2. Please help us by confirming

  • the distro and the desktop environment affected at your end.
  • the error message you're getting.

Thanks!:)

 

Share this post


Link to post
Share on other sites

Hi!

I just installed the Chrome and Firefox extensions on Arch Linux with i3wm, the first time I clicked on the icon it asked to authorize from the Enpass app, after doing that, if I click on the Enpass icon in the browser it wont show anything. I tried on Mac and it works perfect so I assume there is an issue showing the modal window, I read comments of people having issues with multi-monitor setups on Linux.

I will keep investigating, if someone has any suggestions let me know.

Thanks!

Share this post


Link to post
Share on other sites
Guest Ankur Sahu

Hello guys,

Unfortunately, we are not able to reproduce the issue here in our lab. But one of the possible reason could be a problem with the lsof library in Linux distro (may be missing).

To investigate it further, please share the output of below command.

lsof -i:10391

Where 10391 is port number.

If there is no output (blank), please try with other port numbers between 10391 to 10395.

Share this post


Link to post
Share on other sites
26 minutes ago, Ankur Sahu said:

Hello guys,

Unfortunately, we are not able to reproduce the issue here in our lab. But one of the possible reason could be a problem with the lsof library in Linux distro (may be missing).

To investigate it further, please share the output of below command.


lsof -i:10391

Where 10391 is port number.

If there is no output (blank), please try with other port numbers between 10391 to 10395.

Looks fine on my end

$ lsof -i:10391
COMMAND   PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
Enpass  13246 tadly   17u  IPv4 100556      0t0  TCP localhost.localdomain:10391 (LISTEN)
Enpass  13246 tadly   22u  IPv4 102837      0t0  TCP localhost.localdomain:10391->localhost.localdomain:54920 (ESTABLISHED)
chrome  13459 tadly  223u  IPv4 102836      0t0  TCP localhost.localdomain:54920->localhost.localdomain:10391 (ESTABLISHED)

No output with the other ports

Edit:
lsof version is 4.89

Edited by Tadly

Share this post


Link to post
Share on other sites

I think I have the same outputs like Tadly.

OS: ArchLinux

DE: KDE Plasma 5

Extension is not working (test it with Vivaldi, Firefox and Chrome) and there is no error message.

/opt/Enpass/bin % ./runenpass.sh
qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv2_server_method
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
QLayout: Attempting to add QLayout "" to QPasswordEdit "", which already has a layout
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
/opt/Enpass/bin % lsof -i:10391 
COMMAND   PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
Enpass  28730 kar82   16u  IPv4 643103      0t0  TCP localhost.localdomain:10391 (LISTEN)

Share this post


Link to post
Share on other sites
3 hours ago, Ankur Sahu said:

Here's what I get:

$ lsof -i:10391
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
Enpass  1494 john   17u  IPv4  20955      0t0  TCP localhost:10391 (LISTEN)
Enpass  1494 john   22u  IPv4  25951      0t0  TCP localhost:10391->localhost:50552 (ESTABLISHED)
firefox 1653 john  100u  IPv4  24131      0t0  TCP localhost:50552->localhost:10391 (ESTABLISHED)

 

Hello guys,

Unfortunately, we are not able to reproduce the issue here in our lab. But one of the possible reason could be a problem with the lsof library in Linux distro (may be missing).

To investigate it further, please share the output of below command.


lsof -i:10391

Where 10391 is port number.

If there is no output (blank), please try with other port numbers between 10391 to 10395.

 

Share this post


Link to post
Share on other sites

I can confirm the following results:

1. Arch Linux x64 - Gnome 3.20.3. Enpass 5.2.0.1. Latest extensions. Chrome & Firefox.

  • lsof -i:10391 shows connections listening and established
  • No visible exceptions or errors in the console (runenpass.sh) or the browser extensions
  • Enpass extensions do not work. Nothing happens when clicked. Keyboard shortcut does not work as well
  • Everything works fine if I downgrade to Enpass 5.0.5

2. Arch Linux x64 - Cinnamon 3.0.1. Enpass 5.2.0.1. Latest extensions. Chrome & Firefox.

  • lsof -i:10391 shows connections listening and established
  • No visible exceptions or errors in the console (runenpass.sh) or the browser extensions
  • Enpass extensions do not work. Nothing happens when clicked. Keyboard shortcut does not work as well
  • Everything works fine if I downgrade to Enpass 5.0.5

3. Arch Linux x64 - XFCE 4.12. Enpass 5.2.0.1. Latest extensions. Chrome & Firefox.

  • lsof -i:10391 shows connections listening and established
  • No visible exceptions or errors in the console (runenpass.sh) or the browser extensions
  • Enpass extensions do not work. Nothing happens when clicked. Keyboard shortcut does not work as well
  • Everything works fine if I downgrade to Enpass 5.0.5

4. Arch Linux x64 - Mate 1.12. Enpass 5.2.0.1. Latest extensions. Chrome & Firefox.

  • lsof -i:10391 shows connections listening and established
  • No visible exceptions or errors in the console (runenpass.sh) or the browser extensions
  • Enpass extensions do not work. Nothing happens when clicked. Keyboard shortcut does not work as well
  • Everything works fine if I downgrade to Enpass 5.0.5

 

Wireshark shows the SEND and ACK between the browser and Enpass. Here's some details:

[cgomez ~]$ lsof -i:10391
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
Enpass  3609 cgomez   16u  IPv4 429376      0t0  TCP localhost.localdomain:10391 (LISTEN)
Enpass  3609 cgomez   23u  IPv4 428888      0t0  TCP localhost.localdomain:10391->localhost.localdomain:36850 (ESTABLISHED)
chrome  3989 cgomez  188u  IPv4 430052      0t0  TCP localhost.localdomain:36850->localhost.localdomain:10391 (ESTABLISHED)

In Wireshark,

1835	126.830219027	127.0.0.1	127.0.0.1	WebSocket	448	WebSocket Text [FIN] [MASKED]
1836	*REF*	127.0.0.1	127.0.0.1	TCP	56	10391 → 36850 [ACK] Seq=1098 Ack=2812 Win=51328 Len=0

 

Edited by craigacgomez

Share this post


Link to post
Share on other sites

Hi all,

We countered the reported issue in Enpass downloaded from AUR repository. The package in AUR repository trims one of the executable named EnpassHelper (Responsible for Pop-up window of extension) which results in change the SHA256 checksum and main Enpass App fails to execute it. This checksum verification for validation against tempered executable on Linux was introduced in version 5.2 (while on other platforms code signature verification was there) and thats why older versions are running smoothly. 

It seems that AUR installer is removing debug symbols from EnpassHelper, reducing its size from 2.6 MB to 2.4 MB, hence checksum mismatch. The possible fix is:

1. Install Enpass using installer download from here https://www.enpass.io/download-enpass-linux/

2. Modify AUR build script so that it doesn't modify EnpassHelper binary in any way.

Share this post


Link to post
Share on other sites
1 hour ago, Vinod Kumar said:

Hi all,

We countered the reported issue in Enpass downloaded from AUR repository. The package in AUR repository trims one of the executable named EnpassHelper (Responsible for Pop-up window of extension) which results in change the SHA256 checksum and main Enpass App fails to execute it. This checksum verification for validation against tempered executable on Linux was introduced in version 5.2 (while on other platforms code signature verification was there) and thats why older versions are running smoothly. 

It seems that AUR installer is removing debug symbols from EnpassHelper, reducing its size from 2.6 MB to 2.4 MB, hence checksum mismatch. The possible fix is:

1. Install Enpass using installer download from here https://www.enpass.io/download-enpass-linux/

2. Modify AUR build script so that it doesn't modify EnpassHelper binary in any way.

Thanks a lot for your investigation.

That's strange. I'm not removing anything from the EnpassHelper as you can see here: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=enpass-bin
but after downloading and replacing the EnpassHelper binary, the extension works.

Not sure how this can happen tbh.
I assume this must be some problem with makepkg or something. I can only do some wild guessing at this point :/

Anyway. Thanks again for helping us out here :)

Edit:
FOUND IT and I wasn't that far off with my wild guess.
I can disable striping for packages which will be done by default and caused this issue.
Thanks a lot you guys :)

Edited by Tadly
  • Like 2

Share this post


Link to post
Share on other sites
7 hours ago, Tadly said:

Thanks a lot for your investigation.

That's strange. I'm not removing anything from the EnpassHelper as you can see here: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=enpass-bin
but after downloading and replacing the EnpassHelper binary, the extension works.

Not sure how this can happen tbh.
I assume this must be some problem with makepkg or something. I can only do some wild guessing at this point :/

Anyway. Thanks again for helping us out here :)

Edit:
FOUND IT and I wasn't that far off with my wild guess.
I can disable striping for packages which will be done by default and caused this issue.
Thanks a lot you guys :)

Downloaded and installed 5.2.0-2 from AUR this morning, and problem seems to be solved!  Thank you!

Share this post


Link to post
Share on other sites
On 03.05.2016 at 9:46 AM, Vinod Kumar said:

Hi all,

We countered the reported issue in Enpass downloaded from AUR repository. The package in AUR repository trims one of the executable named EnpassHelper (Responsible for Pop-up window of extension) which results in change the SHA256 checksum and main Enpass App fails to execute it. This checksum verification for validation against tempered executable on Linux was introduced in version 5.2 (while on other platforms code signature verification was there) and thats why older versions are running smoothly. 

It seems that AUR installer is removing debug symbols from EnpassHelper, reducing its size from 2.6 MB to 2.4 MB, hence checksum mismatch. The possible fix is:

1. Install Enpass using installer download from here https://www.enpass.io/download-enpass-linux/

2. Modify AUR build script so that it doesn't modify EnpassHelper binary in any way.

Ok, for Arch it`s fixed. What about other distros? Linux Mint 17.3 x64 "Rosa", Enpass 5.2.1 installed from deb-repository http://repo.sinew.in/ , Enpass extension for Firefox from Mozilla repository - I see same problem: when clicking on Enpas extension button, nothing is happens (Enpass is sitting in tray at that time).

lsof -i:10391

COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
firefox 3719  user   77u  IPv4  83147      0t0  TCP localhost:44810->localhost:10391 (ESTABLISHED)
Enpass  4784  user   16u  IPv4  66865      0t0  TCP localhost:10391 (LISTEN)
Enpass  4784  user   26u  IPv4  83148      0t0  TCP localhost:10391->localhost:44813 (ESTABLISHED)

 

Edited by Alatriste
lsof output

Share this post


Link to post
Share on other sites

Hi @Alatriste,

Debian based systems (like Mint) never had this problem, it was a Arch specific problem. However, by analyzing the lsof output, it seems root cause is same i.e. EnpassHelper is not running. Please try reinstalling Enpass from repo. Also please post output of following command

ls -al /opt/Enpass/bin

 

Share this post


Link to post
Share on other sites
9 hours ago, Vinod Kumar said:

Hi @Alatriste,

Debian based systems (like Mint) never had this problem, it was a Arch specific problem. However, by analyzing the lsof output, it seems root cause is same i.e. EnpassHelper is not running. Please try reinstalling Enpass from repo. Also please post output of following command


ls -al /opt/Enpass/bin

 

Hi, Vinod Kumar,

I did "apt purge enpass",  then reinstalled enpass from repo.

output of  "ls -al /opt/Enpass/bin":
 

drwxrwxr-x 3 root root    4096 тра 11 01:12 .
drwxrwxr-x 6 root root    4096 тра 11 01:12 ..
-rwxrwxr-x 1 root root 6788107 тра  2 15:07 Enpass
drwxrwxr-x 2 root root    4096 тра 11 01:12 EnpassHelper
-rwxrwxr-x 1 root root     405 кві 29  2015 runenpass.sh

 

Share this post


Link to post
Share on other sites

Sorry, seems I`ve found what`s wrong was that - I temporary disabled SpiderGate module of DrWeb for Linux antivirus just now, and Enpass extension works! Very sorry for incovenience, I`ll be discuss it with DrWeb support. I didn`t consider it is somehow blocking localhost connections...

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...