Tomcat に安全でない HTTP メソッドを禁止させます
<security-constraint> <web-resource-collection> <url-pattern>/*</url-pattern> <http-method>PUT</http-method> <http-method>DELETE</http-method> <http-method>HEAD</http-method> <http-method>OPTIONS</http-method> <http-method>TRACE</http-method> </web-resource-collection> <auth-constraint> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> </login-config>
web.xml 設定ファイルはありません。次の設定で設定できます。簡単に言うと、Spring コンテナに注入されます
@Configuration public class TomcatConfig { @Bean public EmbeddedServletContainerFactory servletContainer() { TomcatEmbeddedServletContainerFactory tomcatServletContainerFactory = new TomcatEmbeddedServletContainerFactory(); tomcatServletContainerFactory.addContextCustomizers(new TomcatContextCustomizer(){ @Override public void customize(Context context) { SecurityConstraint constraint = new SecurityConstraint(); SecurityCollection collection = new SecurityCollection(); //http方法 collection.addMethod("PUT"); collection.addMethod("DELETE"); collection.addMethod("HEAD"); collection.addMethod("OPTIONS"); collection.addMethod("TRACE"); //url匹配表达式 collection.addPattern("/*"); constraint.addCollection(collection); constraint.setAuthConstraint(true); context.addConstraint(constraint ); //设置使用httpOnly context.setUseHttpOnly(true); } }); return tomcatServletContainerFactory; } }
Web ページ、スクリプト、およびファイルが Web サーバー上でアップロード、変更、または削除される可能性があります。
「安全でない HTTP メソッドが有効になっています: OPTIONS /system HTTP/1.1Allow: HEAD、PUT、DELETE、TRACE、OPTIONS、PATCH
上記のメソッドの使用:
オプション、ヘッド、トレース: 主にサーバー サポートとネットワーク動作を検出および追跡するためにアプリケーションによって使用されます;
Get: ドキュメントを取得します;
Put および Post: ドキュメントをサーバーに送信します;
Delete: リソースまたはコレクションを破棄します;
Mkcol:コレクションの作成
PropFind および PropPatch: リソースとコレクションのプロパティを取得および設定します;
コピーと移動: 名前空間コンテキストでのコレクションとコレクションの管理リソース;
ロックとロック解除: 上書き保護
上記の操作の詳細により、アップロード、変更、削除などができることは明らかです。 Web サーバーへの脅威 サービスへの脅威 WebDAV には権限制御がありますが、インターネットで検索すると依然として多くの攻撃方法が表示されるため、これらの方法が必要ない場合は、それらを直接ブロックすることをお勧めします。 #解決策:
<security-constraint> <web-resource-collection> <web-resource-name>disp</web-resource-name> <url-pattern>/*</url-pattern> <http-method>PUT</http-method> <http-method>DELETE</http-method> <http-method>HEAD</http-method> <http-method>OPTIONS</http-method> <http-method>TRACE</http-method> <http-method>PATCH</http-method> </web-resource-collection> <auth-constraint></auth-constraint> </security-constraint>
タグの導入:
##以上がSpringboot は組み込みの Tomcat をどのように使用して安全でない HTTP を禁止しますかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。