Author Topic: Steam protocol  (Read 272210 times)

0 Members and 2 Guests are viewing this topic.

Offline Ratha

Re: Steam protocol
« Reply #465 on: 03 12 2017, 01:53:49 »
- What do you mean non-private? That being private might be a problem for Miranda? Actually I did set my account as private, but I tried now to revert it to public and the login didn't work anyway
- The account where I can login is a brand new one, even though I can't add anyone since I didn't use any money in it, it can still be shown as "online", something that doesn't happen with my main account (there is the icon where the circle is loading, and it's stuck in that state)
- I'm always using latest miranda + plugin nightly versions
- I tried both with steam guard enabled and disabled. When this problem started, steam guard was enabled, and previously I would receive sometimes captcha codes (only once in a while, I don't know the reason for this) but once inserted I could login fine. Not anymore, and no error popups
- No special characters in the password, it's just a long one. But the problem started when the password was much simpler, changing it didn't resolve
- I remember the offline contacts problem, happened from time to time. Trying to login again just fixed it most of the times. On the other hand my account problem has 0% chance of success in login, but I can login with different programs (see previous post)

I asked for a  non-private account link just so that we could be sure that there was nothing on the account that might cause it to be blocked from logging in, or any weird anomalies like having 7000 friends or being community banned or having special characters in the name that could potentially cause problems or.. anything really. Since we dont know the cause, having as much available information to research might have helped figure the problem out. (Additionally a Version Information Report would be helpful, that will tell us OS / Version / Plugins and some other useful data.)

1: Have you tried a brand new install of the portable version of Miranda, using a new profile, to try and login with? This might help determine if you might have some setting, corruption, or addon somewhere that could be causing the failure to login in your main client.

2: Do you run any odd resolutions or multi-monitor setup that might cause Miranda's steam guard code entry box to appear off screen or beneath other applications? (Occasionally mine does not seem to show up when expected either due to server issues, or possibly due to the client needing to be closed and re-opened. Have never figured out why sometimes it does not want to connect.)

3: Can you confirm that all emails and guard authentications are sent to your email and or your phone?

4: Do you run any programs that might interfere with the login like ASF card farm or trade bots?

5: Are you trying to use any other remote computer / connections or are you attempting to login with encryption plugins, or are you using a proxy server to connect with?

6: Have you visited the device login management to make sure that you dont have any unauthorized or unknown devices linked to your account / have you tried removing any of them to see if that fixes the problem? https://store.steampowered.com/account/managedevices

7: Are you trying to family share the account with yourself? There are some family sharing settings that can disable access to "friends, chat and groups" http://store.steampowered.com/parental/set

Those are a few things to look at I guess, but a profile link, a Version Info report, and for the devs, a connection log of Steam's attempt to connect to the server might help us figure out whats going on.

Edit:" Additionally you could send a friend request from your main account to your alt account. Your alt account should be able to add friends if they are -sent- a friend request, unless they changed that in the last year or so. That would help ya confirm whether or not your alt account can actually login properly. And if it cannot, then maybe something is firewalling Miranda and stopping it from connecting to Steam? Do you use Miranda with any other messengers successfully?
« Last Edit: 03 12 2017, 01:57:39 by Ratha »
 
The following users thanked this post: SpinalBlood

Offline SpinalBlood

Re: Steam protocol
« Reply #466 on: 03 12 2017, 15:10:14 »
VersionInfo
Quote
CPU: Intel(R) Core(TM) i5-3450 CPU @ 3.10GHz [Intel64 Family 6 Model 58 Stepping 9] [DEP Enabled] [4 CPUs]
Installed RAM: 3792 MBytes
Microsoft Windows 7 Ultimate Edition, 64-bit Service Pack 1 (build 7601)
Internet Explorer: 9.11.9600.17801 (build 99600)
Administrator privileges: Yes
OS Languages: (UI | Locale (User/System)) : Italian/Italian | Italian/Italian
Free disk space on Miranda partition: 402805 MBytes

Miranda NG Version: 0.95.8 alpha build #18897 (d1f75ef5d2) [running inside WOW64]
Build time: 3 Dec 2017 4:06:00
Profile: D:\New\miranda steam\Profiles\temp\temp.dat (dbx mmap driver)
Profile size: 65536 Bytes
Profile creation date: 3 Dec 2017 14:53:17
Language pack: No language pack installed
Service Mode: No

Active Plugins (18):
¤ AdvaImg.dll v.0.11.0.2 [3 Dec 2017 4:07:46] - Miranda image services
¤ AVS.dll v.0.95.3.4 [3 Dec 2017 4:06:08] - Avatar service
¤ Clist_modern.dll v.0.9.1.7 [3 Dec 2017 4:10:16] - Modern contact list
¤ CrashDumper.dll v.0.0.5.2 [3 Dec 2017 4:11:30] - Crash dumper
¤ DbEditorPP.dll v.4.0.1.2 [3 Dec 2017 4:11:28] - Database editor++
¤ Dbx_mmap.dll v.0.95.3.1 [3 Dec 2017 4:06:24] - Miranda NG mmap database driver
¤ Facebook.dll v.0.3.3.2 [3 Dec 2017 4:09:40] - Facebook RM
¤ GG.dll v.0.11.0.3 [3 Dec 2017 4:07:20] - Gadu-Gadu protocol
¤ ICQ.dll v.0.11.3.6 [3 Dec 2017 4:07:32] - IcqOscarJ protocol
¤ Import.dll v.0.95.4.3 [3 Dec 2017 4:06:20] - Import contacts and messages
¤ IRC.dll v.0.95.7.1 [3 Dec 2017 4:06:54] - IRC protocol
¤ Jabber.dll v.0.11.0.5 [3 Dec 2017 4:08:32] - Jabber protocol
¤ MSN.dll v.0.14.0.1 [3 Dec 2017 4:08:20] - MSN protocol
¤ PluginUpdater.dll v.0.1.2.5 [3 Dec 2017 4:12:46] - Plugin updater
¤ Popup.dll v.2.1.1.12 [3 Dec 2017 4:08:42] - Popup plus
¤ Steam.dll v.0.11.6.2 [3 Dec 2017 4:16:20] - Steam protocol
¤ TabSRMM.dll v.3.5.0.7 [3 Dec 2017 4:07:26] - TabSRMM
¤ TopToolBar.dll v.0.8.0.4 [3 Dec 2017 4:10:06] - TopToolBar

Unloadable Plugins (1):
¤ DbChecker.dll v.0.0.0.0 [3 Dec 2017 4:12:00] - <unknown>
    Plugin statically linked to missing module: mir_core.mir
    Plugin statically linked to missing module: mir_app.mir


Protocols and Accounts:
-------------------------------------------------------------------------------
Facebook                 0 - Enabled 0 - Disabled  Loaded
GG                       0 - Enabled 0 - Disabled  Loaded
ICQ                      0 - Enabled 0 - Disabled  Loaded
IRC                      0 - Enabled 0 - Disabled  Loaded
JABBER                   0 - Enabled 0 - Disabled  Loaded
MSN                      0 - Enabled 0 - Disabled  Loaded
STEAM                    1 - Enabled 0 - Disabled  Loaded
MetaContacts             1 - Enabled 0 - Disabled  Loaded

Icon Packs:
-------------------------------------------------------------------------------
 Proto_Facebook.dll [3 Dec 2017 4:21:54]
 Proto_GG.dll [3 Dec 2017 4:21:56]
 Proto_ICQ.dll [3 Dec 2017 4:21:54]
 Proto_IRC.dll [3 Dec 2017 4:21:54]
 Proto_Jabber.dll [3 Dec 2017 4:21:56]
 Proto_MetaContacts.dll [3 Dec 2017 4:22:04]
 Proto_MSN.dll [3 Dec 2017 4:21:56]
 Proto_Steam.dll [3 Dec 2017 4:22:08]
 TabSRMM_icons.dll [3 Dec 2017 4:22:00]
 Toolbar_icons.dll [3 Dec 2017 4:21:52]
 xStatus_ICQ.dll [3 Dec 2017 4:21:56]
 xStatus_Jabber.dll [3 Dec 2017 4:21:58]
[close]

Netlog: attached; notice that at 15:09 I close Miranda. The password seems incorrect but it isn't (and yes I double checked in the database entry)

This is my profile. I have not been banned for something, I don't even play that much, I only use it as a chat or I wouldn't be using it in miranda, I guess...  ;D
A special character would be in the username since it was an email, so it has the "@" character. But I can login on https://steamcommunity.com/mobilelogin/  and same for Pigdin and Nox

1) Yes. The version info above shows a brand new updated profile/folder. I tried to connect before and after switching to debug symbol (for the netlog)
2) I don't remember if the Steam guard code has its own taskbar rectangle, but when the popup used to show up I could see it just fine. I never changed my resolution and it's the native one. I also tested the account on another pc on Windows XP so a problem like the popup is hidden is unlikely
3) I used to receive emails, but not after this problem started; now that the login seems rejected the captcha phase seems not reached at all. At the moment I have disabled steam guard though, but it didn't help when I re-enabled it
4) I don't know these names, and I also rarely install programs so I doubt something in particular is the culprit, especially considering I can login with the other programs
5) No, I only tried two desktops, in particular the one it always worked before
6) This list is empty
7) It's disabled

The friend request worked. I did send the request from the main account on the website, accepted it on the alt account on the website while I was connected in miranda (with the alt account), and miranda saw it. When the main account removed the alt account from the website, miranda saw this as well
 

Offline Ratha

Re: Steam protocol
« Reply #467 on: 04 12 2017, 02:29:34 »
VersionInfo
[close]

Netlog: attached; notice that at 15:09 I close Miranda. The password seems incorrect but it isn't (and yes I double checked in the database entry)

This is my profile. I have not been banned for something, I don't even play that much, I only use it as a chat or I wouldn't be using it in miranda, I guess...  ;D
A special character would be in the username since it was an email, so it has the "@" character. But I can login on https://steamcommunity.com/mobilelogin/  and same for Pigdin and Nox

1) Yes. The version info above shows a brand new updated profile/folder. I tried to connect before and after switching to debug symbol (for the netlog)
2) I don't remember if the Steam guard code has its own taskbar rectangle, but when the popup used to show up I could see it just fine. I never changed my resolution and it's the native one. I also tested the account on another pc on Windows XP so a problem like the popup is hidden is unlikely
3) I used to receive emails, but not after this problem started; now that the login seems rejected the captcha phase seems not reached at all. At the moment I have disabled steam guard though, but it didn't help when I re-enabled it
4) I don't know these names, and I also rarely install programs so I doubt something in particular is the culprit, especially considering I can login with the other programs
5) No, I only tried two desktops, in particular the one it always worked before
6) This list is empty
7) It's disabled

