Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Are you still active in this community? #9

Open
strich opened this issue Jan 19, 2024 · 7 comments
Open

Are you still active in this community? #9

strich opened this issue Jan 19, 2024 · 7 comments

Comments

@strich
Copy link

strich commented Jan 19, 2024

I imagine you've since moved on from this particular project, but I'd love to pick your brain about it if you're open to it?

@tostercx
Copy link
Owner

Haven't touched this (or eve) in a long time. I doubt I'd be of much help but sure.

@strich
Copy link
Author

strich commented Jan 23, 2024

@tostercx did you ever get the probe scanner window automated? In particular the probe cursor so it can be placed on to sigs for scanning.

@tostercx
Copy link
Owner

Yeah, that was probably the only script that worked somewhat well. It just scanned all anomalies automatically once the probes were released IIRC.

The project was primarily a GUI network packet inspector/editor/injector. The scripts are mostly an afterthought testing out what can be done with it. There's probably an easier way to automate scanning with the client than composing packets if that's what you're after ^^;

@strich
Copy link
Author

strich commented Jan 23, 2024

Yeah ideally I don't use the packet approach hah. Could you tell me a little more about the process to hook the python domain and, I assume what you're doing here, is inject some custom functions that you can call from outside EVE.

@tostercx
Copy link
Owner

So... I am using eve's python, but it's not the same instance as the game is running in. The main application hooks, captures and decrypts raw packets from a running eve process. It then loads eve's python in my app to parse the packet and convert it to a dumb object that can be represented as JSON for human viewing/editing.

At the spot you mentioned I'm creating a new packet in the human viewable format.

I know the architecture is confusing but the only interaction I have with the game client is reading or writing packets.

@strich
Copy link
Author

strich commented Jan 23, 2024

Ahhh. I see. That's very interesting! I'm half tempted to maybe get it working again just coz that's a kind of cool method you've developed. But as you say I wouldn't plan to expanding it if I can avoid it.
I suppose you are at least calling a real EVE python method to at least send your packets right? Or are constructing and sending the packet yourself entirely outside of the EVE app?

@tostercx
Copy link
Owner

tostercx commented Jan 23, 2024

Well my app uses eve's libraries to make the packet and convert it to a binary buffer from the outside (blue.marshal.Load/Save). It then passes it to eve's process to send it. I'm only hooking CryptEncrypt and WSA Send and friends from the Win32 API.

As for getting it working - I'm not sure if the traffic capture part still works. May need some debugging.

If you want to run python directly in the game client, I think you can get the address of PyRun_SimpleString and pass it a string. It had to be run from the main thread or it crashed due to stackless python weirdness. Not sure if that still works, they did block some of the easier ways to run code in the past.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants