
Exploit für Remote-Code-Ausführung in Apache Solr mittels Velocity-Template-Injection, der die Befehlsausführung auf verwundbaren Instanzen durch manipulierte POST-Anfragen ermöglicht.
/Knotenname/config die Konfigurationsdatei dieses Knotens ändern.VelocityResponseWriter. Die Option params.resource.loader.enabled in den Initialisierungsparametern dieses Plugins steuert, ob der Parameter-Ressourcen-Loader das Angeben von Vorlagen in den Solr-Anfrageparametern erlaubt; standardmäßig ist sie auf false gesetzt. Wird params.resource.loader.enabled auf true gesetzt, können Benutzer über die Parameter in der Anfrage das Laden entsprechender Ressourcen festlegen. Das bedeutet, dass ein Angreifer durch das Erstellen einer bösartigen Anfrage Befehle auf dem Server ausführen kann.Methode 1: Manuelle Überprüfung Rufen Sie http://x.x.x.x:8983/solr/#/ auf, um zur Hauptoberfläche zu gelangen, und klicken Sie links auf Core Selector, um den Sammlungsnamen anzuzeigen.

Verwenden Sie die folgenden beiden Payloads
Sammlungseinstellungen ändern

Befehlsausführung
Befehlsausführung erfolgreich!
Methode 2: Skriptbasierte Überprüfung


params.resource.loader.enabled auf false und stellen Sie dann die Konfigurationsdatei auf schreibgeschützt.
Geben Sie params.resource.loader.enabled als false an und setzen Sie die Konfigurationsdatei dann auf schreibgeschützt.
Standardmäßig ist params.resource.loader.enabled auf false gesetzt, und es gibt keine Konfigurationsdatei. Wenn Sie den entsprechenden Wert ändern oder eine erzwungene Änderung vornehmen möchten, ist eine Konfigurationsdatei erforderlich.
Standardmäßig ist params.resource.loader.enabled false. Es gibt keine Konfigurationsdatei. Wenn Sie den entsprechenden Wert ändern oder eine erzwungene Änderung vornehmen möchten, müssen Sie die Datei konfigurieren.
Standardmäßig besitzt die Knotenkonfigurationsdatei configoverlay.json Lese-/Schreibrechte.
Standardmäßig ist die Knotenkonfigurationsdatei configoverlay.json die Konfigurationsdatei mit Lese-/Schreibrechten.
Konfigurationsdateipfad: (abhängig von der tatsächlichen Situation)
Pfad: (abhängig von der tatsächlichen Situation)
./example/example-DIH/solr/db/conf/configoverlay.json:
./example/example-DIH/solr/mail/conf/configoverlay.json:
./example/example-DIH/solr/solr/conf/configoverlay.json:
Setzen Sie in allen die Option auf . Wenn keine vorhanden ist, wird empfohlen, eine manuell zu erstellen und dann ihre Berechtigungen so festzulegen, dass sie nur gelesen werden kann.
Setzen Sie in allen die Option auf . Wenn es keine gibt, wird empfohlen, eine manuell zu erstellen und ihre Berechtigungen so festzulegen, dass sie nur gelesen werden kann.EXP-Beschreibung:
configoverlay.jsonparams.resource.loader.enabledfalseconfigoverlay.jsonconfigoverlay.jsonparams.resource.loader.enabledfalseconfigoverlay.json