Injection - Getting started menu

User Tag List

Results 1 to 10 of 10
  1. #1
    Tanaris4's Avatar Contributor Authenticator enabled
    Reputation
    148
    Join Date
    Oct 2008
    Posts
    646
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Injection - Getting started

    So I figured out how to actually inject a binary into wow on a mac. Now the bigger question for me is how can I utilize this in my existing bot which simply does memory reads/writes.

    So to my question :-) From a design perspective, how do you go about communicating between the injected module and your bot UI? I recall using pipes during an obscure comp. sci. class but I'm not sure what the right method should be.

    Specifically if I need to know when an event is fired, or say I want to call a function (like login), etc...

    Any tips/starters?

    Thanks in advance!
    https://tanaris4.com

    Injection - Getting started
  2. #2
    GliderPro's Avatar Member
    Reputation
    -1
    Join Date
    Mar 2009
    Posts
    93
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Interprocess Communication (IPC) (PureDarwin)

    Mach ports sound interesting...

    Mach ports: Kernel-provided queues of Mach messages. Tasks can send Mach messages to and receive Mach messages from Mach ports. The kernel blocks sending to full and receiving from empty Mach ports. There is also permission control for Mach ports ("port rights") so that unauthorized processes cannot randomly access Mach ports. The kernel itself provides Mach ports to interact with resources such as tasks, threads, etc. Hence, one can see the XNU kernel as a server that serves objects through Mach ports.

  3. #3
    Tanaris4's Avatar Contributor Authenticator enabled
    Reputation
    148
    Join Date
    Oct 2008
    Posts
    646
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    How do windows bots do it? Something similar?
    https://tanaris4.com

  4. #4
    GliderPro's Avatar Member
    Reputation
    -1
    Join Date
    Mar 2009
    Posts
    93
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Tanaris4 View Post
    How do windows bots do it? Something similar?
    I think MrFishIt uses a named pipe. Named pipes are probably the easiest method of IPC to get up and running. All bots need some method of IPC if they have an in-process module controlled by an out-of-process application.

  5. #5
    Tanaris4's Avatar Contributor Authenticator enabled
    Reputation
    148
    Join Date
    Oct 2008
    Posts
    646
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    o.O - awesome:

    Cocoa with Love: Interprocess communication: snooping, intercepting and subverting

    Thx all, I wouldn't have searched for "cocoa, interprocess communication" otherwise
    https://tanaris4.com

  6. #6
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1358
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/6
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Doez Blizzard make teh banz for teh injektiunz?

  7. #7
    Tanaris4's Avatar Contributor Authenticator enabled
    Reputation
    148
    Join Date
    Oct 2008
    Posts
    646
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I have a feeling I might need to buy the "mac os x internals" book, not a lot of documentation on mach ports for os x (or i sux @ teh googles)

    and i dunno? haven't been banned yet? hmmmm. Warden is just a stub on os x I believe anyways. I prob. should look into understanding warden a bit more before I try out injection, altho I guess they could just monitor my CTM writes to ban anyways (I'm still confused y they don't just do that)
    https://tanaris4.com

  8. #8
    SKU's Avatar Contributor
    Reputation
    306
    Join Date
    May 2007
    Posts
    565
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Tanaris4 View Post
    I have a feeling I might need to buy the "mac os x internals" book, not a lot of documentation on mach ports for os x (or i sux @ teh googles)

    and i dunno? haven't been banned yet? hmmmm. Warden is just a stub on os x I believe anyways. I prob. should look into understanding warden a bit more before I try out injection, altho I guess they could just monitor my CTM writes to ban anyways (I'm still confused y they don't just do that)
    ^ trolled.

  9. #9
    Xarg0's Avatar Member
    Reputation
    61
    Join Date
    Jan 2008
    Posts
    389
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Why do so many people go down the route of injecting a module into wow and then controll it from an external process?
    You have to take care about so many things, it's just not worth it.
    If you want to have the benefits of beeing injected just run your bot completly injected, hook openGL and create an ingame gui, or register lua functions to controll your bot with an addon.

    If you still want to have a remote bot ui I'd suggest you to look up on named pipes or shared memory, shared memory is probably the best ipc from a performance point of view while it's implementation can turn out to be rather ugly and named pipes are most likely the easiest to implement.

    And about your worries on injection things into wow, it's prefectly secure to inject your private stuff into wow, only hooking and patching of wow functions could be possibly caught by warden if you're using public methods, however I've no clue if warden is even operating on Mac OS X, you've to find that out yourself.
    I hacked 127.0.0.1

  10. #10
    Tanaris4's Avatar Contributor Authenticator enabled
    Reputation
    148
    Join Date
    Oct 2008
    Posts
    646
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    If you saw the UI of Pocket Gnome, you'd realize why I don't want to re-write the UI to be in the game And I don't have the time to execute unfortunately.

    But thanks for the advice, I've been reading up on mach ports and see a couple options, but need to write some sample apps to test. The good thing is I won't be using the injected module for much, only things like logging in + accessing functions I fail @ reversing.
    https://tanaris4.com

Similar Threads

  1. Replies: 11
    Last Post: 01-06-2011, 02:59 PM
  2. Boting: Need help getting started
    By grond in forum World of Warcraft General
    Replies: 3
    Last Post: 10-30-2007, 02:19 PM
  3. Getting Started?
    By Dax in forum WoW ME Questions and Requests
    Replies: 2
    Last Post: 06-23-2007, 12:23 AM
  4. Getting Started
    By masonps3 in forum World of Warcraft General
    Replies: 3
    Last Post: 06-15-2007, 02:05 PM
All times are GMT -5. The time now is 04:09 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search