-
Notifications
You must be signed in to change notification settings - Fork 86
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
Problem: Can't extract data now. #166
Comments
whole log file: 2016-12-16 17:41:31,641: SWPlugin - INFO - Loaded 6 plugins |
Humm... interesting.. I haven't tried SWProxy since last FRR, but it looks like they're not using regular HTTP anymore, they are using HTTPS, which means that we can't intercept the data anymore since it is now SSL encrypted. At least, that's what the log file says. |
Same issue for me, oh god, please no. |
Seems like that it is for some regions only. Europe works just fine. Who knows for how long. Besides that, it seems the response is fine right? http://summonerswar-cn.com2us.net/api/location_c2.php I get normal encrypted data. |
Device: Apple Server: China This is my latest failed try: My Last successful try: |
Until they dont use cert-pinning this should not be a big deal. There is a proxy.py with HTTPS-Support on githup: https://github.com/inaz2/proxy2 Ok the process would a bit more complex for normal user. But with a root-cert it should/could it work. |
@Viper2k4 yeah but you don't know if they use cert-pinning, also, installing a custom certificate on your phone means you need to have the phone rooted, which is not easy for everyone. If Com2Us decide to make the application check if the right certificate was used, then that's an instant ban and I'm not in the mood for changing this tool into a "you might very easily get detected and banned" kind of tool. |
True but then HTTPS is the final cut. Donno about android but i can install an root-cert on my iPhone without an jailbreak and i think this should also be possible on Android, i would say. But yes its not very cool, beacuse a bit more detectable. But it would also be shame if all this would die. |
Yeah, it definitely would be a shame, as it is very useful, but to be honest, I barely even use it anymore, the game is becoming less interesting for me, so I might either :
|
phone cannot be jailbroken or rooted as SW will detect and cause an error. |
Mh :( Ok i could take a look at this. Someone know if i lose my team-settings after logging-out to create an Asia-Account? ^^. Or is actual an emulator working (would be the best choice for testing). |
So i test a bit and i can finally prove there is no Cert-Pinning. After installing the Fiddler-Cert on the Device (i only have to set a pin, but root was not required) i get repsonse like before. And i can also prove the encryption is the same as before. |
Cool, thanks for testing. One thing you could do would be to test what happens if you reject the HTTPS connection request, will it fall back on regular HTTP ? |
I have to test it. But give me a bit time. I have to write the encryption-part.
As u can see only ".sea" and ".cn" are involced affected. |
Ahh, that is kinda good news. So its not an impossible thing to do at least. |
@Viper2k4 I've just written the encryption part (much easier of course since i have the source for smon_decryptor), I can send it to you if you want, just send me an email (my address from git commit log, yours seems to be a noreply) and I'll reply with the file. As for com2us, they don't like us either, but I think they accept us somehow because they can't do much against us. They did change the key once, and they've put a lot of effort into making it very hard to find, but it took just a couple of hours for the new key to be found, so they've learned that it's not worth all that development cost/effort to change it again. If we do start doing things that are against the ToS (and modifying the server addresses from what THEY want, would probably count as a breach of ToS), then yes, they might decide to take more drastic measures against SWProxy. |
No problem, i does it by my self (u know python is not an safe^^). I manipulate the response with a simple But now the sad story. It dosent work. I think its because an client-side redirect :/ |
Good news!! 👍 |
At the moment u can do nothing :(. Simply wait and hope we found an good and easy way to fix it. |
As far as I see, it works by replacing all |
Did u try this? i tryed it above and it does NOT work. |
Yes, it WORKS for me now. But I don't think it is a good idea to do this because com2us can easily find the use of swproxy as we changed the port. |
Uff rly? U have add the encryption part to SWProxy and simple |
I am not sure why it doesn't work for you as I am not using python. Maybe double check your code :) |
Ah ok u dont try it with SWProxy. I check my code more then twice :/. But nice to know that this is working ^^ |
I just changed body and content length.^^ |
Mh, but doesent matter. Now we know just changing the URLs work. That is what @kakaroto wants to know :) PS: Yes the content length could be the problem. The proxy i normally use (in C#) simply ajust it internaly :/ |
@Viper2k4, the proxy.py probably doesn't send the modified data back, I think you modify it, but it doesn't change what the proxy actually sends. I remember modifying proxy.py before in order to make it regenerate the response before sending it. |
Mh seems so. But its strange, manipulate a Request is working. So yes, its seems like a problem with the proxy.py But just for Info. Today i dont have the time to look deeper at this stuff. Maybe tomorrow. EDIT just for Info we should check in the decrypt/encrypt-functions for empty input. Because the "location_c2.php" request is empty |
any news? D: |
@Viper2k4 @kakaroto I have my own proxy running as part of an application that I developed in C# and yes, it is possible to modify request packets before they hit the servers (I do this to change monsters while leveling food mons.. I have a bot that I can set and forget and it will level all my food to max star). @kakaroto is right about the headers in the request, SmonChecker or something like that.. I can pretty much confirm that this is not a hash of the request (currently, the change I'm making to the request is the 'BattleScenarioStart' request.. changing the monster ID's) as I am able to manipulate the data and still have it work as normal. I dabbled with the though of sending requests 'clientless' -- meaning I could close summoners war and just have my application interact with the servers, I only spent half a day or so on looking into this but I wasn't able to confirm that I could get this working, but I believe it could be possible.. I would like to know what those special headers in the request are though :( |
As of yesterday, they removed https. So there currently is no problem anymore. Dont know what is in the future. |
@jenovachild We are aware that this is possible. But proxy.py as part of SWProxy dont edit a response, a request change is possible. And btw. SmonChecker only exist on Android-Devices. And im relativ sure it's an hash from the content. Because if there is exact the same content the SmonChecker is the same. Truly is not an simple hash but still an hash ^^ But iOS dont have this headers, so (i think because they cant include appguard). Wrote me an mail so i can send u some iOS Request/Responses if u need: [email protected] But it doesent-matter HTTPS is removed and Asia/China is fine again :). So i think we can close this, for now. |
@jenovachild it's a hash, it's just an encrypted one. And I prefer not to have any discussions here about bots or other ToS-breaking apps. @Viper2k4 @Xzandro cool they removed https! Either they were just testing things (and realized https added too much overhead on their servers, so they decided to drop it), or they saw we planned on modifying requests and they didn't want to put us in that situation, lol :p |
@jenovachild : can you drop me an email to [email protected] ? I would like to exchange some information |
OS: Win10(PC) Andriod(Mobile)
Server: China
Issue:
The last time proxy worked normally was Dec.3.
But it can't extract data ( can log in game like normally ) now, and I wonder why.
The only error messege I found from proxy.log was like that:
proxy - ERROR - Exception while receiving from connection client <socket._socketobject object at 0x03268848> with reason error(10054, '')
Have tried to use the latest program, use other wireless networks, run the program as an administrator, close the firewall and anti-virus. But all failed.
I need help. Thank you!
The text was updated successfully, but these errors were encountered: