[DBTech] DragonByte Security

[DBTech] DragonByte Security [Paid] 4.7.0

No permission to buy ($14.95)
@DragonByte Tech What version of Bad Behavior you are using? Bad Behavior 2.2.22 has been released. This is a maintenance release and is recommended for all users.

See here: https://bad-behavior.ioerror.us/
I don't know, but at this time I'm not looking to update it seeing as it works as-is. Last I heard they are working on v3 which will be installable via composer, so it'll be easier to keep it up to date.
 
Please can add option temporarily IP banned for 15 min or Admin CP option based?

Also where the Email Recovery option rules?

Bug on Security watchers, IP ban are not working when Failed Logins or any other. Watcher log > No entries have been logged.
 
Last edited:
DragonByte Tech updated [DBTech] DragonByte Security with a new update entry:

4.1.0 Beta 3

Update highlights

This update improves the "Account Lock" and "Password Change" features by allowing you to set redirect whitelists, just like XF2's "Terms of Service whitelist".

Lastly, it fixes a race condition where it was possible for a user to get stuck in a redirect loop if they were forced to accept the ToS / Privacy Policy and change their password at the same time.

To see the full details on the v4.1.0 release, click here...

Read the rest of this update entry...
 
DragonByte Tech updated [DBTech] DragonByte Security with a new update entry:

XenForo 2.1 Support

Because of a backwards breaking change in XenForo 2.1, and because I plan to take advantage of new features only available in XenForo 2.1, the next version will require XenForo 2.1.

The update will update the "Likes" integration to support "Reactions", and will introduce support for the new "Bookmarking" feature.

The current version will NOT work with XenForo 2.1. A blocking issue has been identified with XenForo 2.1:
  • Certain Cron jobs will not work due to a change in the...

Read the rest of this update entry...
 
DragonByte Tech updated [DBTech] DragonByte Security with a new update entry:

4.1.0 Gold

Update highlights

After a lengthy Beta period, this product has gone Gold 🎉

This version contains no changes from the previous version. Future updates will require XenForo 2.1.

This version does not work on XenForo 2.1. Please do not upgrade to XenForo 2.1 until a 2.1 compatible version has been released.

To see the full details on the v4.1.0 release, click here: https://www.dragonbyte-tech.com/store/dragonbyte-security.345/release/1751/...

Read the rest of this update entry...
 
DragonByte Tech updated [DBTech] DragonByte Security with a new update entry:

4.2.0

Update highlights

This release features back-end only changes, making required changes to support XenForo 2.1.

In addition, an issue with a template modification being incorrectly applied in the Admin panel, causing a server error during an upgrade of this product, has been fixed. It is safe to ignore that error, this upgrade is the last time it'll appear (hopefully!) :)


Complete Change Log

Change: Updated various HTTP requests to match the changes...

Read the rest of this update entry...
 
@DragonByte Tech Getting Server error log.

Code:
XF\Db\DuplicateKeyException: MySQL query error [1062]: Duplicate entry 'e62e8042ba12ced2b766a9408c1533a4-805' for key 'fingerprint_user_id' src/XF/Db/AbstractStatement.php:217

Generated by: habijabi.ajgubi May 1, 2019 at 3:14 AM

Stack trace

INSERT  INTO `xf_dbtech_security_fingerprint_log` (`user_id`, `fingerprint`, `ipaddress`, `components`, `fingerprint_log_id`, `dateline`) VALUES (?, ?, ?, ?, ?, ?)
------------

