5

Since of the latest updates (within the last two weeks) skypeforlinux stopped working and the only thing I find in the logs is [ 324.575813] traps: skypeforlinux[2487] trap int3 ip:555cb8dab847 sp:7fff797c57b0 error:0 in skypeforlinux[555cb6e96000+5016000]. A Google search did not return anything useful, most results deal with an invalid opcode rather than the int3 trap.

OS is kali-rolling 2019.3, no idea which version Skype is since even skypeforlinux --help fails.

I tried reinstalling skypeforlinux, I tried running it as non-root as well as root user, I've upgraded everything and rebooted the system a couple of times but nothing fixed the issue.

Does anyone have suggestions how to fix the issue or at least get more information to figure out what could be the culprit here?

As requested here's the apt-cache output:

skypeforlinux:
  Installed: 8.51.0.86
  Candidate: 8.51.0.86
  Version table:
 *** 8.51.0.86 500
        500 https://repo.skype.com/deb stable/main amd64 Packages
        100 /var/lib/dpkg/status
     8.51.0.72 500
        500 https://repo.skype.com/deb stable/main amd64 Packages
     8.50.0.38 500
        500 https://repo.skype.com/deb stable/main amd64 Packages
     8.49.0.49 500
        500 https://repo.skype.com/deb stable/main amd64 Packages
     8.48.0.51 500
        500 https://repo.skype.com/deb stable/main amd64 Packages

Looking at the log $HOME/.config/skypeforlinux/logs/skype-startup.log I see one single entry: [7784:0821/103123.389602:FATAL:atom_main_delegate.cc(207)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180. I get it when running skypeforlinux as root as well as running it with a non-root user.

1
  • 1
    Also note that Kali is not a general-purpose distro, and not built to be secure. I would certainly not use it for everyday things, e.g. I wouldn't want Skype running under the default root account.
    – Sparhawk
    Aug 25 '19 at 6:45
8

I experienced the same issue after upgrading under Centos 7 to version 8.51.0.86-1.x86_64 from 8.50.0.38-1.x86_64.

I found by examining the logfile, the following messsage:

FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, 
but is not configured correctly. Rather than run without sandboxing I'm aborting now. 
You need to make sure that /usr/share/skypeforlinux/chrome-sandbox is owned by root 
and has mode 4755

If you follow the instructions in the error message:

    chmod 4755 /usr/share/skypeforlinux/chrome-sandbox

it fixes the issue.

6
  • That update does indeed create the chrome-sandbox file, but on my system it is already 4755. I tried 4777 and 0777 but neither worked.
    – Tox
    Aug 20 '19 at 13:27
  • Are you able to look at the logfile? On Centos is it installed at $HOME/.config/skypeforlinux/logs/skype-startup.log - Do you have selinux or apparmor that might block the suid?
    – krbvroc1
    Aug 20 '19 at 13:40
  • 3
    I get a single entry in the log: [7784:0821/103123.389602:FATAL:atom_main_delegate.cc(207)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180. I get it when running skypeforlinux as root as well as running it with a non-root user.
    – Tox
    Aug 21 '19 at 8:33
  • 2
    @Tox That message is very helpful; please edit it into your question. Aug 24 '19 at 4:10
  • This was it. Now, able to launch skypeforlinux 8.53.0.85-1 on RHEL 7.7 Oct 12 '19 at 15:33
7

So, your skypeforlinux version is 8.51.0.86, the current up-to-date version at this moment - which was released fairly recently. In fact, I have the exact same version on my Debian 10 system, and it works just fine.

The int3 is a x86 processor instruction that is used to implement debugging breakpoints.

But in your case, the int3 is encountered while skypeforlinux is not being run under a debugger, so the int3 trap vector points to a default kernel routine, which is essentially equivalent to sending a SIGTRAP signal to the program.

Why does the skypeforlinux program code include int3 instructions in a production version with no debugger present? Only the people at Microsoft with access to the source code of skypeforlinux could answer that without a significant reverse-engineering effort.

Note that Microsoft only promises that skypeforlinux will work on Ubuntu, Debian, OpenSuSE and Fedora. It could be that this most recent version may have accidentally included some debugging code that only gets executed when some condition does not match any of the supported distributions - and causes Skype to crash because the expected debugging environment is not present.

You could try downgrading Skype to the previous version (or any of the versions listed in the apt-cache policy output) and seeing if that works better for you:

# apt install skypeforlinux=8.51.0.72
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be DOWNGRADED:
  skypeforlinux
0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
Need to get 0 B/79.0 MB of archives.
After this operation, 1,024 B of additional disk space will be used.
Do you want to continue? [Y/n]

If downgrading the package version helps, you might want to set the package on hold, so apt upgrade won't upgrade it again until you remove the hold:

# apt-mark hold skypeforlinux

You might then send a bug report on your experiences to Microsoft, but since they don't make any promises to support Kali, it might get ignored or assigned a very low priority.

9
  • Yes, that solved it. I had to downgrade two versions to get it working again: apt install skypeforlinux=8.50.0.38. Thanks for explaining the int3 occurrence. :)
    – Tox
    Aug 20 '19 at 7:31
  • 1
    Sure, you'll need to set the package on hold: apt-mark hold skypeforlinux
    – telcoM
    Aug 20 '19 at 8:38
  • 1
    @Joey Note the upvoted comment in the other answer: apparently skypeforlinux now uses chrome-sandbox which will refuse to run as root... and Kali runs everything as root by default. There seems to be a --no-sandbox option that might help, but it obviously removes the protection you would otherwise have.
    – telcoM
    Sep 22 '19 at 19:55
  • 1
    @telcoM Today I tried running latest skypeforlinux (which is 8.53.0.85) via command ./skypeforlinux --no-sandbox, but nothing happened. Running the app from shortcut doesn't work too. Also all workarounds from the other answers until here didn't work for me. So, for now I'll reinstall version 8.50.0.38 and keep it on hold again. For those who needs version 8.50.0.38 (amd64 .deb package) but can't find it in the official skype repositories anymore, try this site.
    – Joey
    Oct 9 '19 at 19:41
  • 1
    @VincasDargis The site mentioned in the comment just above yours does have the older versions still available. It looks like skypeforlinux is gaining an increasing aversion for running as root, which is good for system security but may be a problem for those trying to use a specialized auditing/penetration testing toolkit as their everyday operating system.
    – telcoM
    Oct 17 '19 at 12:14
4

I had this issue in Manjaro. After researching it, I found that

chmod 4755 /usr/share/skypeforlinux/chrome-sandbox

is not the preferred method for resolving the problem in Arch or Debian-based distros. Instead, it's suggested to use

sudo sh -c 'echo "kernel.unprivileged_userns_clone=1" > /etc/sysctl.d/00-local-userns.conf'

for a persistant solution. More info can be found at the LXC-Debian Wiki.

EDITED: Jonas Berlin points out a broken command in the original and further checking verifies his comment. Also, removed previous link to the incorrect command. Thanks, Jonas.

2
  • 2
    you have a broken echo ... > sudo /etc/... command.. Remove sudo or wrap the whole thing in sudo sh -c '...'. Sep 23 '19 at 4:21
  • I read the part about in the Wiki article because **unprivileged**_userns_clone doesn't really sound safe to me, but I didn't read anything about security implications - are there any? And it sounded like related to virtual machines rather than a physical one or does Skype happen to run in such a container?
    – Tox
    Sep 23 '19 at 16:36
2

Just for completeness reason, some may find this useful: web version https://web.skype.com of Skype is mature enough and works well under google chrome browser, so you do not need to install the application locally to be able to skype. This includes not only chat feature but audio/video calls and screen sharing/recording.

1
  • Due to WebRTC, this is indeed a good alternative, when not wanting to mess around. Jun 15 '20 at 23:38
1

I've tried chmod 4755 /usr/share/skypeforlinux/chrome-sandbox without success (Skype version 8.61.0.77-1) on CentOS Linux 7.something. Therefore I decided to force a downgrade:

yum list skypeforlinux --showduplicates
sudo yum downgrade skypeforlinux-8.57.0.116-1

The problem is just, that 8.57.0.116-1 meanwhile is the eldest available version in their RPM repository, which does not work either. The skype-startup.log hints for the Chrome sandbox:

cat ~/.config/skypeforlinux/logs/skype-startup.log

However, after the downgrade and chmod, I've got a whole other Electron error message:

A JavaScript error occurred in the main process
Uncaught Exception:
Error: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /usr/share/skypeforlinux/resources/app.asar.unpacked/node_modules/electron-utility/build/Release/electron_utility.node)
...

When checking for the available versions of libstdc++:

strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

... it shows that 3.4.19 is the latest available version - while 3.4.21 would be required.


But this is easy to resolve, by editing ~/.bashrc and extending the LD_LIBRARY_PATH:

export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/usr/local/lib64:/usr/lib64

It needs to link against /usr/local/lib64/libstdc++.so.6, which knows version 3.4.21. When it not gets picked up from there, one can also add that directly into /bin/skypeforlinux, with the downside, that it will be lost after every package upgrade. This works with the current version 8.61.0.77-1. I've also found out, that this basically is Electron issue #17972.

1

Here's a simple workaround that works. I followed the instructions in this answer and was successfully able to run skypeforlinux on kali linux root's desktop. You would need to create another user e.g user2 for this to work.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.