BrowserAutomationStudio 22.9.0 has been released



  • Authenticity of the browser has been significantly improved, new fingerprint factors have been added.

    Information in this topic has been intentionally shortened, some changes are mentioned very briefly, without technical details.

    Ip information.

    Initially, it was planned to create a service for this purpose, but it was not possible to find an perfect database, because the results for different databases often differ, it is not always clear which of them are correct.

    Therefore, the following changes were made:

    1. Database supplied with the software has been updated. Its format is now different, but the format of the results remains the same. Database will be updated with every release.
    2. Added integration with the ip-api.com service. This service showed the best results during testing. You can use both the paid and free version. BAS is trying to follow the limits for the request rate to service.
    3. If neither the first nor the second method is suitable, there is an opportunity to create your own function that receives information about ip. BAS will call it every time a proxy is used. This function can use both the http client and the browser.

    Time zone changing.

    • Added localization of the time zone name according to the browser language.

    • Ability to set additional parameters when changing geolocation with "Set geolocation" action.

    • Changing of geolocation rewritten in C++.

    • The number of parameters in the "Time zone" module has been increased. Using this module you can manually change all the time parameters that FingerprintSwitcher changes.

    • Proxy action updates browser language even if called with an empty string. It is recommended to use it even if you are working without a proxy. An error is generated if it is impossible to get a real ip.

    Screen settings.

    • Added new fingerprint factor: css fingerprint.

    • Improved browser resolution replacement.

    Webgl.

    FingerprintSwitcher changes many additional webgl 1.0 and webgl 2.0 properties and functionality of some methods.

    Keyboard layout.

    New fingerprint factor - keyboard layout.

    Fonts.

    Number of supported fonts has been significantly increased, now there are more than 4 thousand of them. In order to achieve this, we had to improve the mechanism for obtaining a list of fonts.

    New fingerprint factor - MediaDevices.

    Media device ids are generated each time a new profile is created, so this factor could not lead to detection. However, in the new version, all available device information and some additional properties are changed using FingerprintSwitcher.

    This means that now, in order to change the device id, you need to change fingerprint, switching profile is not enough.

    New fingerprint factor - performance fingerprint.

    By measuring the execution speed of some javascript methods, site can compose an unique device identifier:

    https://www.youtube.com/watch?v=5sZT9FTx3aQ
    https://cseweb.ucsd.edu/~kmowery/papers/js-fingerprinting.pdf

    In order to address this issue, a new "Performance fingerprint" action has been added. It makes site think that the benchmark is running faster or slower than it actually is. At the same time, measurements that are carried out for other purposes should not be changed. The new functionality tries to avoid inconsistencies associated with time deformation, but the technology is experimental and may cause bugs. Example: a chat with a huge amount of messages will have a time difference on the server and client.

    Further information can be obtained from the documentation to the action.

    Permission API.

    This API produces results like in a real Chrome browser. Receiving permissions for notifications and geolocation is consistent with the user-selected settings.

    Browser side fingerprint replacement.

    Starting with the new version, the replacement of all properties occurs in the C ++ code, the javascript code is injected only when it is absolutely necessary, for example, to emulate the firefox method which is not in present in chrome.

    There is only 1 property left, which changes through js, but it is not always used, I hope it will be translated to C++ eventually.

    Replacements for Notification, navigator.connection, screen.orientation and many other properties have been rewritten.

    All data except for the Permission API is obtained from real devices. The fingerprint database has not yet been fully updated, therefore it is recommended to use the filter by the minimum date of fingerprint set at 15 days.

    Researching new methods.

    аd scоre cоm anti-bot protection has been studied, the corresponding patches were made to the browser.

    New module Archive.

    A new module has been added to work with zip, 7z and rar(unpacking only) archives. It was made by @GhostZ. This module is written in node.js, you must first enable it through the module manager.


Log in to reply