Explorar el Código

DirectoryFileSystem: Updated ValidatePath to verify that path starts with a blackslash

Tal Aloni hace 8 años
padre
commit
38b9829d6a
Se han modificado 1 ficheros con 7 adiciones y 2 borrados
  1. 7 2
      SMBServer/DirectoryFileSystem/DirectoryFileSystem.cs

+ 7 - 2
SMBServer/DirectoryFileSystem/DirectoryFileSystem.cs

@@ -276,9 +276,14 @@ namespace SMBServer
 
         private void ValidatePath(string path)
         {
-            if (path.StartsWith(@"..\") || path.Contains(@"\..\"))
+            if (path != String.Empty && !path.StartsWith(@"\"))
             {
-                throw new UnauthorizedAccessException("Given path is not allowed");
+                throw new ArgumentException("Path must start with a backslash");
+            }
+
+            if (path.Contains(@"\..\"))
+            {
+                throw new ArgumentException("Given path is not allowed");
             }
         }