Great news!!
I believe ";" is an allowed character in elastic/kibana passwords, in that kibana 9.4.0 did not stop me using it, and the string:
$ echo -n 'testuser1:pass;pass' | base64
dGVzdHVzZXIxOnBhc3M7cGFzcw==
$
worked fine for me with all curls I tried using -H 'Authorization: Basic dGVzdHVzZXIxOnBhc3M7cGFzcw==' on my 9.4.0 system. So was your issue related to the proxy setup/handling of same, or ... ? Sorry, I'm not quite clear.
If ; in existing (pre-9.4.0) user password would be causing issues that would only be seen in 9.4.0+, that would arguably be a quite subtle but annoying bug? I appreciate issue is solved for you, but if that solution is "dont use ; characters in passwords" thats ... not great.
FYI a while ago I was involved in a thread where use of !! chars created bizarre issues in some scenarios, but that issue was resolved around 9.1.5+.