#0 src/XF/Db/Mysqli/Statement.php(196): XF\Db\AbstractStatement->getException('MySQL query err...', 1062, '23000')
#1 src/XF/Db/Mysqli/Statement.php(77): XF\Db\Mysqli\Statement->getException('MySQL query err...', 1062, '23000')
#2 src/XF/Db/AbstractAdapter.php(94): XF\Db\Mysqli\Statement->execute()
#3 src/XF/Db/AbstractAdapter.php(218): XF\Db\AbstractAdapter->query('INSERT  INTO `x...', Array)
#4 src/XF/Mvc/Entity/Entity.php(1452): XF\Db\AbstractAdapter->insert('xf_dbtech_secur...', Array, false)
#5 src/XF/Mvc/Entity/Entity.php(1184): XF\Mvc\Entity\Entity->_saveToSource()
#6 src/addons/DBTech/Security/Watcher/NewFingerprint.php(70): XF\Mvc\Entity\Entity->save()
#7 src/addons/DBTech/Security/Watcher/AbstractHandler.php(172): DBTech\Security\Watcher\NewFingerprint->preCheck(Array, Object(Datio\AllowedEmails\XF\Entity\User))
#8 src/addons/DBTech/Security/Pub/Controller/Fingerprint.php(37): DBTech\Security\Watcher\AbstractHandler->trigger(Array, Object(Datio\AllowedEmails\XF\Entity\User))
#9 src/XF/Mvc/Dispatcher.php(321): DBTech\Security\Pub\Controller\Fingerprint->actionIndex(Object(XF\Mvc\ParameterBag))
#10 src/XF/Mvc/Dispatcher.php(244): XF\Mvc\Dispatcher->dispatchClass('DBTech\\Security...', 'Index', Object(XF\Mvc\RouteMatch), Object(DBTech\Security\Pub\Controller\Fingerprint), NULL)
#11 src/XF/Mvc/Dispatcher.php(100): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(DBTech\Security\Pub\Controller\Fingerprint), NULL)
#12 src/XF/Mvc/Dispatcher.php(50): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#13 src/XF/App.php(2177): XF\Mvc\Dispatcher->run()
#14 src/XF.php(390): XF\App->run()
#15 index.php(20): XF::runApp('XF\\Pub\\App')
#16 {main}

Request state

array(4) {
  ["url"] => string(38) "/index.php?dbtech-security/fingerprint"
  ["referrer"] => string(36) "/search/42622/"
  ["_GET"] => array(1) {
    ["dbtech-security/fingerprint"] => string(0) ""
  }
  ["_POST"] => array(6) {
    ["fingerprint"] => string(32) "e62e8042ba12ced2b766a9408c1533a4"
    ["components"] => array(23) {
      [0] => array(2) {
        ["key"] => string(10) "user_agent"
        ["value"] => string(131) "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 OPR/58.0.3135.132"
      }
      [1] => array(2) {
        ["key"] => string(8) "language"
        ["value"] => string(5) "en-US"
      }
      [2] => array(2) {
        ["key"] => string(11) "color_depth"
        ["value"] => string(2) "24"
      }
      [3] => array(2) {
        ["key"] => string(13) "device_memory"
        ["value"] => string(1) "8"
      }
      [4] => array(2) {
        ["key"] => string(20) "hardware_concurrency"
        ["value"] => string(1) "4"
      }
      [5] => array(2) {
        ["key"] => string(10) "resolution"
        ["value"] => array(2) {
          [0] => string(4) "1280"
          [1] => string(3) "800"
        }
      }
      [6] => array(2) {
        ["key"] => string(20) "available_resolution"
        ["value"] => array(2) {
          [0] => string(4) "1280"
          [1] => string(3) "763"
        }
      }
      [7] => array(2) {
        ["key"] => string(15) "timezone_offset"
        ["value"] => string(4) "-360"
      }
      [8] => array(2) {
        ["key"] => string(15) "session_storage"
        ["value"] => string(1) "1"
      }
      [9] => array(2) {
        ["key"] => string(13) "local_storage"
        ["value"] => string(1) "1"
      }
      [10] => array(2) {
        ["key"] => string(10) "indexed_db"
        ["value"] => string(1) "1"
      }
      [11] => array(2) {
        ["key"] => string(13) "open_database"
        ["value"] => string(1) "1"
      }
      [12] => array(2) {
        ["key"] => string(9) "cpu_class"
        ["value"] => string(7) "unknown"
      }
      [13] => array(2) {
        ["key"] => string(18) "navigator_platform"
        ["value"] => string(5) "Win32"
      }
      [14] => array(2) {
        ["key"] => string(15) "regular_plugins"
        ["value"] => array(3) {
          [0] => string(82) "Chromium PDF Plugin::Portable Document Format::application/x-google-chrome-pdf~pdf"
          [1] => string(42) "Chromium PDF Viewer::::application/pdf~pdf"
          [2] => string(66) "News feed handler::::application/atom+xml~,application/rss+xml~rss"
        }
      }
      [15] => array(2) {
        ["key"] => string(6) "canvas"
        ["value"] => string(33971) "canvas winding:yes~canvas "
      }
      [16] => array(2) {
        ["key"] => string(12) "webgl_vendor"
        ["value"] => string(76) "Google Inc.~ANGLE (Intel(R) Iris(TM) Graphics 5100 Direct3D11 vs_5_0 ps_5_0)"
      }
      [17] => array(2) {
        ["key"] => string(7) "adblock"
        ["value"] => string(5) "false"
      }
      [18] => array(2) {
        ["key"] => string(18) "has_lied_languages"
        ["value"] => string(5) "false"
      }
      [19] => array(2) {
        ["key"] => string(19) "has_lied_resolution"
        ["value"] => string(5) "false"
      }
      [20] => array(2) {
        ["key"] => string(11) "has_lied_os"
        ["value"] => string(5) "false"
      }
      [21] => array(2) {
        ["key"] => string(16) "has_lied_browser"
        ["value"] => string(5) "false"
      }
      [22] => array(2) {
        ["key"] => string(13) "touch_support"
        ["value"] => array(3) {
          [0] => string(1) "0"
          [1] => string(5) "false"
          [2] => string(5) "false"
        }
      }
    }
    ["_xfRequestUri"] => string(14) "/search/42622/"
    ["_xfWithData"] => string(1) "1"
    ["_xfToken"] => string(8) "********"
    ["_xfResponseType"] => string(4) "json"
  }
}
 
DragonByte Tech updated [DBTech] DragonByte Security with a new update entry:

4.2.2

Update highlights

This update changes the way the "Country Blocks" feature works internally.

Prior to this update, IP addresses were updated and saved to the ban log when you made changes to the "Country Blocks" page without any kind of background processing. This meant that if you were trying to block either a large number of countries, or a country with a large IP block such as China or the United States, the page could time out.

In this update, the IP addresses are...

Read the rest of this update entry...
 
@DragonByte Tech Getting Server error log.

Code:
XF\Db\DuplicateKeyException: MySQL query error [1062]: Duplicate entry 'e62e8042ba12ced2b766a9408c1533a4-805' for key 'fingerprint_user_id' src/XF/Db/AbstractStatement.php:217

Generated by: habijabi.ajgubi May 1, 2019 at 3:14 AM

Stack trace

INSERT  INTO `xf_dbtech_security_fingerprint_log` (`user_id`, `fingerprint`, `ipaddress`, `components`, `fingerprint_log_id`, `dateline`) VALUES (?, ?, ?, ?, ?, ?)
------------

#0 src/XF/Db/Mysqli/Statement.php(196): XF\Db\AbstractStatement->getException('MySQL query err...', 1062, '23000')
#1 src/XF/Db/Mysqli/Statement.php(77): XF\Db\Mysqli\Statement->getException('MySQL query err...', 1062, '23000')
#2 src/XF/Db/AbstractAdapter.php(94): XF\Db\Mysqli\Statement->execute()
#3 src/XF/Db/AbstractAdapter.php(218): XF\Db\AbstractAdapter->query('INSERT  INTO `x...', Array)
#4 src/XF/Mvc/Entity/Entity.php(1452): XF\Db\AbstractAdapter->insert('xf_dbtech_secur...', Array, false)
#5 src/XF/Mvc/Entity/Entity.php(1184): XF\Mvc\Entity\Entity->_saveToSource()
#6 src/addons/DBTech/Security/Watcher/NewFingerprint.php(70): XF\Mvc\Entity\Entity->save()
#7 src/addons/DBTech/Security/Watcher/AbstractHandler.php(172): DBTech\Security\Watcher\NewFingerprint->preCheck(Array, Object(Datio\AllowedEmails\XF\Entity\User))
#8 src/addons/DBTech/Security/Pub/Controller/Fingerprint.php(37): DBTech\Security\Watcher\AbstractHandler->trigger(Array, Object(Datio\AllowedEmails\XF\Entity\User))
#9 src/XF/Mvc/Dispatcher.php(321): DBTech\Security\Pub\Controller\Fingerprint->actionIndex(Object(XF\Mvc\ParameterBag))
#10 src/XF/Mvc/Dispatcher.php(244): XF\Mvc\Dispatcher->dispatchClass('DBTech\\Security...', 'Index', Object(XF\Mvc\RouteMatch), Object(DBTech\Security\Pub\Controller\Fingerprint), NULL)
#11 src/XF/Mvc/Dispatcher.php(100): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(DBTech\Security\Pub\Controller\Fingerprint), NULL)
#12 src/XF/Mvc/Dispatcher.php(50): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#13 src/XF/App.php(2177): XF\Mvc\Dispatcher->run()
#14 src/XF.php(390): XF\App->run()
#15 index.php(20): XF::runApp('XF\\Pub\\App')
#16 {main}

Request state

array(4) {
  ["url"] => string(38) "/index.php?dbtech-security/fingerprint"
  ["referrer"] => string(36) "/search/42622/"
  ["_GET"] => array(1) {
    ["dbtech-security/fingerprint"] => string(0) ""
  }
  ["_POST"] => array(6) {
    ["fingerprint"] => string(32) "e62e8042ba12ced2b766a9408c1533a4"
    ["components"] => array(23) {
      [0] => array(2) {
        ["key"] => string(10) "user_agent"
        ["value"] => string(131) "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 OPR/58.0.3135.132"
      }
      [1] => array(2) {
        ["key"] => string(8) "language"
        ["value"] => string(5) "en-US"
      }
      [2] => array(2) {
        ["key"] => string(11) "color_depth"
        ["value"] => string(2) "24"
      }
      [3] => array(2) {
        ["key"] => string(13) "device_memory"
        ["value"] => string(1) "8"
      }
      [4] => array(2) {
        ["key"] => string(20) "hardware_concurrency"
        ["value"] => string(1) "4"
      }
      [5] => array(2) {
        ["key"] => string(10) "resolution"
        ["value"] => array(2) {
          [0] => string(4) "1280"
          [1] => string(3) "800"
        }
      }
      [6] => array(2) {
        ["key"] => string(20) "available_resolution"
        ["value"] => array(2) {
          [0] => string(4) "1280"
          [1] => string(3) "763"
        }
      }
      [7] => array(2) {
        ["key"] => string(15) "timezone_offset"
        ["value"] => string(4) "-360"
      }
      [8] => array(2) {
        ["key"] => string(15) "session_storage"
        ["value"] => string(1) "1"
      }
      [9] => array(2) {
        ["key"] => string(13) "local_storage"
        ["value"] => string(1) "1"
      }
      [10] => array(2) {
        ["key"] => string(10) "indexed_db"
        ["value"] => string(1) "1"
      }
      [11] => array(2) {
        ["key"] => string(13) "open_database"
        ["value"] => string(1) "1"
      }
      [12] => array(2) {
        ["key"] => string(9) "cpu_class"
        ["value"] => string(7) "unknown"
      }
      [13] => array(2) {
        ["key"] => string(18) "navigator_platform"
        ["value"] => string(5) "Win32"
      }
      [14] => array(2) {
        ["key"] => string(15) "regular_plugins"
        ["value"] => array(3) {
          [0] => string(82) "Chromium PDF Plugin::Portable Document Format::application/x-google-chrome-pdf~pdf"
          [1] => string(42) "Chromium PDF Viewer::::application/pdf~pdf"
          [2] => string(66) "News feed handler::::application/atom+xml~,application/rss+xml~rss"
        }
      }
      [15] => array(2) {
        ["key"] => string(6) "canvas"
        ["value"] => string(33971) "canvas winding:yes~canvas "
      }
      [16] => array(2) {
        ["key"] => string(12) "webgl_vendor"
        ["value"] => string(76) "Google Inc.~ANGLE (Intel(R) Iris(TM) Graphics 5100 Direct3D11 vs_5_0 ps_5_0)"
      }
      [17] => array(2) {
        ["key"] => string(7) "adblock"
        ["value"] => string(5) "false"
      }
      [18] => array(2) {
        ["key"] => string(18) "has_lied_languages"
        ["value"] => string(5) "false"
      }
      [19] => array(2) {
        ["key"] => string(19) "has_lied_resolution"
        ["value"] => string(5) "false"
      }
      [20] => array(2) {
        ["key"] => string(11) "has_lied_os"
        ["value"] => string(5) "false"
      }
      [21] => array(2) {
        ["key"] => string(16) "has_lied_browser"
        ["value"] => string(5) "false"
      }
      [22] => array(2) {
        ["key"] => string(13) "touch_support"
        ["value"] => array(3) {
          [0] => string(1) "0"
          [1] => string(5) "false"
          [2] => string(5) "false"
        }
      }
    }
    ["_xfRequestUri"] => string(14) "/search/42622/"
    ["_xfWithData"] => string(1) "1"
    ["_xfToken"] => string(8) "********"
    ["_xfResponseType"] => string(4) "json"
  }
}

@DragonByte Tech Does this Server error log fixed? Getting more Server error log.

Code:
ErrorException: [E_NOTICE] Undefined index: Connection src/addons/DBTech/Security/3rdParty/bad-behavior/common_tests.inc.php:95

Generated by: Unknown account May 2, 2019 at 7:52 AM

Stack trace

