Взлом

HTB Atom. Ломаем приложение на electron-builder через систему обновлений


Содержание статьи

  • Разведка
  • Сканирование портов
  • Тестирование SMB
  • Точка входа
  • Точка опоры
  • Продвижение
  • Повышение привилегий

В этой статье мы ата­куем при­ложе­ние через уяз­вимость в electron-builder, порабо­таем с базой дан­ных Redis и рас­шифру­ем пароль от Kanban. Все эти вещи встре­тят­ся нам при про­хож­дении сред­ней по слож­ности машины с пло­щад­ки Hack The Box под наз­вани­ем Atom. Прис­тупим!

warning

Под­клю­чать­ся к машинам с HTB рекомен­дует­ся толь­ко через VPN. Не делай это­го с компь­юте­ров, где есть важ­ные для тебя дан­ные, так как ты ока­жешь­ся в общей сети с дру­гими учас­тни­ками.

 

Разведка

 

Сканирование портов

До­бав­ляем в /etc/hosts IP машины:

10.10.10.234 schooled.htb

И ска­ниру­ем ее пор­ты в два про­хода при помощи Nmap:

#!/bin/bashports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr 'n' ',' | sed s/,$//)nmap -p$ports -A $1

Ре­зуль­тат работы скрип­та

На­ходим шесть откры­тых пор­тов:

  • порт 80 — веб‑сер­вер Apache 2.4.46;
  • порт 135 — служ­ба уда­лен­ного вызова про­цедур (Microsoft RPC);
  • порт 443 — веб‑сер­вер Apache 2.4.46 + SSL (HTTPS);
  • порт 445 — SMB;
  • порт 5985 — служ­ба уда­лен­ного управле­ния WinRM;
  • порт 6379 — Redis.

Раз есть сайт, начинать осмотр нуж­но имен­но с него. Здесь могут най­тись и точ­ки вхо­да в виде раз­ных уяз­вимос­тей, и прос­то важ­ная инфа — к при­меру, име­на поль­зовате­лей. И конеч­но, осмотр сай­та дает воз­можность понять, с какими тех­нологи­ями при­дет­ся стол­кнуть­ся.

Стар­товая стра­ница сай­та

На пер­вый взгляд, ничего инте­рес­ного на сай­те нет, кро­ме воз­можнос­ти ска­чать архив с каким‑то прог­рам­мным обес­печени­ем.

 

Тестирование SMB

Те­перь про­веря­ем, что нам может дать SMB. Под­клю­чив­шись к нему, находим общую дирек­торию Software_Updates, которая дос­тупна без авто­риза­ции. И c помощью SMBMap сра­зу прос­матри­ваем рекур­сивно все содер­жимое (опция -R).

smbmap -H atom.htb -u anonymous

Про­вер­ка ано­ним­ного дос­тупаsmbmap -H atom.htb -u anonymous -R Software_Updates

По­луче­ние содер­жимого обще­го ресур­са Software_Updates

Нам дос­тупны три одно­тип­но наз­ванные дирек­тории client, а так­же файл UAT_Testing_Procedures.pdf. Давай‑ка ска­чаем его пос­мотреть. Для это­го будем исполь­зовать smbclient.

smbclient "\10.10.10.237Software_Updates"get UAT_Testing_Procedures.pdf

По­луче­ние фай­ла UAT_Testing_Procedures.pdf

Со­дер­жимое фай­ла UAT_Testing_Procedures.pdf

До­кумент — это опи­сание при­ложе­ния для соз­дания заметок под наз­вани­ем Heed. А раз­работан этот Heed с помощью electron-builder. Так­же в докумен­те отме­чен план перехо­да от одно­уров­невого тол­сто­го кли­ента на пол­ноцен­ную дву­хуров­невую архи­тек­туру.

 

Точка входа

Что очень важ­но, в докумен­тации изло­жена и тех­ничес­кая сто­рона работы с при­ложе­нием. Так, в начале работы прог­рамму тре­бует­ся ском­пилиро­вать и уста­новить. Затем упо­мина­ется сер­вер обновле­ний. Что­бы обно­вить­ся, нуж­но помес­тить обновле­ния в одну из папок client (теперь ста­новит­ся понят­но их пред­назна­чение). При этом обновле­ния будут про­ходить некую про­вер­ку кон­тро­ля качес­тва. Про­цесс про­вер­ки уста­нов­ленных обновле­ний нас не инте­ресу­ет.

Здесь уже виден сле­дующий век­тор ата­ки: на сер­вере работа­ет при­ложе­ние, которое авто­мати­чес­ки обновля­ется, а мы име­ем дос­туп к дирек­тории, отку­да оно берет обновле­ния. Нуж­но лишь разоб­рать­ся, в каком виде тре­бует­ся пред­ста­вить обновле­ния, а так­же что делать с их про­вер­кой.

Источник: xakep.ru

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *