Deprecated: The behavior of unparenthesized expressions containing both '.' and '+'/'-' will change in PHP 8: '+'/'-' will take a higher precedence in /home/iano/public_html/tpforums-vb5/forum/includes/class_core.php on line 5842

PHP Warning: Use of undefined constant MYSQL_NUM - assumed 'MYSQL_NUM' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_ASSOC - assumed 'MYSQL_ASSOC' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_BOTH - assumed 'MYSQL_BOTH' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 588

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 612

PHP Warning: Use of undefined constant misc - assumed 'misc' (this will throw an Error in a future version of PHP) in ..../global.php(29) : eval()'d code(6) : eval()'d code on line 1

PHP Warning: Use of undefined constant index - assumed 'index' (this will throw an Error in a future version of PHP) in ..../global.php(29) : eval()'d code(6) : eval()'d code on line 1

PHP Warning: Use of undefined constant misc - assumed 'misc' (this will throw an Error in a future version of PHP) in ..../includes/class_bootstrap.php(1422) : eval()'d code(4) : eval()'d code on line 1

PHP Warning: Use of undefined constant index - assumed 'index' (this will throw an Error in a future version of PHP) in ..../includes/class_bootstrap.php(1422) : eval()'d code(4) : eval()'d code on line 1

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 85

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 85
Automatic Bot-Detection Tool Discussion
Page 1 of 5 123 ... LastLast
Results 1 to 10 of 46

