فهرست منبع

GSSProvider: Properly handle invalid SPNEGO Token

Tal Aloni 7 سال پیش
والد
کامیت
97a48adf4a
1فایلهای تغییر یافته به همراه9 افزوده شده و 1 حذف شده
  1. 9 1
      SMBLibrary/Authentication/GSSAPI/GSSProvider.cs

+ 9 - 1
SMBLibrary/Authentication/GSSAPI/GSSProvider.cs

@@ -54,7 +54,15 @@ namespace SMBLibrary.Authentication.GSSAPI
         public virtual NTStatus AcceptSecurityContext(ref GSSContext context, byte[] inputToken, out byte[] outputToken)
         {
             outputToken = null;
-            SimpleProtectedNegotiationToken spnegoToken = SimpleProtectedNegotiationToken.ReadToken(inputToken, 0);
+            SimpleProtectedNegotiationToken spnegoToken = null;
+            try
+            {
+                spnegoToken = SimpleProtectedNegotiationToken.ReadToken(inputToken, 0);
+            }
+            catch
+            {
+            }
+
             if (spnegoToken != null)
             {
                 if (spnegoToken is SimpleProtectedNegotiationTokenInit)