View Issue Details

IDProjectCategoryView StatusLast Update
0006202unrealircdpublic2022-12-26 10:23
ReporterValware Assigned Tosyzop  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Product Version6.0.5-rc1 
Fixed in Version6.0.5 
Summary0006202: Authentication Prompt doesn't care if it were enabled
DescriptionTested without an `authentication-prompt` and with `authentication-prompt::enabled` set to `no`; the user will still receive a prompt when require authentication has a match.

This breaks KiwiIRC who doesn't actually close the login screen until the user is fully online, and so won't actually see the auth prompt asking them for a password, and instead just hangs until they see an error "Timed out" which may lead users to think the chat is down.

I think the immediate kill message of "Authorization required" from not having a prompt is a much more suitable idea.

Patch submitted here: https://github.com/unrealircd/unrealircd/pull/243/files
TagsNo tags attached.
3rd party modules

Activities

syzop

2022-12-21 09:10

administrator   ~0022689

Thanks, PR merged and setting enabled to 1. So now you can use set { authentication-prompt { enabled no; } } if you want to, and not needing to do blacklist-module authprompt;

This fixed the bug but does not change the default behavior (enabled by default) that we have since UnreaIRCd 5.0.0.

Isn't there some sort of IRCv3 proposal ongoing to communicate "authentication required" too ? I forgot where/which/how and in what state it is.

syzop

2022-12-21 09:33

administrator   ~0022690

Last edited: 2022-12-21 09:33

Also done this https://github.com/unrealircd/unrealircd/commit/9b1c24c2fa1b67fbc4b29346585d05529cb56ea6 :

commit 9b1c24c2fa1b67fbc4b29346585d05529cb56ea6 (HEAD -> unreal60_dev)
Author: Bram Matthys <syzop@vulnscan.org>
Date:   Wed Dec 21 09:30:08 2022 +0100

    When timing out on authprompt, error with "Account required to connect".
    More ideally it would show the full *LINE reason but that is something
    for a later release. Inspired by https://bugs.unrealircd.org/view.php?id=6202
    
    This also fixes a silly typo that prevents compiling btw :D

So now it looks like:
ERROR :Closing Link: xyz[1.2.3.4] (Account required to connect)

syzop

2022-12-26 10:22

administrator   ~0022692

https://github.com/unrealircd/unrealircd/commit/895bbd3a35637a1ca9644a1293f6c94724043f0e

commit 895bbd3a35637a1ca9644a1293f6c94724043f0e (HEAD -> unreal60_dev, origin/unreal60_dev, origin/HEAD)
Author: Bram Matthys <syzop@vulnscan.org>
Date:   Mon Dec 26 10:11:47 2022 +0100

    When authprompt kicks in and the session timeouts, show the original ban reason
    from the *LINE (or other ban type).
    Eg /GLINE %*@192.168.* 0 :Please authenticate using SASL
    would now, if the user has authprompt enabled and the connection times
    out, exit the client after ~30 secs with "Please authenticate using SASL",
    instead of "Registration timeout" (pre 6.0.5-rc2) or
    the generic "Account required to login" (6.0.5-rc2).
    This to help clients and users who do not type or display anything.
    
    This is an enhancement to https://bugs.unrealircd.org/view.php?id=6202
    
    This also fixes a bug in 6.0.5-rc2 where "Registration timeout" was
    always showing up as "Account required to connect", even if there
    was no softban or authprompt intervention at all.

syzop

2022-12-26 10:23

administrator   ~0022693

For me this marks the issue as resolved.

We can always improve later to communicate more, including special numerics or messages to indicate an account is required.

Issue History

Date Modified Username Field Change
2022-12-20 15:45 Valware New Issue
2022-12-21 09:03 syzop Priority high => normal
2022-12-21 09:10 syzop Note Added: 0022689
2022-12-21 09:33 syzop Note Added: 0022690
2022-12-21 09:33 syzop Note Edited: 0022690
2022-12-26 10:22 syzop Note Added: 0022692
2022-12-26 10:23 syzop Assigned To => syzop
2022-12-26 10:23 syzop Status new => resolved
2022-12-26 10:23 syzop Resolution open => fixed
2022-12-26 10:23 syzop Fixed in Version => 6.0.5
2022-12-26 10:23 syzop Note Added: 0022693