mollyim / mollyim-android

Enhanced and security-focused fork of Signal.
GNU Affero General Public License v3.0
1.61k stars 88 forks source link

Option to completely disable webRTC #140

Open sycam0r-e opened 1 year ago

sycam0r-e commented 1 year ago

Is there an existing request for this?

Feature description

Under the hood, Signal and Molly use webRTC for voice and video calls. webRTC results in quite a big attack surface and has been a source for vulnerabilities for years. An option for the user to disable it completely would therefore be great. Disabling webRTC would inevitably lead to disabling video calls, audio calls, and multimedia playback in chats.

For this specific feature, the setting could be named "Calls & media Playback - on/off" or it could be part of a big toggle in the security settings named "Text-only mode - on/off" (see #141).

In that regard, developing code to sandbox webRTC might be worthwile as well, but this would take months to develop and would require serious funding.

When only blocking webRTC, a white-list of recipients allowed to make calls to a user might be nice. However, if an attacker can exploit webRTC, then the whitelist can be bypassed. It would just be one more step for the attacker, that is pwning ones contacts first.

In any case, when a user disables webRTC, a way to be notified that someone tried to call would be needed though. Otherwise the calls might just be shifted to the regular network, which seems worse than having the occasional call on the Signal network. The person who called can get an automated message like "This call did not go through because I have disabled it on my app" or such (this message shouldn't be sent 10x though if the same person tries to call 10x).

Ammako commented 1 year ago

Otherwise the calls might just be shifted to the regular network, which seems worse than having the occasional call on the Signal network.

If Signal does this, there's not much Molly can do to prevent it. An app on your phone can't control the other person's phone's behavior.

It could probably be done for calls between Molly users, but if your contact uses Signal, you're at the mercy of Signal's behavior.

sycam0r-e commented 1 year ago

The passage you are quoting clearly refers to the behaviour of one's communication partner, not of the communication partner's phone, as is also very obvious from the context of the passage. Nowhere has it been stated that Signal moves a call to the normal network.

Ammako commented 1 year ago

How do you intend on Molly preventing your communication partner from choosing (on their own) to call you through the regular phone network?

sycam0r-e commented 1 year ago

If you have nothing meaningful to contribute stop wasting everyone's time with your trolling. You will be ignored from now on.

Ammako commented 1 year ago

Your concern is over contacts choosing (of their own volition) to call you over the regular network due to being unable to call through Signal. There is no way for Molly to prevent that because Molly does not handle calls and SMS.

You can have Molly send automated replies when a contact tries calling, but that's not going to prevent them from choosing to place a call off-Signal. The only way you can prevent them from doing so would be blocking their number from your phone app, which is not something Molly can or will do for you.

We can both agree that Signal calls are far preferable to regular calls, but given that you want to prevent Signal calls from happening, and that you seem to be looking for a way to prevent calls from "[being] shifted to the regular network", it seems reasonable to assume that you neither want Signal calls nor regular calls? If that's not the case then feel free to amend your issue report to clarify.

ghost commented 9 months ago

It's RingRTC, a fork of WebRTC by Signal, not the original WebRTC.