Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Mercury Emulator V2.3 [Plus] [New RSA] [Love Locks] [Group Forums] [ETC]

Status
Not open for further replies.

AWA

Master Summoner
Loyal Member
Joined
Feb 24, 2008
Messages
595
Reaction score
389
I am an butt, but at least I'm honest.





This exploit is one I've fixed, I posted the cause in an earlier post, but you can fix it by changing the runFastQuery to:

Code:
queryreactor3.setQuery("UPDATE bots SET automatic_chat = @autochat, speaking_interval = @[I][B][URL="http://forum.ragezone.com/members/791041.html"]inter[/URL][/B][/I]val, mix_phrases = @[I][B][URL="http://forum.ragezone.com/members/1333445824.html"]mix[/URL][/B][/I]_phrases WHERE id = @[I][B][URL="http://forum.ragezone.com/members/780131.html"]bot[/URL][/B][/I]id");


queryreactor3.addParameter("autochat", text2);
queryreactor3.addParameter("interval", Convert.ToInt32(value));
queryreactor3.addParameter("mix_phrases", text3);
queryreactor3.addParameter("botid", num);
queryreactor3.runQuery();
:congrats: GJ on the fix! The original was both unparamized and decompiled code, real quality!
 
Elite Diviner
Joined
Mar 6, 2013
Messages
404
Reaction score
104
And yet here you are, using his work for free... What a hypocrite!

If you can fix this holes/exploits/clean it up/etc... Then do it, but don't bash this guy's work, specially when you're using his work.

1. He never bashed this guys work he had to fix the exploit as Tardis was exploited and we found out the hard way it had this exploit
2. Jonteh was posting the fix so no one else went through this
3. stop sitting on rz going on at peoples posts like this when all he was doing was helping and pointing out A FACT
4. The rest of you should run the fix like NOW so this doesn't happen to you.
 
Newbie Spellweaver
Joined
Oct 31, 2012
Messages
74
Reaction score
0
Hi ;-)

Image of group in profile of user, not appears.
How to fix it?
7eQjstx - Mercury Emulator V2.3 [Plus] [New RSA] [Love Locks] [Group Forums] [ETC] - RaGEZONE Forums


Thanks brothers!
 

Attachments

You must be registered for see attachments list
Newbie Spellweaver
Joined
Dec 22, 2007
Messages
31
Reaction score
2
1. He never bashed this guys work he had to fix the exploit as Tardis was exploited and we found out the hard way it had this exploit
2. Jonteh was posting the fix so no one else went through this
3. stop sitting on rz going on at peoples posts like this when all he was doing was helping and pointing out A FACT
4. The rest of you should run the fix like NOW so this doesn't happen to you.

I'm not sure what you're trying to achieve with this, but we already discussed and moved on.
 
Joined
Dec 16, 2011
Messages
1,994
Reaction score
633
90b2a2b89a8a4404b815343f54ddfadc - Mercury Emulator V2.3 [Plus] [New RSA] [Love Locks] [Group Forums] [ETC] - RaGEZONE Forums
happening when using your exploit "fix, @Jonteh
Oh jesus, learn to apply patches, if you can't even do that don't own a hotel..

Cheers for the patch Jonty. Appreciated! :fanny:



For anyone who had the same problem as me when applying Jonty's patch, try this:
Code:
 queryreactor3.setQuery("UPDATE bots SET automatic_chat = @autochat, speaking_interval = [USER=791041]inter[/USER]val, mix_phrases = [USER=1333445824]mix[/USER]_phrases WHERE id = [USER=780131]bot[/USER]id");


                                {
                                    queryreactor3.addParameter("autochat", text2);
                                    queryreactor3.addParameter("interval", Convert.ToInt32(value));
                                    queryreactor3.addParameter("mix_phrases", text3);
                                    queryreactor3.addParameter("botid", num);
                                    queryreactor3.runQuery();
                                }

Tested and works.
 

Attachments

You must be registered for see attachments list
Joined
Apr 30, 2007
Messages
2,339
Reaction score
1,547
Oh jesus, learn to apply patches, if you can't even do that don't own a hotel..

Cheers for the patch Jonty. Appreciated! :fanny:



