Skip to content
La2Base
Home
DownloadsWikiForumFAQ
Search
ruen
Sign up Login
HomeFilesWikiLogin
  • Home
  • Downloads
  • Wiki
  • FAQ
  • Contact Us
  • About
  • Rules
  • Privacy
  • Terms of Service

© 2026 la2base.com · All rights reserved

ruen
Forum/Веб обвязка/Расшифровка Пароля Из Базы Данных
Search

Расшифровка Пароля Из Базы Данных

17 replies682 viewsCurrently viewing: 1
S
SunnyX
· 01/13/2008, 08:42 AM

Приветствую!
Как мы все знаем при регистрации все пароли шифруются по какомe-то алгоритму и записываются в базу данных l2db, таблицу user_auth, ячейку password. Тип столбца password - binary(32).
Собственно вопрос: Если у меня есть доступ к базе данных каким образом можно расшифровать эти пароли?

0
DarkLex
DarkLex

User

Новичок

Posts: 3

На форуме с: 05/08/2007

Репутация: +42

Рейтинг: 0

· 01/13/2008, 10:11 AM

Никаким. Это не шифровка, а хеш. Хеш не обратим. Так что только перебором.

0
S
SunnyX
· 01/13/2008, 11:26 AM

У этого хеша имя имеется? Ну там blowfish или md5?

0
DarkLex
DarkLex

User

Новичок

Posts: 3

На форуме с: 05/08/2007

Репутация: +42

Рейтинг: 0

· 01/13/2008, 12:57 PM

Насколько я знаю какой-то свой алгоритм.
Самый простой способ узнать - скачать любой скрипт регистрации и посмотреть как пароль приводится к виду, записываемому в базу.

P.S blowfish как раз алгоритм шифрования, он обратим.

0
S
SunnyX
· 01/13/2008, 03:01 PM

Код
function encrypt($str){
  $key = array();
  $dst = array();
  $i = 0;
  $nBytes = strlen($str);
  while ($i < $nBytes){
    $i++;
    $key[$i] = ord(substr($str, $i - 1, 1));
    $dst[$i] = $key[$i];
   }  
  $rslt = $key[1] + $key[2]*256 + $key[3]*65536 + $key[4]*16777216;
  $one = $rslt * 213119 + 2529077;
  $one = $one - intval($one/ 4294967296) * 4294967296;

  $rslt = $key[5] + $key[6]*256 + $key[7]*65536 + $key[8]*16777216;
  $two = $rslt * 213247 + 2529089;
  $two = $two - intval($two/ 4294967296) * 4294967296;

  $rslt = $key[9] + $key[10]*256 + $key[11]*65536 + $key[12]*16777216;
  $three = $rslt * 213203 + 2529589;
  $three = $three - intval($three/ 4294967296) * 4294967296;

  $rslt = $key[13] + $key[14]*256 + $key[15]*65536 + $key[16]*16777216;
  $four = $rslt * 213821 + 2529997;
  $four = $four - intval($four/ 4294967296) * 4294967296;

  $key[4] = intval($one/16777216);        
  $key[3] = intval(($one - $key[4] * 16777216) / 65535);
  $key[2] = intval(($one - $key[4] * 16777216 - $key[3] * 65536) / 256);
  $key[1] = intval(($one - $key[4] * 16777216 - $key[3] * 65536 - $key[2] * 256));

  $key[8] = intval($two/16777216);    
  $key[7] = intval(($two - $key[8] * 16777216) / 65535);
  $key[6] = intval(($two - $key[8] * 16777216 - $key[7] * 65536) / 256);
  $key[5] = intval(($two - $key[8] * 16777216 - $key[7] * 65536 - $key[6] * 256));

  $key[12] = intval($three/16777216);    
  $key[11] = intval(($three - $key[12] * 16777216) / 65535);
  $key[10] = intval(($three - $key[12] * 16777216 - $key[11] * 65536) / 256);
  $key[9] = intval(($three - $key[12] * 16777216 - $key[11] * 65536 - $key[10] * 256));

  $key[16] = intval($four/16777216);    
  $key[15] = intval(($four - $key[16] * 16777216) / 65535);
  $key[14] = intval(($four - $key[16] * 16777216 - $key[15] * 65536) / 256);
  $key[13] = intval(($four - $key[16] * 16777216 - $key[15] * 65536 - $key[14] * 256));

  $dst[1] = $dst[1] ^ $key[1];

  $i=1;
  while ($i<16){
    $i++;
    $dst[$i] = $dst[$i] ^ $dst[$i-1] ^ $key[$i];
   }

  $i=0;
  while ($i<16){
    $i++;
    if ($dst[$i] == 0)
     {
      $dst[$i] = 102;
     }
   }

  $encrypt = "0x";
  $i=0;

  while ($i<16){
    $i++;
    if ($dst[$i] < 16){
      $encrypt = $encrypt . "0" . dechex($dst[$i]);
     }else{
      $encrypt = $encrypt . dechex($dst[$i]);
     }
   }
  return $encrypt;
}
Эта функция выполняет шифрование.
Попробую найти ответ на форумах программистов.
Спасибо за ответы.

