如何解决Jetty 重定向时显示的 IP 地址
我有一个使用 Jetty 的 PlantUML 服务器。我们的 sec 扫描器发现,当重定向发生时,“位置”中存在一个内部 IP 地址,我可以复制它(我在 docker 容器中运行它)
curl -I --http1.1 127.0.0.1:8080
HTTP/1.1 302 Found
Location: http://127.0.0.1:8080/uml/SyfFKj2rKt3CoKnELR1Io4ZDoSa70000
Content-Length: 0
Server: Jetty(9.4.35.v20201120)
在 jetty.xml 中,我添加了 org.eclipse.jetty.server.HostHeaderCustomizer
,这是一些 jetty 用户建议的(https://wiki.cryptshare.com/display/CKB/The+internal+IP+address+is+revealed+in+HTTP1.0):
<New class="org.eclipse.jetty.server.HostHeaderCustomizer" id="hostHeaderCustomizer">
<Arg>server</Arg>
</New>
<New id="httpConfig" class="org.eclipse.jetty.server.HttpConfiguration">
<Set name="secureScheme"><Property name="jetty.httpConfig.secureScheme" default="https" /></Set>
<Set name="securePort"><Property name="jetty.httpConfig.securePort" deprecated="jetty.secure.port" default="8443" /></Set>
<Set name="outputBufferSize"><Property name="jetty.httpConfig.outputBufferSize" deprecated="jetty.output.buffer.size" default="32768" /></Set>
<Set name="outputAggregationSize"><Property name="jetty.httpConfig.outputAggregationSize" deprecated="jetty.output.aggregation.size" default="8192" /></Set>
<Set name="requestHeaderSize"><Property name="jetty.httpConfig.requestHeaderSize" deprecated="jetty.request.header.size" default="8192" /></Set>
<Set name="responseHeaderSize"><Property name="jetty.httpConfig.responseHeaderSize" deprecated="jetty.response.header.size" default="8192" /></Set>
<Set name="sendServerVersion"><Property name="jetty.httpConfig.sendServerVersion" deprecated="jetty.send.server.version" default="true" /></Set>
<Set name="sendDateHeader"><Property name="jetty.httpConfig.sendDateHeader" deprecated="jetty.send.date.header" default="false" /></Set>
<Set name="headerCacheSize"><Property name="jetty.httpConfig.headerCacheSize" default="1024" /></Set>
<Set name="delaydispatchUntilContent"><Property name="jetty.httpConfig.delaydispatchUntilContent" deprecated="jetty.delaydispatchUntilContent" default="true"/></Set>
<Set name="maxErrordispatches"><Property name="jetty.httpConfig.maxErrordispatches" default="10"/></Set>
<Set name="blockingTimeout"><Property deprecated="jetty.httpConfig.blockingTimeout" name="jetty.httpConfig.blockingTimeout.DEPRECATED" default="-1"/></Set>
<Set name="persistentConnectionsEnabled"><Property name="jetty.httpConfig.persistentConnectionsEnabled" default="true"/></Set>
<Set name="requestCookieCompliance"><Call class="org.eclipse.jetty.http.CookieCompliance" name="valueOf"><Arg><Property name="jetty.httpConfig.requestCookieCompliance" deprecated="jetty.httpConfig.cookieCompliance" default="RFC6265"/></Arg></Call></Set>
<Set name="responseCookieCompliance"><Call class="org.eclipse.jetty.http.CookieCompliance" name="valueOf"><Arg><Property name="jetty.httpConfig.responseCookieCompliance" default="RFC6265"/></Arg></Call></Set>
<Set name="multiPartFormDataCompliance"><Call class="org.eclipse.jetty.server.MultiPartFormDataCompliance" name="valueOf"><Arg><Property name="jetty.httpConfig.multiPartFormDataCompliance" default="RFC7578"/></Arg></Call></Set>
<Set name="relativeRedirectAllowed"><Property name="jetty.httpConfig.relativeRedirectAllowed" default="false"/></Set>
<Call name="addCustomizer">
<Arg>
<Ref refid="hostHeaderCustomizer" />
</Arg>
</Call>
</New>
但仍然看到 curl 的相同结果。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。