first commit
Some checks failed
Vulhub Format Check and Lint / format-check (push) Has been cancelled
Vulhub Format Check and Lint / markdown-check (push) Has been cancelled
Vulhub Docker Image CI / longtime-images-test (push) Has been cancelled
Vulhub Docker Image CI / images-test (push) Has been cancelled
Some checks failed
Vulhub Format Check and Lint / format-check (push) Has been cancelled
Vulhub Format Check and Lint / markdown-check (push) Has been cancelled
Vulhub Docker Image CI / longtime-images-test (push) Has been cancelled
Vulhub Docker Image CI / images-test (push) Has been cancelled
This commit is contained in:
28
geoserver/CVE-2023-25157/startup.sh
Normal file
28
geoserver/CVE-2023-25157/startup.sh
Normal file
@@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
|
||||
AUTH="admin:geoserver"
|
||||
/mnt/geoserver/bin/startup.sh &
|
||||
GEOSERVER_PID=$!
|
||||
|
||||
SERVER_ALIVE=$(curl -s --output /dev/null -u "$AUTH" -XGET --write-out "%{http_code}" http://localhost:8080/geoserver/rest/about/status)
|
||||
while [ "$SERVER_ALIVE" -ne 200 ]
|
||||
do
|
||||
echo "geoserver is not ready yet, waiting for 1 second..."
|
||||
sleep 1
|
||||
SERVER_ALIVE=$(curl -s --output /dev/null -u "$AUTH" -XGET --write-out "%{http_code}" http://localhost:8080/geoserver/rest/about/status)
|
||||
done
|
||||
|
||||
VULHUB_EXISTS=$(curl -s --output /dev/null -u "$AUTH" -XGET --write-out "%{http_code}" http://localhost:8080/geoserver/rest/workspaces/vulhub)
|
||||
if [ "${VULHUB_EXISTS}" -eq 200 ]; then
|
||||
echo "vulhub wordspace already exists"
|
||||
else
|
||||
# refer to <https://github.com/geoserver/geoserver-history/blob/master/doc/en/user/source/restconfig/rest-config-examples/rest-config-examples-curl.rst>
|
||||
curl -XPOST -u "$AUTH" -H "Content-type: application/json" -d '{"workspace":{"name":"vulhub"}}' http://localhost:8080/geoserver/rest/workspaces
|
||||
curl -u "$AUTH" -XPOST -H 'Content-Type: application/json' \
|
||||
-d '{"dataStore":{"name":"pg","connectionParameters":{"host":"postgres","port":5432,"database":"geoserver","user":"postgres","passwd":"vulhub","dbtype":"postgis","createDatabase":true}}}' \
|
||||
http://localhost:8080/geoserver/rest/workspaces/vulhub/datastores
|
||||
curl -u "$AUTH" -XPOST -H 'Content-Type: application/json' -d '{"featureType":{"name":"example","attributes":{"attribute":[{"name":"name","binding":"java.lang.String"}]}}}' http://localhost:8080/geoserver/rest/workspaces/vulhub/datastores/pg/featuretypes
|
||||
echo "target geoserver is initialized successfully"
|
||||
fi
|
||||
|
||||
wait $GEOSERVER_PID
|
Reference in New Issue
Block a user