Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> jak usunąć salt + sh1, Chciał bym stworzyć proste logowanie
lipek80
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 26.03.2014

Ostrzeżenie: (0%)
-----


Witam

Chciał bym się pozbyć zabezpieczenia salt z poniższego kodu. Chciał bym, aby można było się zalogować na stronie za pośrednictwem hasła które jest zapisane w bazie danych. Nie musi być zakodowane.


  1. <?php
  2.  
  3. define('AL_ADMIN', 256);
  4.  
  5. $AL_NAME = array(
  6. AL_ADMIN => 'Administrator'
  7. );
  8.  
  9. $REGISTER_DENY = array();
  10. $REGISTER_DENY[] = "root";
  11. $REGISTER_DENY[] = "admin";
  12. $REGISTER_DENY[] = "administrator";
  13. $REGISTER_DENY[] = "moderator";
  14. $REGISTER_DENY[] = "system";
  15. $REGISTER_DENY[] = "serwis";
  16.  
  17.  
  18. include(dirname(__FILE__) . '/../salt/salt.php');
  19.  
  20. function user_login($login = null, $password = null, $encrypted = false) {
  21.  
  22. global $db;
  23.  
  24. if (func_num_args() == 0) {
  25.  
  26. if (!my_login() || !my_password())
  27. return 'Nie odnaleziono informacji o koncie w bieżącej sesji';
  28.  
  29. $login = my_login();
  30. $password = my_password();
  31. } else
  32. $password = $encrypted ? $password : salt($password);
  33.  
  34. $user = $db->query("SELECT * FROM `users` WHERE LOWER(`login`) = LOWER('" . $db->escape_string($login) . "') AND `haslo` = '" . $db->escape_string($password) . "'")->fetch_assoc();
  35.  
  36. if (!empty($user)) {
  37. if (!empty($user['zablokowany']))
  38. return 'Konto zablokowane';
  39. else if (!empty($user['usuniety']))
  40. return 'Konto usunięte';
  41. } else
  42. return 'Niepoprawny login / hasło';
  43.  
  44. if (!my_id()) {
  45.  
  46. my_logintime(time());
  47. my_lastactivity(time());
  48.  
  49.  
  50. $set = array();
  51. $set[] = "`ostatnia_aktywnosc` = '" . datetimeS(my_lastactivity()) . "'";
  52.  
  53. $db->query("UPDATE `users` SET " . implode(',', $set) . " WHERE `id` = {$user['id']}");
  54. }
  55.  
  56. my_id($user['id']);
  57. my_login($user['login']);
  58. my_password($user['haslo']);
  59.  
  60. return true;
  61. }
  62.  
  63. function loggedin() {
  64.  
  65. if (user_login() === true)
  66. return true;
  67.  
  68. return false;
  69. }
  70.  
  71. function user_logout() {
  72.  
  73. if (loggedin()) {
  74. my_id(null);
  75. my_login(null);
  76. my_password(null);
  77. my_logintime(null);
  78. my_lastactivity(null);
  79. }
  80. }
  81.  
  82. function my_id($value = false) {
  83. /*
  84. * @params: (none/false): return value
  85. * @params: (null): unset value
  86. * @params: (mixed) value: set (int) value
  87. */
  88.  
  89. if ($value === null)
  90. unset($_SESSION['my_id']);
  91. else if ($value !== false)
  92. $_SESSION['my_id'] = (int) $value;
  93.  
  94. return isset($_SESSION['my_id']) ? $_SESSION['my_id'] : false;
  95. }
  96.  
  97. function my_login($value = false) {
  98. /*
  99. * @params: (none/false): return value
  100. * @params: (null): unset value
  101. * @params: (mixed) value: set value
  102. */
  103.  
  104. if ($value === null)
  105. unset($_SESSION['my_login']);
  106. else if ($value !== false)
  107. $_SESSION['my_login'] = $value;
  108.  
  109. return isset($_SESSION['my_login']) ? $_SESSION['my_login'] : false;
  110. }
  111.  
  112. function my_password($value = false) {
  113. /*
  114. * @params: (none/false): return value
  115. * @params: (null): unset value
  116. * @params: (mixed) value: set value
  117. */
  118.  
  119. if ($value === null)
  120. unset($_SESSION['my_password']);
  121. else if ($value !== false)
  122. $_SESSION['my_password'] = $value;
  123.  
  124. return isset($_SESSION['my_password']) ? $_SESSION['my_password'] : false;
  125. }
  126.  
  127. function my_logintime($value = false) {
  128. /*
  129. * @params: (none/false): return value
  130. * @params: (null): unset value
  131. * @params: (mixed) value: set value
  132. */
  133.  
  134. if ($value === null)
  135. unset($_SESSION['my_logintime']);
  136. else if ($value !== false)
  137. $_SESSION['my_logintime'] = $value;
  138.  
  139. return isset($_SESSION['my_logintime']) ? $_SESSION['my_logintime'] : false;
  140. }
  141.  
  142. function my_lastactivity($value = false) {
  143. /*
  144. * @params: (none/false): return value
  145. * @params: (null): unset value
  146. * @params: (mixed) value: set value
  147. */
  148.  
  149. if ($value === null)
  150. unset($_SESSION['my_lastactivity']);
  151. else if ($value !== false)
  152. $_SESSION['my_lastactivity'] = $value;
  153.  
  154. return isset($_SESSION['my_lastactivity']) ? $_SESSION['my_lastactivity'] : false;
  155. }
  156.  
  157. function my_level() {
  158.  
  159. if (!loggedin())
  160. return false;
  161.  
  162. global $db;
  163.  
  164. $r = $db->query("SELECT `level` FROM `users` WHERE `id` = " . my_id())->fetch_assoc();
  165.  
  166. return $r ? $r['level'] : false;
  167. }
  168.  
  169. function user_session() {
  170.  
  171. global $db;
  172.  
  173. if (!my_logintime() || !my_lastactivity())
  174. return false;
  175.  
  176. if (my_id()) {
  177. my_lastactivity(time());
  178. $db->query("UPDATE `users` SET `ostatnia_aktywnosc` = '" . datetimeS(my_lastactivity()) . "' WHERE `id` = " . my_id());
  179. } else
  180. return false;
  181.  
  182. return true;
  183. }
  184.  
  185. function get_user($id, $opts = null) {
  186.  
  187. $opts['where'][] = "`id` = '" . (int) $id . "'";
  188.  
  189. $r = get_user_list($opts);
  190.  
  191. return isset($r[0]) ? $r[0] : $r;
  192. }
  193.  
  194. function get_user_list($opts = null) {
  195.  
  196. $opts['select'][] = "*";
  197. $opts['from'][] = "`users`";
  198. if (empty($opts['order']))
  199. $opts['order'][] = "`id` DESC";
  200.  
  201. return get_db_data($opts);
  202. }
  203.  
  204. user_session();
  205. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
lipek80
post
Post #2





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 26.03.2014

Ostrzeżenie: (0%)
-----


przejąłem administrację nad pewną stroną, a nie mam dostępu do panelu administratora.

Mam dostęp do bazy, do FTP ale co mi po tym jak panel admina jest zablokowany hasłem.

Chyba, ze jest jakiś sposób aby to obejść(IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 11:13