Thread: Automatic Bot-Detection Tool Discussion

  1. #1
    Administrator
    Join Date
    Mar 2007
    Posts
    1,723

    Automatic Bot-Detection Tool Discussion

    I've seen a lot of discussing/arguing around the forums lately on how CipSoft's automatic bot-detection tool works, and instead of flooding other's threads with off-topic posts I've made an official thread to allow just that. I'll post my thoughts on the subject and finish with some FAQs.

    For one, there is no evidence in the client of client-sided bot-detection. The closest thing they've done in this direction is the recent addition of count data to the Attack and Follow packets, which was quickly, and easily, trumped by DarkstaR. If anyone has any evidence of client-side detection we would all be more than happy to see it, but I know it doesn't exist. So, that can only leave one thing; the automatic bot-detection is server-sided. A simple Google search for MMORPG bot-detection will show you plenty of sources explaining server-sided bot-detection methods used for well-known MMORPGs (WoW, Ragnarok Online, etc.). The methods explained are basically the same across the board. Packet Response (Time it takes the user to respond to an incoming packet from the server.) [These include, but are not limited to, healing, looting (TTB looting a backpack in less than 1 second), and much more. Basically anything that is done faster than humanly possible.], Packet Repetitiveness (Sending the same packets at the same interval.) [The biggest culprit that comes to mind is rune making.], and Impossible(?) Packets (Sending packets to the server that could not be done manually.) [LordOfWar brought this to my attention with TibiaBot NG's Player/Creature Information feature. This feature works by sending a Look packet for every player and creature in the battlelist. Even if they're off-screen or above/below the user's current level.]

    I'm sure there are more packet-detection methods used, but these are the major ones I wanted to hit on. I'd like to take a moment to talk about probably the biggest bot-detection method CipSoft could be using, in my opinion, and that would be walking systems in cave bots. Most bots today use a system of waypoints that the user continuously loops through. The problem with this is that they write to their player's GoTo XYZ values and the client in turns creates an Auto Walk packet that is sent every time the user tries to go to the waypoint. For example, your first waypoint is 12345, 54321, 6. The bot writes to the addresses and the player starts moving. However, the player gets stopped on the way to attack a creature. After finishing the kill the bot writes the same values to the addresses and the bot goes again. Again, the player is stopped to attack a creature. And repeat. If you don't understand what I'm getting at here then you should re-read it. The player attempts to go to the same location over-and-over-and-over-and-over... And in my opinion, this is the number one way that CipSoft detects botters.

    Now, a lot of people are starting to get in to bots based solely on key strokes and mouse clicks, which is fine. The main advantage these bots have over others is that they don't have to worry about packet changes, just memory changes. DarkstaR and myself have done some extensive research in the Tibia client's GUI structure. I can personally do anything with any part of the cilent with just mouse clicks, and key strokes, that anyone can do manually. I can look at/use/move items, interact with other players/creatures/NPCs, anything. I can do all this even if the client is hidden, minimized, anything. But using mouse clicks and key strokes isn't enough to bypass CipSoft's bot-detection. Bots that send packets are just as safe as bots that use key strokes and mouse clicks, it all depends on how the bot acts compared to a human. DarkstaR's TUGBot is used by hundreds, possibly thousands, of users and there have a been 3-4(?) unconfirmed banishments. Either it was more of an accusation or the user was using another bot in conjunction with his. Oh, and his bot doesn't use key strokes or mouse clicks, just packets..

    FAQs
    Q: MC is detectable. It's the only thing my friend ever used and he got banned.
    A: Not really a question, but ok. There is no hard-evidence with the use of MCs that can allow CipSoft to ban you for it. Plenty of players play on a LAN connection, and a lot of the users on these LAN connections use the same type of computer.

    Q: What about the extra bytes at the end of the packets? These could easily be encrypted with information letting the server know the player is using a bot.
    A: True, they could be, but, if I'm not mistaken (correct me if I'm wrong), the client just fills these 'junk bytes' with zeros. Hence, no information could be concluded from them. The use of the 'junk bytes' is the make the packet divisible by 8 for the XTea encryption/decryption routines.

    I'll add more Q&As as they are addressed in the thread.

    Thanks for taking the time to read this. Feel free to use this thread as a means to discuss CipSoft's bot-detection system. Everyone is free to express their own opinions here, but without proof (which no one really has) it's just an opinion.

  2. #2

    RE: Automatic Bot-Detection Tool Discussion

    Let's say I got a really fast HealBot. Could the server notice that I, several times, sends a heal-packet directly after a damage-packet is recieved? If then, that could be a problem and probably a way of detecting botters.

    About this MC thing you talked about. Tibia could very easily detect if more than one TibiaClient is running at the same computer by using the Mutex function.

  3. #3
    Super Moderator
    Join Date
    May 2007
    Posts
    1,191

    RE: Automatic Bot-Detection Tool Discussion

    Quote Originally Posted by TibiaWarTools
    About this MC thing you talked about. Tibia could very easily detect if more than one TibiaClient is running at the same computer by using the Mutex function.
    It is also very easy to counteract that, a better way (although still crackable) for CipSoft would be to send a hardware ID to the server and deny connection if that hardware ID is already connected

    edit: Tibia already uses a mutex to detect if several tibia clients are running
    edit2: Great thread Jo3, much appreciated

  4. #4

    RE: Automatic Bot-Detection Tool Discussion

    Quote Originally Posted by Blaster_89
    Tibia already uses a mutex to detect if several tibia clients are running
    [/quote]

    Yes it does, when the TibiaClient loads. But you dont know if the running TibiaClient checks for new Mutexes once in a while, and if detected, sending a "detected packet" the the server.

  5. #5
    Super Moderator
    Join Date
    May 2007
    Posts
    1,191

    RE: Automatic Bot-Detection Tool Discussion

    What if you're online and watching a recording then?

  6. #6
    Administrator
    Join Date
    Mar 2007
    Posts
    1,723

    RE: Automatic Bot-Detection Tool Discussion

    Quote Originally Posted by TibiaWarTools
    Quote Originally Posted by Blaster_89
    Tibia already uses a mutex to detect if several tibia clients are running
    Yes it does, when the TibiaClient loads. But you dont know if the running TibiaClient checks for new Mutexes once in a while, and if detected, sending a "detected packet" the the server.
    It doesn't, and even if it did we know all the packets that are sent between the client and server.

  7. #7
    Junior Member
    Join Date
    Apr 2010
    Posts
    1

    RE: Automatic Bot-Detection Tool Discussion

    Great Thread!
    I even got excited and want to make my own safe bot ~a bit of sarcasm but not entirely false~

  8. #8

    RE: Automatic Bot-Detection Tool Discussion

    Quote Originally Posted by TibiaWarTools
    Let's say I got a really fast HealBot. Could the server notice that I, several times, sends a heal-packet directly after a damage-packet is recieved? If then, that could be a problem and probably a way of detecting botters.

    About this MC thing you talked about. Tibia could very easily detect if more than one TibiaClient is running at the same computer by using the Mutex function.
    Just checked with Olly. The only Mutex is the one we NOP for MC, so this is not the case.


    @Thread
    Bad packets.

  9. #9
    Senior Member
    Join Date
    Aug 2010
    Posts
    532

    RE: Automatic Bot-Detection Tool Discussion

    I belive on bad packets, but the 'Map Click' always on the same SQM should be a way to detect it.

    As I said on shoutbox, ANYBODY can hunt like 15 hours click ALWAYS on the same SQM to walk:

    12345, 54321, 7
    54321, 12345, 7

    This 'infinite' lool will be analyzed by Cipsoft, then they will check how many times you made that action.

    My friend hunted with Elfbot from level 120 and he is 310 nowadays and he wasn't banned, he hunted with Distance Target, so he wasn't walking always on the same SQM for Cipsoft, he could 'click' on X SQM all the time, but the Server received a lot of packets when he was running from the monsters and I guess that it makes hard to them detect.

    It's all theories, but I guess that's the best idea =P

  10. #10
    Super Moderator klusbert's Avatar
    Join Date
    Dec 2007
    Posts
    1,201

    RE: Automatic Bot-Detection Tool Discussion

    I was installing zone alarm to block som services and I started tibia and blackd. And first zonealarm said, tibia is trying to connect to 127.0.01 and I pressed allow.(to connect to blackd)

    After a half hour botting This came up:

    Weirdo:

    So why is tiba trying to connect to this ip 77.237.239.41?

    That ip goes to germany.

    Edit: after continuing botting tibia was trying to connect to 239.192.152.143

    I pressed block and tibia crashed


    Edit 2: When I dont allow 77.237.239.41 the client crashes.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •