Guest User

Untitled

a guest
Feb 20th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.80 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Diagnostics;
  6.  
  7. namespace ManagementSuite
  8. {
  9. class MSSQLOperations : MSSQL
  10. {
  11. public MSSQLOperations(string server, string username, string password, string database)
  12. : base(server, username, password, database)
  13. {
  14.  
  15. }
  16. }
  17.  
  18. class MySQLOperations : MySQL
  19. {
  20. public MySQLOperations(string server, string username, string password, string database)
  21. : base(server, username, password, database)
  22. {
  23.  
  24. }
  25.  
  26. //Get MD% Hash for passwords
  27. public string GetMD5Hash(string input)
  28. {
  29. System.Security.Cryptography.MD5CryptoServiceProvider x = new System.Security.Cryptography.MD5CryptoServiceProvider();
  30. byte[] bs = System.Text.Encoding.UTF8.GetBytes(input);
  31. bs = x.ComputeHash(bs);
  32. System.Text.StringBuilder s = new System.Text.StringBuilder();
  33. foreach (byte b in bs)
  34. {
  35. s.Append(b.ToString("x2").ToLower());
  36. }
  37.  
  38. string password = s.ToString();
  39. return password;
  40. }
  41.  
  42. //Take bad words out of string
  43. public string Sanatize(string Input)
  44. {
  45. string[] BadCharacters = { "'", "\"", "%", "*", "#", "(", ")", ";", "--", "/", "NULL", "TRUNCATE", "DROP", "UPDATE", "SELECT", "LOAD FILE", "LOAD INFILE", "group_concat", "extractvalue", "0x27" };
  46.  
  47. foreach (string Character in BadCharacters)
  48. {
  49. Input = Input.Replace(Character, "");
  50. }
  51.  
  52. return Input;
  53. }
  54.  
  55. public bool AdminLogin(string PacketData)
  56. {
  57. string[] Data = PacketData.Split('&');
  58. string User = Data[0];
  59. string password = Data[1];
  60. string Salt = "kikugalanet";
  61. User = Sanatize(User);
  62.  
  63. Console.WriteLine("Username: {0}\nPassword: {1}", User, password);
  64.  
  65. string[] Password = ReturnQuery("SELECT flyff_passwordhash FROM flyff_accounts WHERE flyff_accountname='" + User + "'");
  66. string[] Auth = ReturnQuery("SELECT flyff_authoritylevel FROM flyff_accounts WHERE flyff_accountname='" + User + "'");
  67.  
  68. if (Password[0] == GetMD5Hash(Salt + password) && Auth[0] == "120")
  69. {
  70. return true;
  71. }
  72. else
  73. {
  74. return false;
  75. }
  76. }
  77.  
  78. public bool Login(string PacketData)
  79. {
  80. string[] Data = PacketData.Split('\t');
  81. string User = Data[0];
  82. string password = Data[1];
  83. string Salt = "kikugalanet";
  84. User = Sanatize(User);
  85. string[] Password = ReturnQuery("SELECT flyff_passwordhash FROM flyff_accounts WHERE flyff_accountname='" + User + "'");
  86.  
  87. if (Password[0] == GetMD5Hash(Salt + password))
  88. {
  89. return true;
  90. }
  91. else
  92. {
  93. return false;
  94. }
  95. }
  96.  
  97. public void Register(string PacketData)
  98. {
  99. string[] Data = PacketData.Split('\t');
  100.  
  101. string Salt = "kikugalanet";
  102. string Account = Data[0];
  103. string Password = Data[1];
  104. string Email = Data[2];
  105.  
  106. Account = Sanatize(Account);
  107. Password = GetMD5Hash(Salt + Password);
  108. Email = Sanatize(Email);
  109.  
  110. NonReturnQuery("INSERT INTO flyff_accounts ('flyff_username', 'flyff_passwordhash', 'flyff_email') VALUES ('" + Account + "', '" + Password + "', '" + Email + "')");
  111.  
  112. ConsoleOp.Email("Welcome!", "Welcome to our server " + Account + ". Your password is " + Password, Email);
  113. }
  114.  
  115. public void MakeGM(string PacketData)
  116. {
  117. string accName = Sanatize(PacketData);
  118. NonReturnQuery("UPDATE flyff_accounts SET flyff_authoritylevel = '80' WHERE flyff_accountname = '" + accName + "'");
  119. }
  120.  
  121. public void ChangePassword(string PacketData)
  122. {
  123. string[] Data = PacketData.Split('\t');
  124.  
  125. string Salt = "kikugalanet";
  126. string Account = Data[0];
  127. string Password = Data[1];
  128. Account = Sanatize(Account);
  129. string PasswordHash = GetMD5Hash(Salt + Password);
  130.  
  131. NonReturnQuery("UPDATE flyff_accounts SET flyff_passwordhash = '" + PasswordHash + "' WHERE flyff_accountname = '" + Account + "'");
  132.  
  133. string[] Email = ReturnQuery("SELECT flyff_email FROM flyff_accounts WHERE flyff_accountname='" + Account + "'");
  134.  
  135. ConsoleOp.Email("Password update", "Your new password is " + Password + " . Have a great day!", Email[0]);
  136. }
  137.  
  138. public void ChangeEmail(string PacketData)
  139. {
  140. string[] Data = PacketData.Split('\t');
  141.  
  142. string Account = Data[0];
  143. string Email = Data[1];
  144.  
  145. Account = Sanatize(Account);
  146. Email = Sanatize(Email);
  147.  
  148. NonReturnQuery("UPDATE flyff_accounts SET flyff_email = '" + Email + "' WHERE flyff_accountname = '" + Account + "'");
  149.  
  150. ConsoleOp.Email("E-Mail update", "Thanks for letting us know about your new e-mail! Have a great day!", Email);
  151. }
  152.  
  153. public void MakePlayer(string PacketData)
  154. {
  155. string accName = Sanatize(PacketData);
  156. NonReturnQuery("UPDATE flyff_accounts SET flyff_authoritylevel = '70' WHERE flyff_accountname = '" + accName + "'");
  157. }
  158.  
  159. public void BanAcc(string PacketData)
  160. {
  161. string accName = Sanatize(PacketData);
  162. NonReturnQuery("UPDATE flyff_accounts SET flyff_authoritylevel = '0' WHERE flyff_accountname = '" + accName + "'");
  163. string[] Email = ReturnQuery("SELECT flyff_email FROM flyff_accounts WHERE flyff_accountname='" + accName + "'");
  164. //Email
  165. ConsoleOp.Email("Account status", "Your account has been temporarily banned while our team carries about an investigation. Please respond to this e-mail with character name and cluster so we may resolve this faster!", Email[0]);
  166. }
  167.  
  168. public void UnBanAcc(string PacketData)
  169. {
  170. string accName = Sanatize(PacketData);
  171. NonReturnQuery("UPDATE flyff_accounts SET flyff_authoritylevel = '70' WHERE flyff_accountname = '" + accName + "'");
  172. string[] Email = ReturnQuery("SELECT flyff_email FROM flyff_accounts WHERE flyff_accountname='" + accName + "'");
  173. //Email
  174. ConsoleOp.Email("Account status", "Your account has been unbanned. Enjoy the game! Please don't respond to this e-mail unless you have further issues.", Email[0]);
  175. }
  176. }
  177. }
Add Comment
Please, Sign In to add comment