]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Check data before using it
authorAlan T. DeKok <aland@freeradius.org>
Wed, 3 Feb 2016 15:28:52 +0000 (10:28 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Wed, 3 Feb 2016 15:29:04 +0000 (10:29 -0500)
src/modules/rlm_mschap/rlm_mschap.c

index d65cf6354d4be4ce2f79151b510acb270e071dc5..430cd7aabbddcfc001df60f23d74dc350e302153 100644 (file)
@@ -1709,6 +1709,11 @@ static rlm_rcode_t CC_HINT(nonnull) mod_authenticate(void *instance, REQUEST *re
                                if (nt_enc->da->attr != PW_MSCHAP_NT_ENC_PW)
                                        continue;
 
+                               if (nt_enc->vp_length < 4) {
+                                       REDEBUG("MS-CHAP-NT-Enc-PW with invalid format");
+                                       return RLM_MODULE_INVALID;
+                               }
+
                                if (nt_enc->vp_octets[0] != 6) {
                                        REDEBUG("MS-CHAP-NT-Enc-PW with invalid format");
                                        return RLM_MODULE_INVALID;