0
Димка
Димка

User

Новичок

Posts: 2

На форуме с: 05/09/2007

Репутация: +51

Рейтинг: 0

· 01/17/2008, 09:14 AM

Если найдешь, то отпишись тут

0
John
John

User

Новичок

Posts: 2

На форуме с: 08/06/2007

Репутация: +8

Рейтинг: 0

· 01/23/2008, 10:14 AM

Если н найдет, то оно и к лучшему мейби...

Reborn my home.
Icq: 6104443
L2J Client full editor, designer.

0
Алексей
Алексей

User

Участник

Posts: 46

На форуме с: 09/25/2007

Репутация: +78

Рейтинг: 0

· 01/24/2008, 05:31 AM

Chronikus: Если н найдет, то оно и к лучшему мейби...

Cогласен... мало ли кто сюда "случайно" попадет...

0
R
ri6666ik
· 03/11/2008, 11:12 AM

На сайте есть админка, по которой можно етот пароль заменить на другой, пока что ет единственный способ можно изменить пасс, а рассшифровка хрен его знает)))

0
A
axelll

User

Ветеран

Posts: 577

На форуме с: 07/15/2007

Репутация: -99999999

Рейтинг: 0

· 03/11/2008, 11:54 AM

написал один умный админ) ну все админы немного читеры ;)

Расшифровываем хэши


Итак вам в руки каким-либо образом попала база одного из серверов.
Смотрим и ничё не понимаем. Видим примерно следующее:

Код
converge_id      converge_email      converge_joined      converge_pass_hash      converge_pass_salt
2      [email protected]     0      e88a10000d355195e2e7228724b29d7e      pJQyF
3      [email protected]      1078248493      2b7062a2badf5da2be52d9c107ce78f7      {V3NO
5      [email protected]      1078256517      aa21438827c25c98c2c9737f0c42aad9      ]MD$A
11      [email protected]      1078794630      377d769f3fda84bd950257cd75b4f518      Fs]*2


оО. Что это? А это упёртая с форума база логинов и паролей.
Но где же логины и пароли?! Попробуем разобраться.
Судя по верхней строчке шифрование паролей производилось с солью.
Этот метод разработал какой-то умный дядька. Это нам знать вообще необязательно,
достаточно знать принцип:
берется Хэш от пароля, потом перется хэш от соли, значения складываются и от полученного опять берётся хэш.
Вот такая ж.... штука.
Раскодировать это понятное дело невозможно.
Значит по словарику берём возможные пароли, кодируем по этому принципу и сверяем результат.
Этим и займёмся.
Приводим с помощью подручных средств файл с паролями в следующий вид:

