@@ -43,28 +43,30 @@ private static TriageNTLMSSPKey ParseTargetInfo(byte[] records, TriageNTLMSSPKey
4343
4444 public static TriageNTLMSSPKey ParsingSocketStremResponse ( byte [ ] responseBuffer , TriageNTLMSSPKey _TriageNTLMSSPKey , ref byte [ ] otherResponseBuffer )
4545 {
46- var responseBuffer_String = BitConverter . ToString ( responseBuffer ) . Replace ( "-" , "" ) ;
47- var NTLMSSP_Bytes_Index = responseBuffer_String . IndexOf ( "4E544C4D53535000" ) / 2 ;
46+ try {
47+ var responseBuffer_String = BitConverter . ToString ( responseBuffer ) . Replace ( "-" , "" ) ;
48+ var NTLMSSP_Bytes_Index = responseBuffer_String . IndexOf ( "4E544C4D53535000" ) / 2 ;
4849
49- var len = responseBuffer . Length - NTLMSSP_Bytes_Index ;
50- var challengeResult = new Byte [ len ] ;
51- Array . Copy ( responseBuffer , NTLMSSP_Bytes_Index , challengeResult , 0 , len ) ;
50+ var len = responseBuffer . Length - NTLMSSP_Bytes_Index ;
51+ var challengeResult = new Byte [ len ] ;
52+ Array . Copy ( responseBuffer , NTLMSSP_Bytes_Index , challengeResult , 0 , len ) ;
5253
53- NTLM_CHALLENGE_MESSAGE typeMessage = ChallengeFromBytes ( challengeResult ) ;
54+ NTLM_CHALLENGE_MESSAGE typeMessage = ChallengeFromBytes ( challengeResult ) ;
5455
55- _TriageNTLMSSPKey . OsBuildNumber = typeMessage . Build ;
56- _TriageNTLMSSPKey . OsMajor = typeMessage . Major ;
57- _TriageNTLMSSPKey . OsMinor = typeMessage . Minor ;
56+ _TriageNTLMSSPKey . OsBuildNumber = typeMessage . Build ;
57+ _TriageNTLMSSPKey . OsMajor = typeMessage . Major ;
58+ _TriageNTLMSSPKey . OsMinor = typeMessage . Minor ;
5859
59- var TargetInfo = challengeResult . Skip ( typeMessage . TargetInfoBufferOffset ) . ToArray ( ) . Take ( typeMessage . TargetInfoLen ) . ToArray ( ) ;
60- _TriageNTLMSSPKey = ParseTargetInfo ( TargetInfo , _TriageNTLMSSPKey ) ;
61-
62- var otherOffset = typeMessage . TargetInfoBufferOffset + typeMessage . TargetInfoLen ;
63- len = len - otherOffset ;
64- var otherByteResult = new Byte [ len ] ;
65- Array . Copy ( challengeResult , otherOffset , otherByteResult , 0 , len ) ;
66- otherResponseBuffer = otherByteResult ;
60+ var TargetInfo = challengeResult . Skip ( typeMessage . TargetInfoBufferOffset ) . ToArray ( ) . Take ( typeMessage . TargetInfoLen ) . ToArray ( ) ;
61+ _TriageNTLMSSPKey = ParseTargetInfo ( TargetInfo , _TriageNTLMSSPKey ) ;
6762
63+ var otherOffset = typeMessage . TargetInfoBufferOffset + typeMessage . TargetInfoLen ;
64+ len = len - otherOffset ;
65+ var otherByteResult = new Byte [ len ] ;
66+ Array . Copy ( challengeResult , otherOffset , otherByteResult , 0 , len ) ;
67+ otherResponseBuffer = otherByteResult ;
68+ }
69+ catch { }
6870 return _TriageNTLMSSPKey ;
6971 }
7072 }
0 commit comments