sshnet / sshnet/SSH.NET

StackOverflow exception when receiving partial success with private key

Aperta
#165 1 commento 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
C#
Stelle
4.4k
Fork
993
Merge medio
9g 21h
PR unite (30g)
1

Descrizione

When attempting to connect to an SFTP server using multiple authentication methods (a username/ password and username/ private key combination) We occasionally have a partial success message from one part of this then a failure from the other. When this happens we get stuck in an infinite loop where the method TryAuthenticate is called from ClientAuthentication continually until we get a StackOverflow exception.

The server on the other end just receives a huge number of login attempt requests.

I have attached our stack trace and the logs from the other server.
stack trace.xlsx
server logs.txt

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia con lo stack trace e i log del server allegati, quindi esamina ClientAuthentication e TryAuthenticate per tracciare come viene gestito il successo parziale tra i metodi username/password e username/private-key. Riproduci la sequenza di autenticazione e verifica che il successo parziale termini o proceda senza ripetere ricorsivamente i tentativi né causare una StackOverflowException.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
csharp
Ambito
authentication, networking
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
38/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.