botwall4j
1.0.0
このプロジェクトは、Java Webアプリケーションのボットウォールとして機能するResponseHardeningサーブレットフィルターを実装します。フィルターは、Webページ上のすべてのinput要素とform要素をランダムな値に透過的に書き換え、自動的に削るのが難しくなります。アプリケーションを変更する必要はありません。
botwall4j JARがClassPathで利用できることを確認してください。次に、 web.xmlファイルを変更して、次のようにフィルターを含めることができます。
<filter>
<filter-name>Botwall4J</filter-name>
<filter-class>org.lambdasec.botwall4j.ResponseHardening</filter-class>
</filter>
<filter-mapping>
<filter-name>Botwall4J</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
アプリケーションを適切に機能させるには、このフィルターがフィルターチェーンで最初である必要があります。 web.xmlで他のすべてのフィルターを定義することにより、それを確実にすることができます。
web.xml構成なしで使用することも可能です。たとえば、Spring Bootアプリケーションでは、 botwall4jライブラリをアプリケーションに追加し、 filterRegistrationBeanを使用してフィルターを登録できます。
@Bean
public FilterRegistrationBean responseHardeningFilterRegistrationBean() {
final FilterRegistrationBean filterRegBean = new FilterRegistrationBean();
filterRegBean.setFilter(new ResponseHardening());
filterRegBean.setEnabled(true);
filterRegBean.setOrder(Integer.MIN_VALUE);
return filterRegBean;
}
Integer.MIN_VALUEに順序を設定すると、フィルターがフィルターチェーンで最初に実行されるようになります。