Преглед изворни кода

Fix buffer overflow in windows tap driver

Joseph Henry пре 4 година
родитељ
комит
b3331c5ec2
1 измењених фајлова са 2 додато и 1 уклоњено
  1. 2 1
      windows/TapDriver6/adapter.c

+ 2 - 1
windows/TapDriver6/adapter.c

@@ -272,7 +272,8 @@ tapReadConfiguration(
 
         if (status == NDIS_STATUS_SUCCESS)
         {
-            if (configParameter->ParameterType == NdisParameterString)
+            if (configParameter->ParameterType == NdisParameterString
+                && configParameter->ParameterData.StringData.Length <= sizeof(Adapter->NetCfgInstanceIdBuffer) - sizeof(WCHAR))
             {
                 DEBUGP (("[TAP] NdisReadConfiguration (NetCfgInstanceId=%wZ)\n",
                     &configParameter->ParameterData.StringData ));