CVE-2024-1522 in lollms-webuiinfo

Zusammenfassung

von VulDB • 19.06.2026

Ich habe CORS aktiviert, da ich eine Entwicklungsoberfläche (UI) hatte, die einen anderen Port verwendet, und ich vergessen habe, die Konfiguration wieder zu entfernen.

Was ich also getan habe, ist Folgendes: - Zuerst habe ich die CORS-Konfiguration entfernt, die jedem den Zugriff ermöglicht: vorher: ```python sio = socketio.AsyncServer(async_mode="asgi", cors_allowed_origins="*", ping_timeout=1200, ping_interval=30) # CORS für alle aktivieren ``` nachher: ```python cert_file_path = lollms_paths.personal_certificates/"cert.pem" key_file_path = lollms_paths.personal_certificates/"key.pem" if os.path.exists(cert_file_path) and os.path.exists(key_file_path): is_https = True else: is_https = False

# Socket.IO-Server erstellen sio = socketio.AsyncServer(async_mode="asgi", cors_allowed_origins=config.allowed_origins+[f"https://localhost:{config['port']}" if is_https else f"http://localhost:{config['port']}"], ping_timeout=1200, ping_interval=30) # CORS für ausgewählte Ursprünge aktivieren
```

- Zweitens habe ich lollms aktualisiert, um zwei Modi zu unterstützen (einen Headless-Modus und einen UI-Modus). Außerdem wurde /execute_code aktualisiert, um die Ausführung zu blockieren, wenn der Server im Headless-Modus läuft oder nach außen exponiert ist. ```python @router.post("/execute_code") async def execute_code(request: Request): """ Führt Python-Code aus und gibt die Ausgabe zurück.

:param request: Das HTTP-Anfrageobjekt. :return: Eine JSON-Antwort mit dem Status der Operation. """ if lollmsElfServer.config.headless_server_mode: return {"status":False,"error":"Die Codeausführung ist aus offensichtlichen Sicherheitsgründen im Headless-Modus blockiert!"}

if lollmsElfServer.config.host=="0.0.0.0": return {"status":False,"error":"Die Codeausführung ist aus sehr offensichtlichen Gründen blockiert, wenn der Server nach außen exponiert ist!"}

try: data = (await request.json()) code = data["code"]
discussion_id = int(data.get("discussion_id","unknown_discussion")) message_id = int(data.get("message_id","unknown_message")) language = data.get("language","python")


if language=="python": ASCIIColors.info("Python-Code wird ausgeführt:") ASCIIColors.yellow(code) return execute_python(code, discussion_id, message_id) if language=="javascript": ASCIIColors.info("JavaScript-Code wird ausgeführt:") ASCIIColors.yellow(code) return execute_javascript(code, discussion_id, message_id) if language in ["html","html5","svg"]:
ASCIIColors.info("JavaScript-Code wird ausgeführt:") ASCIIColors.yellow(code) return execute_html(code, discussion_id, message_id) elif language=="latex": ASCIIColors.info("LaTeX-Code wird ausgeführt:") ASCIIColors.yellow(code) return execute_latex(code, discussion_id, message_id) elif language in ["bash","shell","cmd","powershell"]:
ASCIIColors.info("Shell-Code wird ausgeführt:") ASCIIColors.yellow(code) return execute_bash(code, discussion_id, message_id) elif language in ["mermaid"]:
ASCIIColors.info("Mermaid-Code wird ausgeführt:") ASCIIColors.yellow(code) return execute_mermaid(code, discussion_id, message_id) elif language in ["graphviz","dot"]:
ASCIIColors.info("Graphviz-Code wird ausgeführt:") ASCIIColors.yellow(code) return execute_graphviz(code, discussion_id, message_id) return {"status": False, "error": "Nicht unterstützte Sprache", "execution_time": 0}
except Exception as ex: trace_exception(ex) lollmsElfServer.error(ex) return {"status":False,"error":str(ex)}
```

Ich habe auch einen optionalen https-Modus hinzugefügt und freue mich darauf, eine vollständige Authentifizierung mit Cookies und einer persönlichen Sitzung usw. hinzuzufügen.


Alle Updates werden in V 9.1 sein


Nochmals vielen Dank für deine Arbeit. Ich werde es beim nächsten Mal schwieriger machen, aber wenn du weitere Fehler findest, nur zu :)

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Zuständig

Huntr.dev

Reservieren

14.02.2024

Veröffentlichung

30.03.2024

Moderieren

akzeptiert

Eintrag

VDB-258783

CPE

bereit

EPSS

0.00445

KEV

nein

Aktivitäten

very low

Quellen

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!