#0 src/addons/DBTech/Security/3rdParty/bad-behavior/common_tests.inc.php(95): XF::handlePhpError(8, '[E_NOTICE] Unde...', '/home/nadda/pub...', 95, Array)
#1 src/addons/DBTech/Security/3rdParty/bad-behavior/core.inc.php(158): bb2_misc_headers(Array, Array)
#2 src/addons/DBTech/Security/3rdParty/bad-behavior/core.inc.php(122): bb2_screen(Array, Array)
#3 src/addons/DBTech/Security/Listener.php(206): bb2_start(Array)
#4 [internal function]: DBTech\Security\Listener::dispatcherPostRender(Object(XF\Mvc\Dispatcher), '', Object(XF\Mvc\Reply\Redirect), Object(XF\Mvc\Renderer\Html), Object(XF\Http\Response))
#5 src/XF/Extension.php(67): call_user_func_array(Array, Array)
#6 src/XF/App.php(2647): XF\Extension->fire('dispatcher_post...', Array, NULL)
#7 src/XF/Mvc/Dispatcher.php(367): XF\App->fire('dispatcher_post...', Array)
#8 src/XF/Mvc/Dispatcher.php(53): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\Redirect), 'html')
#9 src/XF/App.php(2177): XF\Mvc\Dispatcher->run()
#10 src/XF.php(390): XF\App->run()
#11 index.php(20): XF::runApp('XF\\Pub\\App')
#12 {main}

Request state

array(4) {
  ["url"] => string(39) "/threads/sap-learning.58586/post-692149"
  ["referrer"] => string(23) "/"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(0) {
  }
}
 
One more bug, Search IP results. Cliking /admin.php?misc/ip-info&ip= IP will be show The requested page could not be found.

201593
 
I am currently swamped so for now it's best to post bug reports over @ our site so that they don't get lost. I can't guarantee that I'll find these posts when my schedule has freed up enough to look at this.
 
DragonByte Tech updated [DBTech] DragonByte Security with a new update entry:

4.2.4

Update highlights

This version improves compatibility with core XenForo features by supporting the "HTTP Proxy" feature in XenForo. This feature is used by certain sites that may be the target of harassment / DDoS attacks, to mask the true IP of the server.

When making calls to 3rd party websites, such as MaxMind to download the latest GeoIP database, those HTTP calls would expose the true IP of the server.

For this reason, the HTTP calls in this product have been updated...

Read the rest of this update entry...
 
@DragonByte Tech Server error log after update.

Code:
InvalidArgumentException: json_decode error: Syntax error src/vendor/guzzlehttp/guzzle/src/functions.php:304

Generated by: Unknown account Jul 5, 2019 at 10:41 PM

Stack trace

#0 src/addons/DBTech/Security/Repository/Watcher.php(236): GuzzleHttp\json_decode('', true)
#1 src/addons/DBTech/Security/XF/Service/User/Login.php(50): DBTech\Security\Repository\Watcher->breachCheck(Object(Datio\AllowedEmails\XF\Entity\User))
#2 src/XF/Service/User/Login.php(124): DBTech\Security\XF\Service\User\Login->recordFailedAttempt()
#3 src/XF/Pub/Controller/Login.php(89): XF\Service\User\Login->validate('*****', NULL)
#4 src/XF/Mvc/Dispatcher.php(321): XF\Pub\Controller\Login->actionLogin(Object(XF\Mvc\ParameterBag))
#5 src/XF/Mvc/Dispatcher.php(244): XF\Mvc\Dispatcher->dispatchClass('XF:Login', 'Login', Object(XF\Mvc\RouteMatch), Object(xenMade\LAU\XF\Pub\Controller\Login), NULL)
#6 src/XF/Mvc/Dispatcher.php(100): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(xenMade\LAU\XF\Pub\Controller\Login), NULL)
#7 src/XF/Mvc/Dispatcher.php(50): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#8 src/XF/App.php(2177): XF\Mvc\Dispatcher->run()
#9 src/XF.php(390): XF\App->run()
#10 index.php(20): XF::runApp('XF\\Pub\\App')
#11 {main}

Request state

array(4) {
  ["url"] => string(12) "/login/login"
  ["referrer"] => string(29) "/login/"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(5) {
    ["login"] => string(5) "milon"
    ["password"] => string(8) "********"
    ["remember"] => string(1) "1"
    ["_xfRedirect"] => string(49) "/threads/bintub.2578/page-3"
    ["_xfToken"] => string(8) "********"
  }
}
 
Also Disabled all add-on but still happened this Server error log. Does this happened with Changed the way API calls are made, in order to support the HTTP Proxy feature in XenForo?
 
Top Bottom