Prechádzať zdrojové kódy

Fix buffer overflow in windows tap driver

Joseph Henry 4 rokov pred
rodič
commit
b3331c5ec2
1 zmenil súbory, kde vykonal 2 pridanie a 1 odobranie
  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 ));