The friend request worked. I did send the request from the main account on the website, accepted it on the alt account on the website while I was connected in miranda (with the alt account), and miranda saw it. When the main account removed the alt account from the website, miranda saw this as well

EDIT: Everything below this point is irrelevant as I now believe the problem is based on having a username with special characters in it. ("@" "-" and ".") See my next post for relevant information.

I can confirm that an email address with special characters [@ - .] can be used in a Steam login name, and that login names are NOT case sensitive. I dont know if Italian characters are allowed, but you indicated that the login was likely an email address so id assume you didnt use any of those.

I have to admit that im a bit out of ideas so the next set of questions is going to be a bit far reaching. It seems to me like if you're able to use Miranda to login to your new account, but not your old account and your old account's netlog is reporting bad account name or password; I'd be inclined to think thats the problem? Is there any chance that your browser is using a different login name or password than Miranda? You wouldnt get the popup or the Steam guard emails if either of those were incorrectly entered into Miranda (though you did indicate that you even checked the DBEditor to confirm that they were correct.)

If you are logged into either your Steam client or your browser, you should see your -login name- in the upper right corner of the browser while on any Steam page or the Steam client. Make sure that you're using your -login name- (In this case, likely a very old email address) into Miranda and not your community name.

1: Just to confirm: Is your Version Info from your main Miranda client, or a newly downloaded test client? VI indicates that you're using Popup Plus, is there a chance this could be interfering with the Steam popup? Popup does not come with the latest development build https://miranda-ng.org/distr/miranda-ng-alpha-latest_x64.7z but yet your profile was named "temp" This leads me to believe that you tested a new profile on an previously configured copy of Miranda? Could you also be sure to test a completely clean copy of Miranda with both your old and your new Steam account. (Both accounts should be setup with the same Steam Guard settings, either on or off, but preferably on.) Try comparing your netlog from the successful login with the netlog from the failed login to see whats different.

2: Does your login name in Miranda have a space in it? If so thats possibly an indicator that you're trying to login with a community name. (Though in this case your community name does not have a space so is unlikely.))

