Forbid UNC paths in /api/file service (IDEA-303249)

GitOrigin-RevId: c21f40f69462144f871bc9732e5f891b9708eb06
This commit is contained in:
Dmitry Jemerov
2023-03-09 16:51:49 +00:00
committed by intellij-monorepo-bot
parent b4cb8ce64e
commit 1fccb04ea8
@@ -17,6 +17,7 @@ import com.intellij.openapi.vfs.VirtualFile
import com.intellij.openapi.vfs.newvfs.ManagingFS
import com.intellij.openapi.vfs.newvfs.RefreshQueue
import com.intellij.ui.AppUIUtil
import com.intellij.util.PathUtilRt
import com.intellij.util.io.systemIndependentPath
import io.netty.channel.ChannelHandlerContext
import io.netty.handler.codec.http.*
@@ -98,9 +99,13 @@ internal class OpenFileHttpService : RestService() {
}
}
if (apiRequest.file == null) {
val requestedFile = apiRequest.file
if (requestedFile == null) {
return parameterMissedErrorMessage("file")
}
if (PathUtilRt.startsWithSeparatorSeparator(requestedFile)) {
return "UNC paths are not supported"
}
val promise = openFile(apiRequest, context, request) ?: return null
promise