{"page":1,"pageSize":10,"total":1,"totalPages":1,"versions":[{"changelog":"","comfy_node_extract_status":"pending","createdAt":"2026-09-11T18:11:23.403141Z","dependencies":["torch","numpy","Pillow","opencv-python","pilgram","safetensors\u003e=0.4,\u003c0.9","torchvision","PyYAML","aiohttp"],"deprecated":false,"downloadUrl":"https://cdn.comfy.org/rvage/ComfyUI_Eclipse/4.3.38/node.zip","id":"b6df1a0b-d56d-4db2-9f88-f53747a6f386","node_id":"ComfyUI_Eclipse","status":"NodeVersionStatusFlagged","status_reason":"[\n    {\n        \"admin_tags\": [\n            \"any-network-requests\"\n        ],\n        \"code_snippet\": \"1400 |                 )\\n1401 |                 async with (\\n1402 |                     _URL_DOWNLOAD_SEMAPHORE,\\n1403 |                     _aiohttp.ClientSession(\\n1404 |                         timeout=timeout,\\n1405 |                         connector=connector,\\n1406 |                         cookie_jar=_aiohttp.DummyCookieJar(),\",\n        \"description\": \"Detects network operations and potential data exfiltration patterns\",\n        \"file_path\": \"core/server_endpoints.py\",\n        \"issue_type\": \"python_network_operations\",\n        \"line_number\": 1403,\n        \"line_snippet\": \"_aiohttp.ClientSession(\",\n        \"metadata\": {\n            \"confidence\": 90,\n            \"matched_patterns\": [\n                \"$http5\"\n            ],\n            \"yara_matches\": [\n                {\n                    \"filepath\": \"core/server_endpoints.py\",\n                    \"strings\": [\n                        {\n                            \"identifier\": \"$http5\",\n                            \"instances\": [\n                                {\n                                    \"line\": \"                    _aiohttp.ClientSession(\\n\",\n                                    \"line_number\": 1403,\n                                    \"matched_data\": \"aiohttp.ClientSession\",\n                                    \"matched_length\": 21,\n                                    \"offset\": 21\n                                }\n                            ]\n                        }\n                    ]\n                }\n            ],\n            \"yara_meta\": {\n                \"attack_id1\": \"T1041 Exfiltration Over C2 Channel\",\n                \"attack_id2\": \"T1048 Exfiltration Over Alternative Protocol\",\n                \"category\": \"Exfiltration\",\n                \"date\": \"2025-06-30\",\n                \"description\": \"Detects network operations and potential data exfiltration patterns\",\n                \"reference\": \"https://attack.mitre.org/techniques/T1041/\",\n                \"severity\": \"3\",\n                \"version\": \"1.0\"\n            }\n        },\n        \"recommendation\": \"\",\n        \"scanner\": \"yara_scan\",\n        \"severity\": \"info\"\n    },\n    {\n        \"admin_tags\": [\n            \"any-network-requests\"\n        ],\n        \"code_snippet\": \"520 |         // JavaScript receiver binding for the in-memory graph lifecycle; this\\n521 |         // does not create or access a network connection.\\n522 |         const origConfigure = app.graph?.configure?.bind(app.graph);\\n523 |         if (app.graph \\u0026\\u0026 origConfigure) {\\n524 |             app.graph.configure = function (data) {\\n525 |                 const result = origConfigure(data);\\n526 |                 setTimeout(() =\\u003e {\",\n        \"description\": \"Detects network operations and potential data exfiltration patterns\",\n        \"file_path\": \"js/eclipse-load-image-folder.js\",\n        \"issue_type\": \"python_network_operations\",\n        \"line_number\": 523,\n        \"line_snippet\": \"if (app.graph \\u0026\\u0026 origConfigure) {\",\n        \"metadata\": {\n            \"confidence\": 90,\n            \"matched_patterns\": [\n                \"$socket4\"\n            ],\n            \"yara_matches\": [\n                {\n                    \"filepath\": \"js/eclipse-load-image-folder.js\",\n                    \"strings\": [\n                        {\n                            \"identifier\": \"$socket4\",\n                            \"instances\": [\n                                {\n                                    \"line\": \"        if (app.graph \\u0026\\u0026 origConfigure) {\\n\",\n                                    \"line_number\": 523,\n                                    \"matched_data\": \".bind(\",\n                                    \"matched_length\": 6,\n                                    \"offset\": 37\n                                }\n                            ]\n                        }\n                    ]\n                }\n            ],\n            \"yara_meta\": {\n                \"attack_id1\": \"T1041 Exfiltration Over C2 Channel\",\n                \"attack_id2\": \"T1048 Exfiltration Over Alternative Protocol\",\n                \"category\": \"Exfiltration\",\n                \"date\": \"2025-06-30\",\n                \"description\": \"Detects network operations and potential data exfiltration patterns\",\n                \"reference\": \"https://attack.mitre.org/techniques/T1041/\",\n                \"severity\": \"3\",\n                \"version\": \"1.0\"\n            }\n        },\n        \"recommendation\": \"\",\n        \"scanner\": \"yara_scan\",\n        \"severity\": \"info\"\n    },\n    {\n        \"admin_tags\": [\n            \"any-network-requests\"\n        ],\n        \"code_snippet\": \"246 |         // Patch loadGraphData to pause culling during workflow load\\n247 |         // JavaScript receiver binding for workflow loading; this is unrelated\\n248 |         // to network or socket operations.\\n249 |         const origLoad = app.loadGraphData?.bind(app);\\n250 |         if (origLoad \\u0026\\u0026 !_loadGraphDataPatched) {\\n251 |             _loadGraphDataPatched = true;\\n252 |             app.loadGraphData = async function (...args) {\",\n        \"description\": \"Detects network operations and potential data exfiltration patterns\",\n        \"file_path\": \"js/eclipse-preview-culling.js\",\n        \"issue_type\": \"python_network_operations\",\n        \"line_number\": 249,\n        \"line_snippet\": \"const origLoad = app.loadGraphData?.bind(app);\",\n        \"metadata\": {\n            \"confidence\": 90,\n            \"matched_patterns\": [\n                \"$socket4\"\n            ],\n            \"yara_matches\": [\n                {\n                    \"filepath\": \"js/eclipse-preview-culling.js\",\n                    \"strings\": [\n                        {\n                            \"identifier\": \"$socket4\",\n                            \"instances\": [\n                                {\n                                    \"line\": \"        const origLoad = app.loadGraphData?.bind(app);\\n\",\n                                    \"line_number\": 249,\n                                    \"matched_data\": \".bind(\",\n                                    \"matched_length\": 6,\n                                    \"offset\": 43\n                                }\n                            ]\n                        }\n                    ]\n                }\n            ],\n            \"yara_meta\": {\n                \"attack_id1\": \"T1041 Exfiltration Over C2 Channel\",\n                \"attack_id2\": \"T1048 Exfiltration Over Alternative Protocol\",\n                \"category\": \"Exfiltration\",\n                \"date\": \"2025-06-30\",\n                \"description\": \"Detects network operations and potential data exfiltration patterns\",\n                \"reference\": \"https://attack.mitre.org/techniques/T1041/\",\n                \"severity\": \"3\",\n                \"version\": \"1.0\"\n            }\n        },\n        \"recommendation\": \"\",\n        \"scanner\": \"yara_scan\",\n        \"severity\": \"info\"\n    },\n    {\n        \"admin_tags\": [\n            \"any-network-requests\"\n        ],\n        \"code_snippet\": \"298 |     // network connection or communicate outside ComfyUI.\\n299 |     for (const conn of connections) {\\n300 |         const targetNode = graph.getNodeById(conn.targetId);\\n301 |         if (targetNode) sourceNode.connect(sourceSlot, targetNode, conn.targetSlot);\\n302 |     }\\n303 |     app.canvas?.setDirty(true, true);\\n304 | }\",\n        \"description\": \"Detects network operations and potential data exfiltration patterns\",\n        \"file_path\": \"js/eclipse-set-get.js\",\n        \"issue_type\": \"python_network_operations\",\n        \"line_number\": 301,\n        \"line_snippet\": \"if (targetNode) sourceNode.connect(sourceSlot, targetNode, conn.targetSlot);\",\n        \"metadata\": {\n            \"confidence\": 90,\n            \"matched_patterns\": [\n                \"$socket3\",\n                \"$socket4\"\n            ],\n            \"yara_matches\": [\n                {\n                    \"filepath\": \"js/eclipse-set-get.js\",\n                    \"strings\": [\n                        {\n                            \"identifier\": \"$socket3\",\n                            \"instances\": [\n                                {\n                                    \"line\": \"        if (targetNode) sourceNode.connect(sourceSlot, targetNode, conn.targetSlot);\\n\",\n                                    \"line_number\": 301,\n                                    \"matched_data\": \".connect(\",\n                                    \"matched_length\": 9,\n                                    \"offset\": 37\n                                },\n                                {\n                                    \"line\": \"                originNode.connect(link.origin_slot, setNode, 0);\\n\",\n                                    \"line_number\": 948,\n                                    \"matched_data\": \".connect(\",\n                                    \"matched_length\": 9,\n                                    \"offset\": 31\n                                },\n                                {\n                                    \"line\": \"                getNode.connect(0, targetNode, link.target_slot);\\n\",\n                                    \"line_number\": 956,\n                                    \"matched_data\": \".connect(\",\n                                    \"matched_length\": 9,\n                                    \"offset\": 28\n                                },\n                                {\n                                    \"line\": \"            node.connect(slot, setNode, 0);\\n\",\n                                    \"line_number\": 1005,\n                                    \"matched_data\": \".connect(\",\n                                    \"matched_length\": 9,\n                                    \"offset\": 21\n                                },\n                                {\n                                    \"line\": \"            getNode.connect(0, t.targetNode, t.targetSlot);\\n\",\n                                    \"line_number\": 1019,\n                                    \"matched_data\": \".connect(\",\n                                    \"matched_length\": 9,\n                                    \"offset\": 24\n                                },\n                                {\n                                    \"line\": \"                srcNode.connect(srcSlot, setNode, 0);\\n\",\n                                    \"line_number\": 1066,\n                                    \"matched_data\": \".connect(\",\n                                    \"matched_length\": 9,\n                                    \"offset\": 28\n                                },\n                                {\n                                    \"line\": \"        getNode.connect(0, node, slot);\\n\",\n                                    \"line_number\": 1081,\n                                    \"matched_data\": \".connect(\",\n                                    \"matched_length\": 9,\n                                    \"offset\": 20\n                                }\n                            ]\n                        },\n                        {\n                            \"identifier\": \"$socket4\",\n                            \"instances\": [\n                                {\n                                    \"line\": \"        const originalGraphToPrompt = app.graphToPrompt.bind(app);\\n\",\n                                    \"line_number\": 865,\n                                    \"matched_data\": \".bind(\",\n                                    \"matched_length\": 6,\n                                    \"offset\": 60\n                                },\n                                {\n                                    \"line\": \"    const origQueuePrompt = app.ui.queuePrompt?.bind(app.ui);\\n\",\n                                    \"line_number\": 1432,\n                                    \"matched_data\": \".bind(\",\n                                    \"matched_length\": 6,\n                                    \"offset\": 52\n                                }\n                            ]\n                        }\n                    ]\n                }\n            ],\n            \"yara_meta\": {\n                \"attack_id1\": \"T1041 Exfiltration Over C2 Channel\",\n                \"attack_id2\": \"T1048 Exfiltration Over Alternative Protocol\",\n                \"category\": \"Exfiltration\",\n                \"date\": \"2025-06-30\",\n                \"description\": \"Detects network operations and potential data exfiltration patterns\",\n                \"reference\": \"https://attack.mitre.org/techniques/T1041/\",\n                \"severity\": \"3\",\n                \"version\": \"1.0\"\n            }\n        },\n        \"recommendation\": \"\",\n        \"scanner\": \"yara_scan\",\n        \"severity\": \"info\"\n    },\n    {\n        \"admin_tags\": [\n            \"any-network-requests\"\n        ],\n        \"code_snippet\": \"330 |                 const maxWidth = 250;\\n331 |                 // JavaScript receiver binding used only for local node sizing.\\n332 |                 const origComputeSize = node.computeSize.bind(node);\\n333 |                 node.computeSize = function () {\\n334 |                     const size = origComputeSize();\\n335 |                     if (size[0] \\u003e maxWidth) size[0] = maxWidth;\\n336 |                     return size;\",\n        \"description\": \"Detects network operations and potential data exfiltration patterns\",\n        \"file_path\": \"js/eclipse-smart-prompt-v2.js\",\n        \"issue_type\": \"python_network_operations\",\n        \"line_number\": 333,\n        \"line_snippet\": \"node.computeSize = function () {\",\n        \"metadata\": {\n            \"confidence\": 90,\n            \"matched_patterns\": [\n                \"$socket4\"\n            ],\n            \"yara_matches\": [\n                {\n                    \"filepath\": \"js/eclipse-smart-prompt-v2.js\",\n                    \"strings\": [\n                        {\n                            \"identifier\": \"$socket4\",\n                            \"instances\": [\n                                {\n                                    \"line\": \"                node.computeSize = function () {\\n\",\n                                    \"line_number\": 333,\n                                    \"matched_data\": \".bind(\",\n                                    \"matched_length\": 6,\n                                    \"offset\": 1\n                                }\n                            ]\n                        }\n                    ]\n                }\n            ],\n            \"yara_meta\": {\n                \"attack_id1\": \"T1041 Exfiltration Over C2 Channel\",\n                \"attack_id2\": \"T1048 Exfiltration Over Alternative Protocol\",\n                \"category\": \"Exfiltration\",\n                \"date\": \"2025-06-30\",\n                \"description\": \"Detects network operations and potential data exfiltration patterns\",\n                \"reference\": \"https://attack.mitre.org/techniques/T1041/\",\n                \"severity\": \"3\",\n                \"version\": \"1.0\"\n            }\n        },\n        \"recommendation\": \"\",\n        \"scanner\": \"yara_scan\",\n        \"severity\": \"info\"\n    },\n    {\n        \"admin_tags\": [\n            \"any-network-requests\"\n        ],\n        \"code_snippet\": \"277 |             if (_app.canvas) {\\n278 |                 const maxWidth = 250;\\n279 |                 // JavaScript receiver binding used only for local node sizing.\\n280 |                 const origComputeSize = node.computeSize.bind(node);\\n281 |                 node.computeSize = function () {\\n282 |                     const size = origComputeSize();\\n283 |                     if (size[0] \\u003e maxWidth) size[0] = maxWidth;\",\n        \"description\": \"Detects network operations and potential data exfiltration patterns\",\n        \"file_path\": \"js/eclipse-smart-prompt.js\",\n        \"issue_type\": \"python_network_operations\",\n        \"line_number\": 280,\n        \"line_snippet\": \"const origComputeSize = node.computeSize.bind(node);\",\n        \"metadata\": {\n            \"confidence\": 90,\n            \"matched_patterns\": [\n                \"$socket4\"\n            ],\n            \"yara_matches\": [\n                {\n                    \"filepath\": \"js/eclipse-smart-prompt.js\",\n                    \"strings\": [\n                        {\n                            \"identifier\": \"$socket4\",\n                            \"instances\": [\n                                {\n                                    \"line\": \"                const origComputeSize = node.computeSize.bind(node);\\n\",\n                                    \"line_number\": 280,\n                                    \"matched_data\": \".bind(\",\n                                    \"matched_length\": 6,\n                                    \"offset\": 68\n                                }\n                            ]\n                        }\n                    ]\n                }\n            ],\n            \"yara_meta\": {\n                \"attack_id1\": \"T1041 Exfiltration Over C2 Channel\",\n                \"attack_id2\": \"T1048 Exfiltration Over Alternative Protocol\",\n                \"category\": \"Exfiltration\",\n                \"date\": \"2025-06-30\",\n                \"description\": \"Detects network operations and potential data exfiltration patterns\",\n                \"reference\": \"https://attack.mitre.org/techniques/T1041/\",\n                \"severity\": \"3\",\n                \"version\": \"1.0\"\n            }\n        },\n        \"recommendation\": \"\",\n        \"scanner\": \"yara_scan\",\n        \"severity\": \"info\"\n    },\n    {\n        \"admin_tags\": [\n            \"any-network-requests\"\n        ],\n        \"code_snippet\": \"1059 |                 // edges and do not perform network communication.\\n1060 |                 for (const conn of inputConns) {\\n1061 |                     const [originSlot, srcNode, inputName] = conn;\\n1062 |                     srcNode.connect(originSlot, newNode.id, inputName);\\n1063 |                 }\\n1064 |                 for (const conn of outputConns) {\\n1065 |                     const [outputName, targetNode, targetSlot] = conn;\",\n        \"description\": \"Detects network operations and potential data exfiltration patterns\",\n        \"file_path\": \"js/eclipse-ui-enhancements.js\",\n        \"issue_type\": \"python_network_operations\",\n        \"line_number\": 1062,\n        \"line_snippet\": \"srcNode.connect(originSlot, newNode.id, inputName);\",\n        \"metadata\": {\n            \"confidence\": 90,\n            \"matched_patterns\": [\n                \"$socket3\"\n            ],\n            \"yara_matches\": [\n                {\n                    \"filepath\": \"js/eclipse-ui-enhancements.js\",\n                    \"strings\": [\n                        {\n                            \"identifier\": \"$socket3\",\n                            \"instances\": [\n                                {\n                                    \"line\": \"                    srcNode.connect(originSlot, newNode.id, inputName);\\n\",\n                                    \"line_number\": 1062,\n                                    \"matched_data\": \".connect(\",\n                                    \"matched_length\": 9,\n                                    \"offset\": 50\n                                },\n                                {\n                                    \"line\": \"                    newNode.connect(outputName, targetNode, targetSlot);\\n\",\n                                    \"line_number\": 1066,\n                                    \"matched_data\": \".connect(\",\n                                    \"matched_length\": 9,\n                                    \"offset\": 50\n                                }\n                            ]\n                        }\n                    ]\n                }\n            ],\n            \"yara_meta\": {\n                \"attack_id1\": \"T1041 Exfiltration Over C2 Channel\",\n                \"attack_id2\": \"T1048 Exfiltration Over Alternative Protocol\",\n                \"category\": \"Exfiltration\",\n                \"date\": \"2025-06-30\",\n                \"description\": \"Detects network operations and potential data exfiltration patterns\",\n                \"reference\": \"https://attack.mitre.org/techniques/T1041/\",\n                \"severity\": \"3\",\n                \"version\": \"1.0\"\n            }\n        },\n        \"recommendation\": \"\",\n        \"scanner\": \"yara_scan\",\n        \"severity\": \"info\"\n    }\n]","supported_accelerators":[],"supported_comfyui_frontend_version":"","supported_comfyui_version":"","supported_os":[],"tags":[],"tags_admin":[],"version":"4.3.38"}]}
