Сегодня мы разберем очередную уязвимость в роутере D-Link. На этот раз дыру нашли в прошивке модели DWR-932B, и о патче для нее на момент написания статьи ничего не известно. Также рассмотрим небольшую (по сложности, а не по разрушительной силе) уязвимость в тонких клиентах на HP ThinPro OS.

 

Повышение привилегий в HP ThinPro OS

 

CVSSv2

Нет

 

BRIEF

Дата релиза: 3 октября 2016 года
Авторы: @malerisch и @vhutsebaut
CVE: CVE-2016-2246

В HP ThinPro OS sudo сконфигурирован таким образом, что позволяет неавторизованному пользователю с помощью утилиты Keyboard Layout провести атаку типа «повышение привилегий» и получить доступ с правами администратора.

Keyboard Layout (находится в /usr/bin/hptc-keyboard-layout) запускается как привилегированный процесс и при этом доступен любому пользователю из интерфейса HP ThinPro Kiosk. Такой пользователь может исследовать систему и восстановить оригинальный файл /etc/shadow, который позволит установить новый пароль администратора в системе.

 

EXPLOIT

Для успешной эксплуатации у атакующего должен быть физический доступ к HP Thin OS Pro в режиме Kiosk. При этом предполагается, что у него нет аккаунта, и он не знает пароль администратора, но админский пароль при этом задан в системе.

Для воспроизведения уязвимости открой панель управления приложениями и выбери пункт Keyboard Layout (расположение кнопки и вид интерфейса могут различаться в разных версиях системы, но эта утилита доступна любым пользователям в режиме Kiosk).

Пример интерфейса панели управления и расположения Keyboard Layout
Пример интерфейса панели управления и расположения Keyboard Layout

Далее нужно кликнуть на иконку Print File, чтобы вызвать диалоговое окно.

Расположение иконки Print File
Расположение иконки Print File

Теперь нам нужно открыть диалоговое окно (значок с тремя точками) для выбора расположения файла output file. Так как это приложение работает с правами администратора, то мы можем путешествовать по системе через запущенное диалоговое окно без каких-либо проблем.

Чтобы получить нормальный доступ администратора, перейдем в директорию /etc/ и переименуем файлы:

  • /etc/shadow в /etc/shadow-last-modified-by-admin;
  • /etc/shadow- в /etc/shadow.

Затем переключим пользователя на администратора, и у нас появится окно установки нового пароля. Выбирай, какой тебе милее, и доступ к режиму администратора Kiosk получен!

Меню переключения между пользователями
Меню переключения между пользователями

Интерфейс изменится, но, помимо этого, ты можешь запустить терминал для проверки доступных команд.

Запущенный xterminal с правами администратора
Запущенный xterminal с правами администратора

Авторы эксплоита записали видео с демонстрацией уязвимости.

 

TARGETS

HP ThinPro OS (HP ThinPro 4.4, HP ThinPro 5.0, HP ThinPro 5.1, HP ThinPro 5.2, HP ThinPro 5.2.1, HP ThinPro 6.0, HP ThinPro 6.1).

 

SOLUTION

Производитель выпустил исправление.

 

Многочисленные уязвимости в D-Link DWR-932B

 

CVSSv2

Нет

 

BRIEF

Дата релиза: 28 сентября 2016 года
Автор: @PierreKimSec
CVE: нет

Роутер D-Link DWR-932
Роутер D-Link DWR-932

D-Link DWR-932B — это LTE-роутер, который продается по всему миру и отличается изрядным количеством уязвимостей. Он основан на известной модели роутеров компании Quanta, что позволило ему унаследовать некоторые дыры от старшего собрата. Небольшой обзор уязвимостей в этом устройстве уже публиковался ранее, но исправляют их не так быстро.

Все исследования проводились на прошивке DWR-932_fw_revB_2_02_eu_en_20150709.zip. Были найдены уязвимости следующих типов:

  • бэкдор-аккаунты;
  • бэкдор;
  • WPS PIN по умолчанию;
  • слабая генерация WPS PIN;
  • утечка аккаунта No-IP;
  • многочисленные уязвимости в демоне HTTP (qmiweb);
  • удаленная загрузка прошивки (FOTA, Firmware Over The Air);
  • плохое решение по обеспечению безопасности;
  • удалена безопасность в UPnP.

Автор исследования пишет, что в лучшем случае такое количество уязвимостей обусловлено просто некомпетентностью, в худшем — это закладки, сделанные умышленно. Мы рассмотрим лишь самые интересные из них.

 

EXPLOIT

Бэкдор-аккаунты

По умолчанию на роутере запущены telnetd и SSHd. При этом telnetd работает, даже если об этом нет никакой информации.

user@kali:~$ cat ./etc/init.d/start_appmgr
...
#Sandro { for telnetd debug...
start-stop-daemon -S -b -a /bin/logmaster
#if [ -e /config2/telnetd ]; then
  start-stop-daemon -S -b -a /sbin/telnetd
#fi
#Sandro }
...

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

admin@homerouter:~$ grep admin /etc/passwd
admin:htEcF9TWn./9Q:168:168:admin:/:/bin/sh
admin@homerouter:~$

Пароль для аккаунта admin — это, как ни смешно, admin. Информацию об этом можно найти в файле /bin/appmgr, используя средства для реверсинга (автор эксплоита использовал IDA).

Функция установки пароля admin для пользователя admin
Функция установки пароля admin для пользователя admin

Обнаружился и пользователь root:

user@kali:~$ cat ./etc/shadow
root:aRDiHrJ0OkehM:16270:0:99999:7:::
daemon:*:16270:0:99999:7:::
bin:*:16270:0:99999:7:::
sys:*:16270:0:99999:7:::
sync:*:16270:0:99999:7:::
games:*:16270:0:99999:7:::
man:*:16270:0:99999:7:::
lp:*:16270:0:99999:7:::
mail:*:16270:0:99999:7:::
news:*:16270:0:99999:7:::
uucp:*:16270:0:99999:7:::
proxy:*:16270:0:99999:7:::
www-data:*:16270:0:99999:7:::
backup:*:16270:0:99999:7:::
list:*:16270:0:99999:7:::
irc:*:16270:0:99999:7:::
gnats:*:16270:0:99999:7:::
diag:*:16270:0:99999:7:::
nobody:*:16270:0:99999:7:::
messagebus:!:16270:0:99999:7:::
avahi:!:16270:0:99999:7:::
admin@kali:~$

Загружаем хеш в старый добрый John the Ripper:

user@kali:~$ john -show shadow+passwd
admin:admin:admin:/:/bin/sh
root:1234:16270:0:99999:7:::

2 password hashes cracked, 0 left
user@kali:~$

В результате получаем пары логин-пароль: admin:admin и root:1234. Весело смеемся.

Продолжение статьи доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все статьи на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта, включая эту статью. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов. Подробнее о подписке

Вариант 2. Купи одну статью

Заинтересовала статья, но нет возможности оплатить подписку? Тогда этот вариант для тебя! Обрати внимание: этот способ покупки доступен только для статей, опубликованных более двух месяцев назад.


1 комментарий

Подпишитесь на ][, чтобы участвовать в обсуждении

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

Check Also

Tips’n’Tricks из арсенала андроидовода. Самые интересные, полезные и нестандартные трюки с Android

Многие годы мы рассказывали про самые разные способы оптимизировать, модифицировать и твик…