Skip to content

kaliiiiiiiiii/brotector

Repository files navigation

Brotector

An advanced antibot for webdriver such as

For the tests, each driver

  • has to perform at least one mouse event (such as click, mousemove, ...)
  • is running headfull
  • running on Google-Chrome if possible

detections

drawing

navigator.webdriver

navigator.webdriver (JavaScript) is set to true


runtime.enabled

Runtime is enabled
score here refers to the certainty of the occurs when:

  • Runtime.enable or Console.enable (CDP) has been called (most libraries do that, type=webdriver)
  • the user opens the devtools (type=devtools)

Input.cordinatesLeak

occurs due to crbug#1477537
CDP-Patches can be used to bypass this


window.cdc

a leak specific to chromedriver (selenium)
see stackoverflow-answer


"Input.untrusted"

Mouse event not dispatched by a user detected see Event.isTrusted property


canvasMouseVisualizer

CanvasRenderingContext2D.arc has been called with

  • cordinates +-5px at current mouse position
  • canvas +-1px covers the whole page
  • canvas passes pointerEvents through

Headless

Contribution

feel free to

  • open [feature request]s for driver detections
  • open PRs
  • use the discussions

Licence

see LICENSE

Author & Copyright

Aurin Aegerter (aka Steve, kaliiiiiiiiii)

Thanks // References