For anyone who had the same problem as me when applying Jonty's patch, try this:
Code:
 queryreactor3.setQuery("UPDATE bots SET automatic_chat = @autochat, speaking_interval = @[I][B][URL="http://forum.ragezone.com/members/791041.html"]inter[/URL][/B][/I]val, mix_phrases = @[I][B][URL="http://forum.ragezone.com/members/1333445824.html"]mix[/URL][/B][/I]_phrases WHERE id = @[I][B][URL="http://forum.ragezone.com/members/780131.html"]bot[/URL][/B][/I]id");


                                {
                                    queryreactor3.addParameter("autochat", text2);
                                    queryreactor3.addParameter("interval", Convert.ToInt32(value));
                                    queryreactor3.addParameter("mix_phrases", text3);
                                    queryreactor3.addParameter("botid", num);
                                    queryreactor3.runQuery();
                                }

Tested and works.

You're very welcome Heisenberg. I'll be posting more as I find them.
 
Experienced Elementalist
Joined
Dec 16, 2012
Messages
293
Reaction score
31
Com'on Jonteh, how do you get it working? Never been good at C# because I have always used Phoenix earlier, and that was developed by Aaron.
 
Skilled Illusionist
Joined
Jul 30, 2008
Messages
340
Reaction score
50
Well Jonteh you're fix didn't work. Apply'd it good, and the little witch 'awa' still make's himself admin and dropped my user table.
 
Junior Spellweaver
Joined
Aug 20, 2013
Messages
114
Reaction score
10
You're very welcome Heisenberg. I'll be posting more as I find them.

Would be nice if you could say where we can find the "runFastquery" for the people who are still starters when it comes to editing emulators..
 
Junior Spellweaver
Joined
Aug 20, 2013
Messages
114
Reaction score
10
Search the entire project for the run fast query and its contents. Its the packet handler for updating bot speech though

Thanks for fixing and helping the community mate.
 
Joined
Apr 30, 2007
Messages
2,339
Reaction score
1,547
Another exploit found, thanks to AWA:

Find:

Code:
internal void ChangeName()

Replace that void with:

Code:
internal void ChangeName()
		{
			string text = this.Request.PopFixedString();
			string username = this.Session.GetHabbo().Username;


			checked
			{
				using (IQueryAdapter queryreactor = MercuryEnvironment.GetDatabaseManager().getQueryreactor())
				{
					queryreactor.setQuery("SELECT username FROM users WHERE username=@name LIMIT 1");
					queryreactor.addParameter("name", text);
					string [USER=560981]String[/USER] = queryreactor.getString();


					if (string.IsNullOrWhiteSpace [USER=560981]String[/USER]) || username.ToLower() == text.ToLower())
					{
                        queryreactor.setQuery("UPDATE rooms SET owner = [USER=571372]newo[/USER]wner WHERE owner = [USER=1333464006]old[/USER]owner");
                        queryreactor.addParameter("newowner", text);
                        queryreactor.addParameter("oldowner", Session.GetHabbo().Username);
                        queryreactor.runQuery();


                        queryreactor.setQuery("UPDATE users SET username = [USER=376652]newname[/USER], last_name_change = [USER=1333424529]timestamp[/USER] WHERE id = [USER=1335]user[/USER]id");
                        queryreactor.addParameter("newname", text);
                        queryreactor.addParameter("timestamp", MercuryEnvironment.GetUnixTimestamp() + 43200);
                        queryreactor.addParameter("userid", Session.GetHabbo().Username);
                        queryreactor.runQuery();


						this.Session.GetHabbo().LastChange = MercuryEnvironment.GetUnixTimestamp() + 43200;
						this.Session.GetHabbo().Username = text;
						this.Response.Init(Outgoing.UpdateUserNameMessageComposer);
						this.Response.AppendInt32(0);
						this.Response.AppendString(text);
						this.Response.AppendInt32(0);
						this.SendResponse();
						this.Response.Init(Outgoing.UpdateUserDataMessageComposer);
						this.Response.AppendInt32(-1);
						this.Response.AppendString(this.Session.GetHabbo().Look);
						this.Response.AppendString(this.Session.GetHabbo().Gender.ToLower());
						this.Response.AppendString(this.Session.GetHabbo().Motto);
						this.Response.AppendInt32(this.Session.GetHabbo().AchievementPoints);
						this.SendResponse();
						this.Session.GetHabbo().CurrentRoom.GetRoomUserManager().UpdateUser(username, text);
						if (this.Session.GetHabbo().CurrentRoom != null)
						{
							this.Response.Init(Outgoing.UserUpdateNameInRoomMessageComposer);
							this.Response.AppendUInt(this.Session.GetHabbo().Id);
							this.Response.AppendUInt(this.Session.GetHabbo().CurrentRoom.RoomId);
							this.Response.AppendString(text);
						}
						foreach (RoomData current in this.Session.GetHabbo().UsersRooms)
						{
							current.Owner = text;
							current.SerializeRoomData(this.Response, false, this.Session, true);
							Room room = MercuryEnvironment.GetGame().GetRoomManager().GetRoom(current.Id);
							if (room != null)
							{
								room.Owner = text;
							}
						}
						foreach (MessengerBuddy current2 in this.Session.GetHabbo().GetMessenger().friends.Values)
						{
							if (current2.client != null)
							{
								foreach (MessengerBuddy current3 in current2.client.GetHabbo().GetMessenger().friends.Values)
								{
									if (current3.mUsername == username)
									{
										current3.mUsername = text;
										current3.Serialize(this.Response, current2.client);
									}
								}
							}
						}
					}
				}
			}
		}
 
Custom Title Activated
Loyal Member
Joined
Jun 5, 2010
Messages
1,582
Reaction score
160
Oh jesus, learn to apply patches, if you can't even do that don't own a hotel..

Cheers for the patch Jonty. Appreciated! :fanny:



For anyone who had the same problem as me when applying Jonty's patch, try this:
Code:
 queryreactor3.setQuery("UPDATE bots SET automatic_chat = @autochat, speaking_interval = [USER=791041]inter[/USER]val, mix_phrases = [USER=1333445824]mix[/USER]_phrases WHERE id = [USER=780131]bot[/USER]id");


                                {
                                    queryreactor3.addParameter("autochat", text2);
                                    queryreactor3.addParameter("interval", Convert.ToInt32(value));
                                    queryreactor3.addParameter("mix_phrases", text3);
                                    queryreactor3.addParameter("botid", num);
                                    queryreactor3.runQuery();
                                }

Tested and works.

Cant find it
 
Status
Not open for further replies.
Back
Top