Код
2:[email protected] :0:e88a10000d355195e2e7228724b29d7e:pJQyF
3:[email protected]:1078248493:2b7062a2badf5da2be52d9c107ce78f7:{V3NO
5:[email protected]:1078256517:aa21438827c25c98c2c9737f0c42aad9:]MD$A
11:[email protected]:1078794630:377d769f3fda84bd950257cd75b4f518:Fs]*2

Открываем программку PasswordPro и грузим туда списочек.
Теперь делаем пробный заезд и включаем "Предварительную атаку"
И через 5-10 секунд имеем пасс "220044" от аккаунта под номером 3.
Дальше не долго думая включаем перебор шестизначных цифр и через 20 секунд уже владеем пассом "030487" от номера "5".
Дальнейшее на ваше усмотрение, все варианты атак - дело вашей фантазии.
Пробуйте, экспериментируйте.
Очень рекомендую пройтись по маске дат рождения. Золотое дно.

Такс... Дальше идём на форум который наметили жертвой, регимся, открываем пункт информации о пользователях и тыркаем в любого.
Бла-бла-бла... ага. В адресной строке видим его ID. Подставляем туда например "3". Enter. Так... Юзер "Trew" бла-бла-бла.
Выходим собой и заходим Юзер "Trew" - pass "220044". Вуаля.
Еще у нас мыло юзверя, не факт что пасс подойдёт, но попробовать стоит.
Если подходит, ретрив делаем пасса.
Вот примерный план действий имея базу акк-хэш форума.

Имея пасс-хэш сервера всё гораздо интереснее =)


ВАЖНОЕ ДОПОЛНЕНИЕ:

Если форумная база, то скорее всего это MD5 с солью.
Если база ява-сервера, то MySQL5.

0
A
antarius1

Author

Новичок

Posts: 1

На форуме с: 03/21/2008

Рейтинг: 0

· 03/23/2008, 06:29 PM

Брутят обычно это md5 берётся словарь у меня он 6 гигов весит собирался 2 года,и брутится некоторые могут не брутится всё зависит от словаря.

0
A
Artem

User

Участник

Posts: 31

На форуме с: 02/10/2008

Репутация: +23

Рейтинг: 0

· 03/23/2008, 09:48 PM

Зачем ломать голову если пароли надо сравнивать
1.создаем форму ввода пароля
2.делам функцию сравнения пароля(где берется пароль из формы кодируется в бинарный и сравнивается из базы)
Все а там что надо то иделается.
СПАСИБА)

0
S
Sergey

Author

Участник

Posts: 32

На форуме с: 07/24/2007

Репутация: +26

Рейтинг: 0

· 03/24/2008, 02:13 PM

pogranichnik.gif

Войдите и наберите 1 постов

0
R
remarka

User

Участник

Posts: 26

На форуме с: 08/25/2007

Репутация: +7

Рейтинг: 0

· 03/26/2008, 12:57 PM

Скинь хеш мне в пм,я тебе за 1 секунду ровно расшифрую.

0
B
bod

Author

Новичок

Posts: 1

На форуме с: 03/31/2008

Рейтинг: 0

· 03/31/2008, 07:09 AM

на OFF используется хеширование SHA1, если не ошибаюсь

0
Z
Zeppelin

User

Новичок

Posts: 12

На форуме с: 09/17/2007

Репутация: +49

Рейтинг: 0

· 03/31/2008, 07:26 AM

сравниваются два хэша хэш из базы и хэш из словоря и ищется первое правильное совпадение. И совершенно не важно пароль это пользователя или нет, главное что хэш совпадает, а значит он валидный. Вот поэтому пароли и должны быть не "словарными". Иначе они подбираются мгновенно.

0
C
ComandorUA

Author

Новичок

Posts: 6

На форуме с: 05/13/2007

Рейтинг: 0

· 05/04/2008, 01:35 PM

метод алгоритма шифрования какой 256 бит?

0
Topic is closed for replies