mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2026-06-24 00:39:30 +08:00
fix: V-002 security vulnerability
Automated security fix generated by OrbisAI Security
This commit is contained in:
parent
a1d95f3f82
commit
06eb3253eb
@ -3,8 +3,21 @@ from typing import Optional
|
|||||||
from folder_paths import folder_names_and_paths, get_directory_by_type
|
from folder_paths import folder_names_and_paths, get_directory_by_type
|
||||||
from api_server.services.terminal_service import TerminalService
|
from api_server.services.terminal_service import TerminalService
|
||||||
import app.logger
|
import app.logger
|
||||||
|
import ipaddress
|
||||||
import os
|
import os
|
||||||
|
|
||||||
|
|
||||||
|
@web.middleware
|
||||||
|
async def _local_only_middleware(request: web.Request, handler):
|
||||||
|
"""Restrict access to localhost connections only."""
|
||||||
|
remote = request.remote or ""
|
||||||
|
try:
|
||||||
|
if not ipaddress.ip_address(remote).is_loopback:
|
||||||
|
raise web.HTTPForbidden(reason="Internal routes are only accessible from localhost")
|
||||||
|
except ValueError:
|
||||||
|
raise web.HTTPForbidden(reason="Internal routes are only accessible from localhost")
|
||||||
|
return await handler(request)
|
||||||
|
|
||||||
class InternalRoutes:
|
class InternalRoutes:
|
||||||
'''
|
'''
|
||||||
The top level web router for internal routes: /internal/*
|
The top level web router for internal routes: /internal/*
|
||||||
@ -72,7 +85,7 @@ class InternalRoutes:
|
|||||||
|
|
||||||
def get_app(self):
|
def get_app(self):
|
||||||
if self._app is None:
|
if self._app is None:
|
||||||
self._app = web.Application()
|
self._app = web.Application(middlewares=[_local_only_middleware])
|
||||||
self.setup_routes()
|
self.setup_routes()
|
||||||
self._app.add_routes(self.routes)
|
self._app.add_routes(self.routes)
|
||||||
return self._app
|
return self._app
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user