New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ask to create default policy for new qrexec services? #3005

Closed
rootkovska opened this Issue Aug 10, 2017 · 13 comments

Comments

Projects
None yet
3 participants
@rootkovska
Member

rootkovska commented Aug 10, 2017

In 3.2 if the user creates a new qrexec service (for which there is no policy file in dom0), we get a window asking to create the default policy for the service. In 4.0-rc1 we get connection refusal if the policy is missing.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Aug 10, 2017

Member

Since now we have new qrexec prompt window - which is harder to accidentally accept, what do you think about applying default policy "$anyvm $anyvm ask", without asking first?

Member

marmarek commented Aug 10, 2017

Since now we have new qrexec prompt window - which is harder to accidentally accept, what do you think about applying default policy "$anyvm $anyvm ask", without asking first?

@rootkovska

This comment has been minimized.

Show comment
Hide comment
Member

rootkovska commented Aug 11, 2017

+1

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Aug 12, 2017

Member

On the other hand, this would allow VM existence confirmation, which may be privacy issue. So, I'll implement explicit confirmation, as it was in 3.2.

Member

marmarek commented Aug 12, 2017

On the other hand, this would allow VM existence confirmation, which may be privacy issue. So, I'll implement explicit confirmation, as it was in 3.2.

@rootkovska

This comment has been minimized.

Show comment
Hide comment
@rootkovska

rootkovska Aug 13, 2017

Member

Why would it allow VM existence confirmation any better?

Member

rootkovska commented Aug 13, 2017

Why would it allow VM existence confirmation any better?

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Aug 13, 2017

Member

Because when target domain specified by source domain does not exist, the call will be rejected (not existing domain does not match with $anyvm, so ask action will not be applied).

Member

marmarek commented Aug 13, 2017

Because when target domain specified by source domain does not exist, the call will be rejected (not existing domain does not match with $anyvm, so ask action will not be applied).

@rootkovska

This comment has been minimized.

Show comment
Hide comment
@rootkovska

rootkovska Aug 13, 2017

Member

But... here we're discussing non-existing services?

Member

rootkovska commented Aug 13, 2017

But... here we're discussing non-existing services?

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Aug 13, 2017

Member

Yes. And when you automatically get $anyvm $anyvm ask policy, it allows exactly what I've described above. That's why I prefer to ask before policy creation (before even looking at target domain).

Member

marmarek commented Aug 13, 2017

Yes. And when you automatically get $anyvm $anyvm ask policy, it allows exactly what I've described above. That's why I prefer to ask before policy creation (before even looking at target domain).

@rootkovska

This comment has been minimized.

Show comment
Hide comment
@rootkovska

rootkovska Aug 13, 2017

Member

Is there anything fundamental that prevents us from not dropping the call before we display the window? Or perhaps adding a random delay in case non-existing target?

Member

rootkovska commented Aug 13, 2017

Is there anything fundamental that prevents us from not dropping the call before we display the window? Or perhaps adding a random delay in case non-existing target?

@rootkovska

This comment has been minimized.

Show comment
Hide comment
@rootkovska

rootkovska Aug 13, 2017

Member

(Random delay simulating the user reading and click on the dialog)

Member

rootkovska commented Aug 13, 2017

(Random delay simulating the user reading and click on the dialog)

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Aug 13, 2017

Member

Is there anything fundamental that prevents us from not dropping the call before we display the window?

Can you rephrase? We are actually dropping the call before displaying the window.

Note that the "problem" is not "ask" action rejecting non-existing target, but not applying "ask" action at all (so it gets to implicit deny, because no rule have matched).

As for random delay - I think it may break many legitimate use cases... And getting it right will be really hard - for example we need to assume some range, and it should match how much this particular user spends on reading the dialog.

IMO one time ask before policy creation, at the first service call is much simpler solution - both in terms of implementation and usability.

Member

marmarek commented Aug 13, 2017

Is there anything fundamental that prevents us from not dropping the call before we display the window?

Can you rephrase? We are actually dropping the call before displaying the window.

Note that the "problem" is not "ask" action rejecting non-existing target, but not applying "ask" action at all (so it gets to implicit deny, because no rule have matched).

As for random delay - I think it may break many legitimate use cases... And getting it right will be really hard - for example we need to assume some range, and it should match how much this particular user spends on reading the dialog.

IMO one time ask before policy creation, at the first service call is much simpler solution - both in terms of implementation and usability.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Aug 13, 2017

Member

Can you rephrase? We are actually dropping the call before displaying the window.

Ah, there is "not". Ok, so ignore this and read the rest of my comment.

Member

marmarek commented Aug 13, 2017

Can you rephrase? We are actually dropping the call before displaying the window.

Ah, there is "not". Ok, so ignore this and read the rest of my comment.

marmarek added a commit to marmarek/qubes-core-admin that referenced this issue Aug 13, 2017

marmarek added a commit to marmarek/qubes-core-admin that referenced this issue Aug 14, 2017

@marmarek marmarek referenced this issue in QubesOS/qubes-core-admin Aug 14, 2017

Merged

Policy related commits for 4.0 #144

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Aug 27, 2017

Automated announcement from builder-github

The package qubes-core-dom0-4.0.6-1.fc25 has been pushed to the r4.0 testing repository for dom0.
To test this update, please install it with the following command:

sudo qubes-dom0-update --enablerepo=qubes-dom0-current-testing

Changes included in this update

Automated announcement from builder-github

The package qubes-core-dom0-4.0.6-1.fc25 has been pushed to the r4.0 testing repository for dom0.
To test this update, please install it with the following command:

sudo qubes-dom0-update --enablerepo=qubes-dom0-current-testing

Changes included in this update

@qubesos-bot qubesos-bot referenced this issue in QubesOS/updates-status Aug 27, 2017

Closed

core-admin v4.0.6 (r4.0) #194

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 30, 2017

Automated announcement from builder-github

The package qubes-core-dom0-4.0.11-1.fc25 has been pushed to the r4.0 stable repository for dom0.
To install this update, please use the standard update command:

sudo qubes-dom0-update

Or update dom0 via Qubes Manager.

Changes included in this update

Automated announcement from builder-github

The package qubes-core-dom0-4.0.11-1.fc25 has been pushed to the r4.0 stable repository for dom0.
To install this update, please use the standard update command:

sudo qubes-dom0-update

Or update dom0 via Qubes Manager.

Changes included in this update

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment