sshd-session.exe crashes with 0xc0000005 after password auth on domain-joined Windows 10
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- c
- Domain
- authentication, backend, operating-systems
Research direction
Start with the post-auth session path around load_user_profile and the sshd-session entry point; compare the accepted domain-qualified name with the later bare-name lookup and inspect the available WER crash dumps. Re-run the documented password-authentication steps on a domain-joined Windows 10 host; done means the session no longer crashes or resets after authentication and reaches the shell.
Written by the indexing model from the issue text.
Description
Summary
sshd-session.exe (v10.0.0.0) and sshd.exe (v9.5.4.1) crash with access violation (0xc0000005) immediately after accepting password authentication on a domain-joined Windows 10 machine. The crash occurs in the child/session process after successful authentication, before a shell is spawned. The connection resets from the client's perspective.
Both the Windows Feature (v9.5.4.1) and the MSI release (v10.0.0.0) exhibit the same crash at different offsets.
Environment
- OS: Windows 10 Pro 22H2 (10.0.19045)
- Architecture: AMD64
- Domain-joined: Yes (
axcend.local) - Hypervisor: Xen 4.17 (HVM domU)
- User account: Local administrator (
EmpowerW10\Axcend), member ofBUILTIN\Administrators - OpenSSH v9.5.4.1:
C:\Windows\System32\OpenSSH\sshd.exe(Windows Feature) - OpenSSH v10.0.0.0:
C:\Program Files\OpenSSH\sshd.exe(MSI install)
Reproduction Steps
- Install OpenSSH Server on a domain-joined Windows 10 machine
- Enable and start the
sshdservice - Connect from a remote machine using password authentication:
ssh -o PreferredAuthentications=password "EmpowerW10\Axcend@<ip>" - Enter the correct password
- Connection immediately resets after password is accepted
Observed Behavior
The OpenSSH event log shows a consistent pattern:
sshd-session: Connection from 10.8.0.6 port 59256 on 192.168.0.88 port 22
sshd-session: Accepted password for EmpowerW10\Axcend from 10.8.0.6 port 59256 ssh2
sshd-session: User child is on pid 10620
sshd-session: Invalid user axcend from 10.8.0.6 port 59256
Password is accepted for the domain-qualified name (EmpowerW10\Axcend), but the session process then logs "Invalid user axcend" (bare username) and crashes.
Crash details — v10.0.0.0 (sshd-session.exe)
Faulting application name: sshd-session.exe, version: 10.0.0.0, time stamp: 0x68f92f6a
Faulting module name: sshd-session.exe, version: 10.0.0.0, time stamp: 0x68f92f6a
Exception code: 0xc0000005
Fault offset: 0x0000000000034aa3
Faulting application path: c:\program files\openssh\sshd-session.exe
Crash details — v9.5.4.1 (sshd.exe)
Faulting application name: sshd.exe, version: 9.5.4.1, time stamp: 0x67bf20a8
Faulting module name: sshd.exe, version: 9.5.4.1, time stamp: 0x67bf20a8
Exception code: 0xc0000005
Fault offset: 0x000000000003a37a
Faulting application path: C:\Windows\System32\OpenSSH\sshd.exe
Both crashes are reproducible 100% of the time. WER crash dumps are available locally.
sshd_config (relevant non-default lines)
SyslogFacility AUTH
LogLevel DEBUG3
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication yes
Subsystem sftp sftp-server.exe
# Match Group administrators block is commented out
What was verified
- Firewall rules allow inbound TCP 22 (confirmed with
netstat—sshd.exeis listening on0.0.0.0:22) - User account is active, local admin, member of
BUILTIN\Administrators - Password was set and accepted (event log confirms
Accepted password) - Host key permissions are correct (
SYSTEM+Administratorsonly) DefaultShellregistry key is not set (defaults tocmd.exe, which exists)- No
SeDenyNetworkLogonRightfor the user - No NTFS alternate data streams on config files
- The crash also occurs via Tailscale IP (different network interface), ruling out network issues
Likely root cause
The "Invalid user axcend" message after "Accepted password for EmpowerW10\Axcend" suggests the session process fails to resolve the bare username during post-auth user profile loading on the domain-joined machine. The access violation likely occurs in user token creation or profile loading code when the local account name collides with or cannot be resolved against the domain.
Related Issues
- #1924 — "Connection drops after authentication" (open, similar symptoms)
- #2011 — Same
0xc0000005crash, claimed fixed in v9.1 via PR openssh-portable#616, but regression persists - #2435 —
load_user_profileformat-string crash insshd-sessionpost-auth (different trigger, same crash surface)
- Dominant language
- No language data
- Stars
- 8.3k
- Forks
- 820
- Avg merge
- 12m
- Merged PRs (30d)
- 1
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from PowerShell/Win32-OpenSSH
-
Area-ssh-agent Issue-Upstream Parity
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
PowerShell/Win32-OpenSSH#2458 · 1 reaction ·
-
Area-Authentication Area-Logging/Diagnostics Area-sshd Investigate Issue-Bug
Difficulty 4/5 3-5 days Newbie friendliness 48/100
PowerShell/Win32-OpenSSH#2466 · 1 comment · 1 reaction ·
-
Area-sshd Area-Terminal Investigate Issue-Regression
Difficulty 4/5 3-5 days Newbie friendliness 48/100
PowerShell/Win32-OpenSSH#2465 · 1 comment · 1 reaction ·
-
Area-ssh-agent Issue-Enhancement
Difficulty 5/5 Over a week Newbie friendliness 25/100
PowerShell/Win32-OpenSSH#2462 · 1 comment · 1 reaction ·
-
Area-ssh-agent Investigate
Difficulty 5/5 Over a week Newbie friendliness 25/100
PowerShell/Win32-OpenSSH#2460 · 1 reaction ·
All issues in PowerShell/Win32-OpenSSH
Similar issues
-
cosh prompt_scanner_hook.py crashes with AttributeError on a non-object JSON payload (every sibling hook guards this)Possibly taken @zjncs claimed this today. Opencomponent:cosh
Difficulty 1/5 Under an hour Newbie friendliness 92/100
agentic-os-org/ANOLISA#6114 · 1 comment ·
Maintainers usually reply within 1 day
-
The shim's mount reader runs awk in the caller's locale, so its answer can differ from the sh reader'sPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
FluidNumerics/fluid-walk-blocker#162 ·
Maintainers usually reply within 1 day
-
fix(security): dependency-pinning misses list-item run steps and npm options before installPossibly taken @MohammedAlkindi claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
GET /api/v1/system/api_keys returns the full API token in plaintextPossibly taken @Harsh23Kashyap claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
infiniflow/ragflow#20555 · 1 reaction ·
Maintainers usually reply within 1 day
-
security
Difficulty 2/5 1-3 hours Newbie friendliness 68/100