3: When was the last time you personally entered your password into your browser to log in with. (To make sure that you're not using a password manager / auto login service / browser saved data that has a different password.)

4: When was the last time that you logged into your main account on the Steam client and signed into your friends list? Or any other unofficial client on that account? I checked the profile page and it says "Last Online" 97 days ago. (Granted thats only a measurement of the last time you were "online" on the friends list. Additionally, the last time you played a game on the account seems to be back in 2014. That seems somewhat inactive and unused for an account that you'd said you could login using Pidgin and Nox with.

5: If you try to log into the account using a different browser you should get sent a steamguard email if steamguard is enabled. Are you getting this email? (Confirms that Steam is processing your attempts to login to that account and that the manually typed password is correct. When i go to the mobile login page using your link, Firefox has both my username and password saved for that page.)

6: If you're using an email address to login with, be sure that its the original login-email-address and not the new email address you have linked to your Steam account. (I personally have an account that used an email address for a login ~12 years ago, but it has a different 'contact email address' now.)

Essentially at this point all I can think of is related to trying to confirm that someone didnt hack your account and change the password or email address, and or that when you changed your password some time ago that you didnt mistype it perhaps and that the only valid login for the account is the browser with old credentials.) I dont know if Steam or Miranda have a password size limit, but if you're using a super-long password via a password manager, theres a small possibility that Miranda might not be transmitting the entire thing.

Give me a couple of hours and I will test to see if i can login to my old account (with the email address login) using a brand new copy of Miranda. Theres a tiny possibility that Miranda is having an issue with an email-based username. I can atleast help ya rule that possibility out.
« Last Edit: 04 12 2017, 05:59:39 by Ratha »
 
The following users thanked this post: SpinalBlood

Offline Ratha

Re: Steam protocol
« Reply #468 on: 04 12 2017, 02:48:02 »
My old Steam account uses an email address as a login as well. I decided to attempt to log into that account with Miranda and I am also unable to connect. (Netlog shows a username/password error.) The spinner just sits there spinning forever (10+ minutes) without popping up any kind of error, prompt, or Steam guard auth box.

This almost certainly means that one of two things is happening:

1: Either Miranda cant handle usernames with an email address as the login name. (with the symbols "@" "-" and ".") I can confirm the password and username are correct via the database editor, is this a retrieval problem?
2: Miranda's Steam Guard login is broken. (I use Mobile Auth on my main account, old email-address account still uses Steam Guard.)

Things to try:
A: If you have a phone to link your Steam account to, you could try enabling Mobile Auth and see if that allows you to login.

I seem to recall in the past that there were some issues with both the Steam Guard login, and Mobile Auth logins with Miranda. Its possible that one of  the fixes to the Mobile Auth for Steam broke the Steam Guard login. I am seeing if i can get one of my friends to help me rule out the Steam Guard problem.

EDIT: Had a friend help me test Miranda with Steam Guard based authentication and he was able to login successfully. He was not using an email address as a login name. So that makes me think that Miranda is not properly transmitting the email address-based username / or that its its stripping or omitting the special symbols perhaps.

EDIT2: Added a second netlog. First one is for a Steam account that has an email address as a username. Second one (FakeSteam) is for an account that does not exist and does not use an email address for login. The second account stops trying to connect and closes the connection after a second or two, while the first account with the email address continues to spin the connection icon.

EDIT3: Seems like Miranda is getting stuck at the "CSteamProto::OnAuthorizationError: clear password field" when its unable to login properly according to the netlog. It only seems to get stuck on that message if the account is valid and the password is incorrect. It does not get stuck if the Steam account does not exist. (Tested using both a fake email account name, and a fake non-email account name for the login.) I could be wrong, but this makes me think that Miranda is messing up the password somehow, but only when an email address is used as the username. So.. a database retrieval problem, or a problem in the way Miranda transmits the Username/Password?

Seems like usernames that contain an email address do not appear to be able to login through Miranda. (I tested with Steam Guard, SpinalBlood tested both with and without Steam Guard.) Now I guess its on the Devs to figure out why as thats a bit beyond my ability.

Code: [Select]
--- This is an attempt to login to Steam using Miranda with an email address as the username.

[19:35:14 0B0C] [STEAM_1] CSteamProto::SetStatus: changing status from 40071 to 40072
[19:35:14 14F0] [STEAM_1] Send request to https://steamcommunity.com/mobilelogin/getrsakey/
[19:35:14 14F0] [STEAM_1] Connection request to steamcommunity.com:443 (Flags 11)....
[19:35:14 14F0] [STEAM_1] (0000000003F6CBF0) Connecting to server steamcommunity.com:443....
[19:35:14 14F0] [STEAM_1] (0000000003F6CBF0) Connecting to ip 23.33.255.124:443 ....
[19:35:14 14F0] [STEAM_1] (716) Connected to steamcommunity.com:443
[19:35:14 14F0] [STEAM_1] (716 steamcommunity.com) Starting SSL negotiation
[19:35:14 14F0] [STEAM_1] (716 steamcommunity.com) SSL negotiation successful
[19:35:14 14F0] SSL Server signaled SSL Shutdown
[19:35:14 14F0] [STEAM_1] (0000000003F6CBF0:716) Connection closed internal
[19:35:14 14F0] [STEAM_1] (0000000003F6CBF0:4294967295) Connection closed
[19:35:14 14F0] [STEAM_1] Send request to https://steamcommunity.com/mobilelogin/dologin/
[19:35:14 14F0] [STEAM_1] Connection request to steamcommunity.com:443 (Flags 11)....
[19:35:14 14F0] [STEAM_1] (0000000003F6CBF0) Connecting to server steamcommunity.com:443....
[19:35:14 14F0] [STEAM_1] (0000000003F6CBF0) Connecting to ip 23.33.255.124:443 ....
[19:35:15 14F0] [STEAM_1] (716) Connected to steamcommunity.com:443
[19:35:15 14F0] [STEAM_1] (716 steamcommunity.com) Starting SSL negotiation
[19:35:15 14F0] [STEAM_1] (716 steamcommunity.com) SSL negotiation successful
[19:35:15 14F0] [STEAM_1] (0000000003F6CBF0:716) Connection closed internal
[19:35:15 14F0] [STEAM_1] (0000000003F6CBF0:4294967295) Connection closed
[19:35:15 14F0] [STEAM_1] CSteamProto::OnAuthorizationError: The account name or password that you have entered is incorrect.
[19:35:15 14F0] [STEAM_1] CSteamProto::OnAuthorizationError: clear password field

-

Code: [Select]
--- This is an attempt to login to a Steam account that does not exist while not using an email address as the username.

[22:21:20 1E3C] [FakeSteam] CSteamProto::SetStatus: changing status from 40071 to 40072
[22:21:20 198C] [FakeSteam] Send request to https://steamcommunity.com/mobilelogin/getrsakey/
[22:21:20 198C] [FakeSteam] Connection request to steamcommunity.com:443 (Flags 11)....
[22:21:20 198C] [FakeSteam] (00000000046DA390) Connecting to server steamcommunity.com:443....
[22:21:20 198C] [FakeSteam] (00000000046DA390) Connecting to ip 23.33.255.124:443 ....
[22:21:20 198C] [FakeSteam] (740) Connected to steamcommunity.com:443
[22:21:20 198C] [FakeSteam] (740 steamcommunity.com) Starting SSL negotiation
[22:21:20 198C] [FakeSteam] (740 steamcommunity.com) SSL negotiation successful
[22:21:21 198C] SSL Server signaled SSL Shutdown
[22:21:21 198C] [FakeSteam] (00000000046DA390:740) Connection closed internal
[22:21:21 198C] [FakeSteam] (00000000046DA390:4294967295) Connection closed
[22:21:21 198C] [FakeSteam] Send request to https://steamcommunity.com/mobilelogin/dologin/
[22:21:21 198C] [FakeSteam] Connection request to steamcommunity.com:443 (Flags 11)....
[22:21:21 198C] [FakeSteam] (00000000046DA390) Connecting to server steamcommunity.com:443....
[22:21:21 198C] [FakeSteam] (00000000046DA390) Connecting to ip 23.33.255.124:443 ....
[22:21:21 198C] [FakeSteam] (740) Connected to steamcommunity.com:443
[22:21:21 198C] [FakeSteam] (740 steamcommunity.com) Starting SSL negotiation
[22:21:21 198C] [FakeSteam] (740 steamcommunity.com) SSL negotiation successful
[22:21:21 198C] SSL Server signaled SSL Shutdown
[22:21:21 198C] [FakeSteam] (00000000046DA390:740) Connection closed internal
[22:21:21 198C] [FakeSteam] (00000000046DA390:4294967295) Connection closed
[22:21:21 198C] [FakeSteam] CSteamProto::OnAuthorizationError: The account name or password that you have entered is incorrect.
[22:21:21 198C] [FakeSteam] CSteamProto::SetStatus: changing status from 1 to 40071
[22:21:21 19D4] [FakeSteam] Send request to https://api.steampowered.com/ISteamWebUserPresenceOAuth/Logoff/v0001
[22:21:21 19D4] [FakeSteam] Connection request to api.steampowered.com:443 (Flags 11)....
[22:21:21 19D4] [FakeSteam] (00000000046DA390) Connecting to server api.steampowered.com:443....
[22:21:21 19D4] [FakeSteam] (00000000046DA390) Connecting to ip 23.33.255.124:443 ....
[22:21:21 19D4] [FakeSteam] (960) Connected to api.steampowered.com:443
[22:21:21 19D4] [FakeSteam] (960 api.steampowered.com) Starting SSL negotiation
[22:21:22 19D4] [FakeSteam] (960 api.steampowered.com) SSL negotiation successful
[22:21:22 19D4] SSL Server signaled SSL Shutdown
[22:21:22 19D4] [FakeSteam] (00000000046DA390:960) Connection closed internal
[22:21:22 19D4] [FakeSteam] (00000000046DA390:4294967295) Connection closed
« Last Edit: 04 12 2017, 06:44:18 by Ratha »
 
The following users thanked this post: SpinalBlood

Offline SpinalBlood

Re: Steam protocol
« Reply #469 on: 05 12 2017, 12:34:51 »
You did some serious research! Thank you. Seems like I don't have to answer your marked questions
 

Offline Robyer

Re: Steam protocol
« Reply #470 on: 05 12 2017, 13:08:39 »
Ratha, good investigation. I just fixed the unending connection with "clear password field" error: https://github.com/miranda-ng/miranda-ng/commit/d00b3533e7d0529e8b47f5684d564d3c2ec25a4d

But cause of it is still unknown for me. To recapitulate - when user uses e-mail as login, then it won't work no matter what password user enters? If you use same password with non-e-mail login, then it connects without problems? So problem is with wrong login procedure or wrong hashing password in case user uses e-mail as login? I may check later how Pidgin does it and if we differ somehow.
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 
The following users thanked this post: SpinalBlood

Offline Ratha

Re: Steam protocol
« Reply #471 on: 05 12 2017, 18:07:23 »
Ratha, good investigation. I just fixed the unending connection with "clear password field" error: https://github.com/miranda-ng/miranda-ng/commit/d00b3533e7d0529e8b47f5684d564d3c2ec25a4d

But cause of it is still unknown for me. To recapitulate - when user uses e-mail as login, then it won't work no matter what password user enters? If you use same password with non-e-mail login, then it connects without problems? So problem is with wrong login procedure or wrong hashing password in case user uses e-mail as login? I may check later how Pidgin does it and if we differ somehow.

EDIT: To clarify something that might not be clear: Very old Steam accounts (~10-13+ years) allowed (and possibly required?) people to use an email address for their login name. So a steam account either has a username, -or- an email address as its login name. An account can only have one login name, and it cant be changed. (Just to be clear that you cant login with both your current email address and your username. You can only login with your username, and if you have an old account, its probably an email address.)

@SpinalBlood: Correct, you dont need to answer any of the strike-through text questions, however can you confirm that the (new) account that you can login properly with does not use an email address as the login name, but that the one that you cant login with (the old one) does? And can you list all of the special characters that are in that login name? Is it just an @, or is there also a period, or anything else?

@Robyer: It seems that when using a valid email login name with a valid password, that the plugin reports both "CSteamProto::OnAuthorizationError: The account name or password that you have entered is incorrect." and "CSteamProto::OnAuthorizationError: clear password field" (This almost makes me think that the server is waiting for the user to input a new password but theres no password popup from Miranda to satisfy it, so it just sits there indefinitely. Could the solution be as simple as needing to transmit the username first and then the password, instead of sending them both together? Or to perhaps re-transmit the password once that field has popped up?)

(I believe that this is indicating an invalid password has been transmitted, and not an invalid account name because according to my testing, an invalid account name always seems to properly terminate the connection, so if Miranda wasnt sending the email account name properly, I'd expect it to come back as an invalid account and close the connection. However, both an email address login with the correct password, and a non-email address login with the wrong password seem to get stuck with the "CSteamProto::OnAuthorizationError: clear password field" message as the last message in the netlog.

Quick recap:
1: Tested same password on separate email and non-email Steam accounts. (Completely unable to login to account with email username using Miranda.)
2: Valid account (regular login), wrong password = stuck.
3: Valid account (email login), correct password = stuck.
4: Non-valid account = not stuck.

Without making a whole bunch of new accounts to test logging in with, here are the errors for 4 different non-existing accounts. (I dont believe any of these 'got stuck' though i did trigger a captcha warning and had to stop testing.) The only thing that stands out to me as relevant was that when logging in with a valid email-based username, it stops at the "clear password field" error. This makes me think its transmitting the username correctly, because all of the invalid accounts below dont stop with that error. So the problem -seems- to be the password portion of the transmission, but.. only when an email address is used as the username.

"ThisAccountDoesNotExist1" ========== [2DB0] CSteamProto::OnAuthorizationError: The account name or password that you have entered is incorrect.
"ThisAccountDoesNotExist1.com" ======= [161C] CSteamProto::OnAuthorizationError: The account name or password that you have entered is incorrect. (Triggered "captcha needed" too many login attempts.)
"ThisAccountDoesNotExist1@google" ==== [2E74] CSteamProto::OnAuthorizationError: Incorrect account name or password.  Remember that your email address may not match your account name.
"ThisAccountDoesNotExist1@google.com" = [2E74] CSteamProto::OnAuthorizationError: Incorrect account name or password.  Remember that your email address may not match your account name.
« Last Edit: 05 12 2017, 19:13:53 by Ratha »
 
The following users thanked this post: SpinalBlood

Offline Robyer

Re: Steam protocol
« Reply #472 on: 05 12 2017, 19:27:45 »
Ratha, hmm, I didn't know about that old accounts with e-mail as username. As I looked into plugin sources, we doesn't send password directly but rather we use rsa encryption and only send the encrypted password. So there might be some difference between what server expects as password - so when you use old e-mail account, it might expect different encryption algorithm or something.

I think SpinalBlood already verified that in Pidgin it works, but can you check the Pidgin too? I saw commit for Pidgin Steam plugin where they commented out win32 rsa api for some reason - https://github.com/EionRobb/pidgin-opensteamworks/commit/c542694b0a9a6460a7d17ca366b995ba2b9a0cb6  ... perhaps our plugin wrongly hashes that password and that's why it doesn't work?
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 
The following users thanked this post: SpinalBlood

Offline Ratha

Re: Steam protocol
« Reply #473 on: 05 12 2017, 19:50:19 »
I dont use pidgin, but if i get a bit of free time in the next day or two i'll try my email account with it and see if it works. He has a very old account like I do so i assume that if it works for him that it'd also work for me.
 
The following users thanked this post: SpinalBlood

Offline Robyer

Re: Steam protocol
« Reply #474 on: 05 12 2017, 21:51:26 »
SpinalBlood, Ratha, I commited some change to Steam password enryption, please check new build tomorrow. It probably won't change anything, but also there is slight chance that it will fix the issue for old accounts.
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 
The following users thanked this post: SpinalBlood

Offline Ratha

Re: Steam protocol
« Reply #475 on: 07 12 2017, 00:11:26 »
SpinalBlood, Ratha, I commited some change to Steam password enryption, please check new build tomorrow. It probably won't change anything, but also there is slight chance that it will fix the issue for old accounts.

Steam-related notes: Miranda 0.95.8.18926 x64
- Change to fix the 'stuck at clear password field' now terminate the connection attempt.
- Changes made to password encryption do not seem to have any immediately noticeable effect on attempting to login with an email-based username with SteamGuard, or a standard username with MobileAuth.
- Pidgin: Confirmed successful login attempt with email-based username using this plugin: https://github.com/seishun/SteamPP/releases

Code: [Select]
Netlog for testing new password encryption on Steam account that uses an email address as username on a SteamGuard protected account. - Miranda 0.95.8.18926 x64
[16:36:28 2E88] [STEAM_1] CSteamProto::SetStatus: changing status from 40071 to 40072
[16:36:28 2E20] [STEAM_1] Send request to https://steamcommunity.com/mobilelogin/getrsakey/
[16:36:28 2E20] [STEAM_1] Connection request to steamcommunity.com:443 (Flags 11)....
[16:36:28 2E20] [STEAM_1] (0000000002B80920) Connecting to server steamcommunity.com:443....
[16:36:28 2E20] [STEAM_1] (0000000002B80920) Connecting to ip 23.33.255.124:443 ....
[16:36:28 2E20] [STEAM_1] (528) Connected to steamcommunity.com:443
[16:36:28 2E20] [STEAM_1] (528 steamcommunity.com) Starting SSL negotiation
[16:36:28 2E20] [STEAM_1] (528 steamcommunity.com) SSL negotiation successful
[16:36:29 2E20] [STEAM_1] (0000000002B80920:528) Connection closed internal
[16:36:29 2E20] [STEAM_1] (0000000002B80920:4294967295) Connection closed
[16:36:29 2E20] [STEAM_1] Send request to https://steamcommunity.com/mobilelogin/dologin/
[16:36:29 2E20] [STEAM_1] Connection request to steamcommunity.com:443 (Flags 11)....
[16:36:29 2E20] [STEAM_1] (0000000002B80920) Connecting to server steamcommunity.com:443....
[16:36:29 2E20] [STEAM_1] (0000000002B80920) Connecting to ip 23.33.255.124:443 ....
[16:36:29 2E20] [STEAM_1] (504) Connected to steamcommunity.com:443
[16:36:29 2E20] [STEAM_1] (504 steamcommunity.com) Starting SSL negotiation
[16:36:29 2E20] [STEAM_1] (504 steamcommunity.com) SSL negotiation successful
[16:36:29 2E20] [STEAM_1] (0000000002B80920:504) Connection closed internal
[16:36:29 2E20] [STEAM_1] (0000000002B80920:4294967295) Connection closed
[16:36:29 2E20] [STEAM_1] CSteamProto::OnAuthorizationError: The account name or password that you have entered is incorrect.
[16:36:29 2E20] [STEAM_1] CSteamProto::OnAuthorizationError: clear password field
[16:36:29 2E20] [STEAM_1] CSteamProto::SetStatus: changing status from 1 to 40071
[16:36:29 0920] [STEAM_1] Send request to https://api.steampowered.com/ISteamWebUserPresenceOAuth/Logoff/v0001
[16:36:29 0920] [STEAM_1] Connection request to api.steampowered.com:443 (Flags 11)....
[16:36:29 0920] [STEAM_1] (0000000002B80920) Connecting to server api.steampowered.com:443....
[16:36:29 0920] [STEAM_1] (0000000002B80920) Connecting to ip 23.33.255.124:443 ....
[16:36:29 0920] [STEAM_1] (768) Connected to api.steampowered.com:443
[16:36:29 0920] [STEAM_1] (768 api.steampowered.com) Starting SSL negotiation
[16:36:30 0920] [STEAM_1] (768 api.steampowered.com) SSL negotiation successful
[16:36:30 0920] [STEAM_1] (0000000002B80920:768) Connection closed internal
[16:36:30 0920] [STEAM_1] (0000000002B80920:4294967295) Connection closed
 
The following users thanked this post: SpinalBlood

Offline Robyer

Re: Steam protocol
« Reply #476 on: 07 12 2017, 08:25:34 »
Ratha, allright, can you download Fiddler (https://www.telerik.com/download/fiddler) to sniff on HTTP communication going on between Miranda/Pidgin<->Steam and compare the login procedure requests what differs? Especially how Pidgin vs Miranda sends the login/password and whether it has same value or not. That would be helpful to know what is wrong in Miranda.

(Note: You must enable in Fiddler to decrypt HTTPS communication + use Fiddler's localhost address as proxy server in Miranda/Pidgin to be able to see the communication going)


Not needed anymore, I found the problem ;-)
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 
The following users thanked this post: SpinalBlood

Offline Robyer

Re: Steam protocol
« Reply #477 on: 07 12 2017, 14:44:38 »
Login problem fixed in: https://github.com/miranda-ng/miranda-ng/commit/420614f4a7aabd062ba5d40fa8f872e1160ea162 It was indeed caused by double encoding of username, where @ character was encoded twice, so then password was encrypted incorrectly and thus server throw invalid password error.

You can thank @Ratha for investigation and pointing me to correct way :-)
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 
The following users thanked this post: SpinalBlood

Offline Ratha

Re: Steam protocol
« Reply #478 on: 07 12 2017, 15:08:27 »
Ratha, allright, can you download Fiddler (https://www.telerik.com/download/fiddler) to sniff on HTTP communication going on between Miranda/Pidgin<->Steam and compare the login procedure requests what differs? Especially how Pidgin vs Miranda sends the login/password and whether it has same value or not. That would be helpful to know what is wrong in Miranda.

(Note: You must enable in Fiddler to decrypt HTTPS communication + use Fiddler's localhost address as proxy server in Miranda/Pidgin to be able to see the communication going)

I spent about 4 hours this morning trying to figure out how to use Fiddler. I believe that i successfully got it setup to capture Miranda traffic, but i couldnt specifically find any information that seemed relevant to the problem. Miranda seems to be transmitting the correct username. The password its sending is a 344 character string. I dont know if it matters, but it seems to be sending the username in one request, waiting for a reply, then sending both the password and the username again. (The password before the username in the string.) Honestly since i dont have anything to compare to / since i didnt try my main account because it was in use at the time, im not sure what i should be focusing on. If you have any more specific directions on how i should use the program, and more specifically which tabs i should focus on, that'd be quite helpful.

I was not able to figure out how to get it to work with pidgin at all. Pidgin refused to connect to steam when it was active and monitoring connections. When i had first begun trying to figure out how to configure it, it said: "Fiddler's HTTPS Decryption feature is enabled, but this specific tunnel was configured not to be decrypted." however that appears to have gone away and yet it still refuses to capture pidgin traffic other than to tell me that its trying to tunnel, and then fails to tunnel. The very first time i tried pidgin i got more data/errors, but now im just not getting anything and im not sure what i did differently. After about three hours i gave up. I set "HTTP" 127.0.0.1 and port 8888 for pidgin's proxy and have 'decode HTTPs' set in Fiddler. (Oddly Pidgin did not have an HTTPS option for its proxy, but i assume HTTP/HTTPS is interchangeable there.)

Code: [Select]
Additional information from the log:
1: {"success":true,"publickey_mod":" [512 character encrypted string] ","publickey_exp":"010001","timestamp":"133261450000","token_gid":" [17 character string]"}

2: {"success":false,"requires_twofactor":false,"message":"The account name or password that you have entered is incorrect.","clear_password_field":true,"captcha_needed":false,"captcha_gid":-1}

3: <html><head><title>Unauthorized</title></head><body><h1>Unauthorized</h1>Access is denied. Retrying will not help. Please verify your <pre>key=</pre> parameter.</body></html>
 
The following users thanked this post: SpinalBlood

Offline Ratha

Re: Steam protocol
« Reply #479 on: 07 12 2017, 15:27:49 »
Login problem fixed in: https://github.com/miranda-ng/miranda-ng/commit/420614f4a7aabd062ba5d40fa8f872e1160ea162 It was indeed caused by double encoding of username, where @ character was encoded twice, so then password was encrypted incorrectly and thus server throw invalid password error.

You can thank @Ratha for investigation and pointing me to correct way :-)

Glad to be of some help. Sorry the other information didnt reach ya in time to be useful, but happy to hear that my previous testing and general intuition had helped to pinpoint the password as being the component that needed looking into. I dont think i could have added much more given that the password was still encrypted in some form in the output from Fiddler, but the username transmissions looked right, even though it was odd to see them transmitted two separate times.
 
The following users thanked this post: SpinalBlood