1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/wizardforcel-mst-sec-lecture-notes

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
漏洞篇 弱口令.md 7.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 27.11.2024 00:48 d9e190e

Уязвимость слабых паролей: классификация и примеры

Автор: gh0stkey, редактор: летающий дракон

Причины возникновения

Не существует строгого и точного определения слабого пароля. Обычно считается, что пароль легко угадать или взломать с помощью специальных инструментов. Слабые пароли обычно состоят из простых цифр и букв, таких как «123», «abc» и т. д., поскольку их легко взломать.

Слабые пароли можно легко взломать с помощью инструментов для взлома паролей.

Вред

Примером может служить проникновение в систему видеонаблюдения на нескольких заправочных станциях компании PetroChina. Через них можно получить доступ к личной информации. Также злоумышленники могут использовать эту уязвимость для отключения системы наблюдения и совершения незаконных действий.

Классификация

Обычные слабые пароли

Обычные слабые пароли — это распространённые пароли, такие как те, которые собраны в списке Top 100 наиболее часто используемых слабых паролей. Вот некоторые из них:

123456, a123456, 123456a, 5201314, 111111, woaini1314, qq123456, 123123, 000000, 1qaz2wsx, 1q2w3e4r, qwe123, 7758521, 123qwe, a123123, 123456aa, woaini520, woaini, 100200, 1314520, woaini123, 123321, q123456, 123456789, 123456789a, 5211314, asd123, a123456789, z123456, asd123456, aa123456, zhang123, aptx4869, 123123a, 1q2w3e4r5t, 1qazxsw2, 5201314a, 1q2w3e, aini1314, 31415926, q1w2e3r4, 123456qq, woaini521, 1234qwer, a111111, 520520, iloveyou, abc123, 110110, 111111a, 123456abc, w123456, 7758258, 123qweasd, 159753, qwer1234, a000000, qq123123, zxc123, 123654, abc123456, 123456q, qq5201314, 12345678, 000000a, 456852, as123456, 1314521, 112233, 521521, qazwsx123, zxc123456, abcd1234, asdasd, 666666, love1314, QAZ123, aaa123, q1w2e3, aaaaaa, a123321, 123000, 11111111, 12qwaszx, 5845201314, s123456, nihao123, caonima123, zxcvbnm123, wang123, 159357, 1A2B3C4D, asdasd123, 584520, 753951, 147258, 1123581321, 110120, qq1314520.

Для веб-сайтов административные учётные записи часто используют следующие пароли:

— admin; — manager; — admin123; — admin888; — admin666; — ...

Конкретные типы учётных записей имеют разные слабые пароли:

  • База данных (phpmyadmin): — учётная запись: root; — пароль: root, root123, 123456.
  • Tomcat: — учётные записи: admin, tomcat, manager; — пароли: admin, tomcat, admin123, 123456, manager.
  • Jboss: — учётные записи: admin, jboss, manager; — пароли: admin, jboss, manager, 123456.
  • Weblogic: — учётные записи: weblogic, admin, manager; — пароли: weblogic, admin, manager, 123456.

Условные слабые пароли

Условный слабый пароль связан с личной информацией пользователя, такой как день рождения, номер мобильного телефона, имя и фамилия. Например, можно использовать этот сайт для генерации условных слабых паролей.

Например, мы знаем некоторую информацию о человеке:

— имя: Ван Сяо Эр; — адрес электронной почты: 412391882@qq.com; — английское имя: twowang; — номер телефона: 110.

Мы можем ввести эту информацию на сайте и нажать кнопку «Отправить».

Затем мы получим наиболее вероятный пароль.

Если нажать «Просмотреть больше», то можно получить дополнительные слабые пароли.

Практика

Вот пример кода, который имитирует систему бэкенда. Он использует форму для входа в систему.

<?php
function showForm() { ?>
<form method="POST" action="./lesspass.php">
    <input type="text" name="un" />
    <input type="password" name="pw" />
    <input type="submit" value="登录" />
</form> <?php 
}

$un = @$_POST['un'];
$pw = @$_POST['pw'];
if($un == '' && $pw == '') 
    showForm();
else if($un == 'admin' && $pw == 'admin888') 
    echo '登录成功';
else {
    showForm();
    echo '登录失败';
}

Первая строка до седьмой строки образуют HTTP-форму. Мы видим, что эта форма использует метод POST для отправки данных на эту страницу, а поля формы un и pw соответствуют переменным PHP $un и $pw.

С девятой по десятую строку данные из запроса извлекаются из тела запроса.

С одиннадцатой по восемнадцатую строку выполняется проверка имени пользователя и пароля. Если оба значения пусты, то предполагается, что это запрос на отображение страницы, и форма отображается снова. Если имя пользователя admin, а пароль admin888, то отображается сообщение об успешном входе в систему, иначе отображается сообщение о неудачном входе.

В реальном коде имя пользователя и пароль берутся из базы данных, но принцип остаётся тем же.

Сохраните код как lesspass.php и разверните его. Затем перейдите по адресу http://localhost/lesspass.php.

Теперь попробуем войти в систему без знания реального пароля. Для учётной записи администратора имя пользователя обычно admin, а пароли могут быть admin, admin123, admin888, 123456, 123abcadmin и так далее.

Сначала введите admin и admin, но попытка не удалась.

Далее введите admin и admin123. Опять неудача. Наконец, попробуйте admin и admin888. Успех.

Можно увидеть, что принцип взлома заключается в переборе возможных вариантов пароля, и успех зависит от того, есть ли пароль в вашем словаре.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/wizardforcel-mst-sec-lecture-notes.git
git@api.gitlife.ru:oschina-mirror/wizardforcel-mst-sec-lecture-notes.git
oschina-mirror
wizardforcel-mst-sec-lecture-notes
wizardforcel-mst-sec-lecture-notes
master