</option>
<!-- /security.blacklist.stopforumspam -->
<!-- security.blacklist.custom -->
- <option name="blacklist_ip_addresses">
- <categoryname>security.blacklist.custom</categoryname>
- <optiontype>textarea</optiontype>
- </option>
<option name="blacklist_user_agents">
<categoryname>security.blacklist.custom</categoryname>
<optiontype>textarea</optiontype>
</import>
<delete>
<option name="module_master_password"/>
+ <option name="blacklist_ip_addresses"/>
</delete>
</data>
\define('USER_AUTHENTICATION_FAILURE_USER_CAPTCHA', 3);
\define('USER_AUTHENTICATION_FAILURE_EXPIRATION', 30);
\define('SIGNATURE_SECRET', '');
-\define('BLACKLIST_IP_ADDRESSES', '');
\define('BLACKLIST_USER_AGENTS', '');
\define('CAPTCHA_TYPE', 'com.woltlab.wcf.recaptcha');
\define('REGISTER_USE_CAPTCHA', 1);
// The master password has been removed since 5.5.
// https://github.com/WoltLab/WCF/issues/3913
\define('MODULE_MASTER_PASSWORD', 0);
+
+ // The IP address blocklist was removed in 5.5.
+ // https://github.com/WoltLab/WCF/issues/3914
+ \define('BLACKLIST_IP_ADDRESSES', '');
}
/**
{
$isAjax = isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest');
- if (\defined('BLACKLIST_IP_ADDRESSES') && BLACKLIST_IP_ADDRESSES != '') {
- if (
- !StringUtil::executeWordFilter(
- UserUtil::convertIPv6To4(UserUtil::getIpAddress()),
- BLACKLIST_IP_ADDRESSES
- )
- ) {
- if ($isAjax) {
- throw new AJAXException(
- self::getLanguage()->getDynamicVariable('wcf.ajax.error.permissionDenied'),
- AJAXException::INSUFFICIENT_PERMISSIONS
- );
- } else {
- throw new PermissionDeniedException();
- }
- } elseif (!StringUtil::executeWordFilter(UserUtil::getIpAddress(), BLACKLIST_IP_ADDRESSES)) {
- if ($isAjax) {
- throw new AJAXException(
- self::getLanguage()->getDynamicVariable('wcf.ajax.error.permissionDenied'),
- AJAXException::INSUFFICIENT_PERMISSIONS
- );
- } else {
- throw new PermissionDeniedException();
- }
- }
- }
if (\defined('BLACKLIST_USER_AGENTS') && BLACKLIST_USER_AGENTS != '') {
if (!StringUtil::executeWordFilter(UserUtil::getUserAgent(), BLACKLIST_USER_AGENTS)) {
if ($isAjax) {
\define('HTTP_SEND_X_FRAME_OPTIONS', 0);
-\define('BLACKLIST_IP_ADDRESSES', '');
\define('BLACKLIST_USER_AGENTS', '');
\define('CACHE_SOURCE_TYPE', 'disk');
<item name="wcf.acp.notice.showOrder.description"><![CDATA[Legt die Reihenfolge fest, in der die Hinweise angezeigt werden.]]></item>
</category>
<category name="wcf.acp.option">
- <item name="wcf.acp.option.blacklist_ip_addresses"><![CDATA[IP-Adresse ausschließen (Obsolet)]]></item>
- <item name="wcf.acp.option.blacklist_ip_addresses.description"><![CDATA[Der Ausschluss einzelner IP-Adressen erfolgt zuverlässiger und leistungsfähiger auf Ebene des Webservers. Diese Option ist obsolet und wird mit einer zukünftigen Version entfernt.]]></item>
<item name="wcf.acp.option.blacklist_user_agents"><![CDATA[Browser-Kennung ausschließen (Obsolet)]]></item>
<item name="wcf.acp.option.blacklist_user_agents.description"><![CDATA[Browser-Kennungen können durch Angreifer leicht gefälscht werden und sind kein zuverlässiger Indikator für die Identität des Anfragestellers. Falls ein Ausschluss dennoch gewünscht ist, erfolgt ein Ausschluss von Browser-Kenunngen leistungsfähiger auf Ebene des Webservers. Diese Option ist obsolet und wird mit einer zukünftigen Version entfernt.]]></item>
<item name="wcf.acp.option.cache_source_memcached_host"><![CDATA[Memcached-Server]]></item>
<item name="wcf.acp.masterPassword.enter.deprecated"/>
<item name="wcf.acp.option.module_master_password"/>
<item name="wcf.acp.option.module_master_password.description"/>
+ <item name="wcf.acp.option.blacklist_ip_addresses"/>
+ <item name="wcf.acp.option.blacklist_ip_addresses.description"/>
</delete>
</language>
<item name="wcf.acp.notice.showOrder.description"><![CDATA[Choose display order of notices.]]></item>
</category>
<category name="wcf.acp.option">
- <item name="wcf.acp.option.blacklist_ip_addresses"><![CDATA[Block by IP Address (Not Recommended)]]></item>
- <item name="wcf.acp.option.blacklist_ip_addresses.description"><![CDATA[Blocking IP Addresses is more reliably and performant achieved at the web server level. Use of this blocklist is not recommended and this option will be removed in a future version.]]></item>
<item name="wcf.acp.option.blacklist_user_agents"><![CDATA[Block by User-Agent (Not Recommended)]]></item>
<item name="wcf.acp.option.blacklist_user_agents.description"><![CDATA[User-Agents are easily faked by an attacker and not a reliable indicator of the client’s identity. If a block based on the User-Agent is desired nonetheless, it is achieve more performant at the web server level. Use of this blocklist is not recommended and this option will be removed in a future version.]]></item>
<item name="wcf.acp.option.cache_source_memcached_host"><![CDATA[Memcached-Server]]></item>
<item name="wcf.acp.masterPassword.enter.deprecated"/>
<item name="wcf.acp.option.module_master_password"/>
<item name="wcf.acp.option.module_master_password.description"/>
+ <item name="wcf.acp.option.blacklist_ip_addresses"/>
+ <item name="wcf.acp.option.blacklist_ip_addresses.description"/>
</delete>
</language>