HTB TheNotebook. Совершаем побег из Docker, чтобы захватить рут - «Новости» » Самоучитель CSS
Меню
Наши новости
Учебник CSS

Невозможно отучить людей изучать самые ненужные предметы.

Введение в CSS
Преимущества стилей
Добавления стилей
Типы носителей
Базовый синтаксис
Значения стилевых свойств
Селекторы тегов
Классы
CSS3

Надо знать обо всем понемножку, но все о немногом.

Идентификаторы
Контекстные селекторы
Соседние селекторы
Дочерние селекторы
Селекторы атрибутов
Универсальный селектор
Псевдоклассы
Псевдоэлементы

Кто умеет, тот делает. Кто не умеет, тот учит. Кто не умеет учить - становится деканом. (Т. Мартин)

Группирование
Наследование
Каскадирование
Валидация
Идентификаторы и классы
Написание эффективного кода

Самоучитель CSS

Вёрстка
Изображения
Текст
Цвет
Линии и рамки
Углы
Списки
Ссылки
Дизайны сайтов
Формы
Таблицы
CSS3
HTML5

Новости

Блог для вебмастеров
Новости мира Интернет
Сайтостроение
Ремонт и советы
Все новости

Справочник CSS

Справочник от А до Я
HTML, CSS, JavaScript

Афоризмы

Афоризмы о учёбе
Статьи об афоризмах
Все Афоризмы

Видео Уроки


Видео уроки
Наш опрос



Наши новости

       
6-08-2021, 00:00
HTB TheNotebook. Совершаем побег из Docker, чтобы захватить рут - «Новости»
Рейтинг:
Категория: Новости

jwt_tool, либо онлай­новый сер­вис jwt.io. Я выб­рал jwt.io, что­бы ничего не уста­нав­ливать, и даль­ше буду исполь­зовать его.

В нашем вари­анте в заголов­ке при­сутс­тву­ет ключ kid, ука­зыва­ющий на при­ват­ный ключ, а в качес­тве под­писан­ных дан­ных зна­чат­ся исполь­зуемые при регис­тра­ции дан­ные — имя поль­зовате­ля и адрес элек­трон­ной поч­ты. Но в дан­ных при­сутс­тву­ет еще один ключ admin_cap, ско­рее все­го обоз­нача­ющий наличие при­виле­гий.


Раз­бор JWT с помощью jwt.io

Что делать даль­ше, понят­но — нуж­но изме­нить ключ, отве­чающий за наличие при­виле­гий адми­нис­тра­тора, под­писать новые дан­ные, сге­нери­ровать новый JWT и заменить ста­рый на сер­висе заметок. Наличие при­виле­гий адми­нис­тра­тора может дать ряд сво­их пре­иму­ществ — от чте­ния при­ват­ной информа­ции до уста­нов­ки на сер­вис раз­ных допол­нений (что, ско­рее все­го, при­ведет нас к уда­лен­ному выпол­нению кода).


С изме­нени­ем клю­ча admin_cap все ясно, прос­то выс­тавим еди­нич­ку. Но что сде­лать с под­писью? В заголов­ке ука­зан адрес при­ват­ного клю­ча, что натал­кива­ет на идею: сге­нери­ровать свою пару клю­чей для под­писи токена, раз­местить их на сво­ем веб‑сер­вере и затем в заголов­ке ука­зать адрес клю­ча на этом сер­вере. Сна­чала сге­нери­руем пару клю­чей, а потом переве­дем в фор­мат PEM.


ssh-keygen -t rsa -b4096 -m PEM -fprivKey.key
openssl rsa -inprivKey.key -pubout -outform PEM -outpubKey.key.pub
Ге­нери­рова­ние пары клю­чей

Те­перь запус­тим в той же дирек­тории прос­той веб‑сер­вер на осно­ве Python 3.


python3 -mhttp.server

По­ра генери­ровать новый токен. Изме­няем зна­чения по клю­чам admin_cap и kid, во вто­ром слу­чае ука­зыва­ем URL сге­нери­рован­ного клю­ча. Так­же встав­ляем сге­нери­рован­ные пуб­личный и при­ват­ный клю­чи в поля Verify Signature. Если ты все сде­лал пра­виль­но, то ниже токена уви­дишь над­пись Signature Verified.


Соз­дание нового токена

Встав­ляем новый токен в cookie, нап­ример с помощью рас­ширения для бра­узе­ра Cookie Editor, и обновля­ем стра­ницу. В окне запущен­ного веб‑сер­вера уви­дим обра­щение к фай­лу клю­ча, а в бра­узе­ре, если обно­вить стра­ницу, появит­ся ссыл­ка на админ­скую панель.


HTB TheNotebook. Совершаем побег из Docker, чтобы захватить рут - «Новости»
Ло­ги веб‑сер­вера
Раз­делы сай­та 

Точка опоры. Уязвимость при загрузке файлов


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


За­мет­ка об исправ­лении кон­фигура­ций

jwt_tool, либо онлай­новый сер­вис jwt.io. Я выб­рал jwt.io, что­бы ничего не уста­нав­ливать, и даль­ше буду исполь­зовать его. В нашем вари­анте в заголов­ке при­сутс­тву­ет ключ kid, ука­зыва­ющий на при­ват­ный ключ, а в качес­тве под­писан­ных дан­ных зна­чат­ся исполь­зуемые при регис­тра­ции дан­ные — имя поль­зовате­ля и адрес элек­трон­ной поч­ты. Но в дан­ных при­сутс­тву­ет еще один ключ admin_cap, ско­рее все­го обоз­нача­ющий наличие при­виле­гий. Раз­бор JWT с помощью jwt.ioЧто делать даль­ше, понят­но — нуж­но изме­нить ключ, отве­чающий за наличие при­виле­гий адми­нис­тра­тора, под­писать новые дан­ные, сге­нери­ровать новый JWT и заменить ста­рый на сер­висе заметок. Наличие при­виле­гий адми­нис­тра­тора может дать ряд сво­их пре­иму­ществ — от чте­ния при­ват­ной информа­ции до уста­нов­ки на сер­вис раз­ных допол­нений (что, ско­рее все­го, при­ведет нас к уда­лен­ному выпол­нению кода). С изме­нени­ем клю­ча admin_cap все ясно, прос­то выс­тавим еди­нич­ку. Но что сде­лать с под­писью? В заголов­ке ука­зан адрес при­ват­ного клю­ча, что натал­кива­ет на идею: сге­нери­ровать свою пару клю­чей для под­писи токена, раз­местить их на сво­ем веб‑сер­вере и затем в заголов­ке ука­зать адрес клю­ча на этом сер­вере. Сна­чала сге­нери­руем пару клю­чей, а потом переве­дем в фор­мат PEM. ssh- keygen -t rsa -b 4096 -m PEM -f privKey. key openssl rsa -in privKey. key -pubout -outform PEM -out pubKey. key. pub Ге­нери­рова­ние пары клю­чейТе­перь запус­тим в той же дирек­тории прос­той веб‑сер­вер на осно­ве Python 3. python3 -m http. server По­ра генери­ровать новый токен. Изме­няем зна­чения по клю­чам admin_cap и kid, во вто­ром слу­чае ука­зыва­ем URL сге­нери­рован­ного клю­ча. Так­же встав­ляем сге­нери­рован­ные пуб­личный и при­ват­ный клю­чи в поля Verify Signature. Если ты все сде­лал пра­виль­но, то ниже токена уви­дишь над­пись Signature Verified. Соз­дание нового токенаВстав­ляем новый токен в cookie, нап­ример с помощью рас­ширения для бра­узе­ра Cookie Editor, и обновля­ем стра­ницу. В окне запущен­ного веб‑сер­вера уви­дим обра­щение к фай­лу клю­ча, а в бра­узе­ре, если обно­вить стра­ницу, появит­ся ссыл­ка на админ­скую панель. Ло­ги веб‑сер­вера Раз­делы сай­та Точка опоры. Уязвимость при загрузке файлов Нам ста­ли дос­тупны для прос­мотра замет­ки адми­нис­тра­тора — мож­но поис­кать в них что‑нибудь инте­рес­ное. Но помимо это­го, откры­лась фор­ма для заг­рузки фай­лов. Сре­ди админ­ских заметок видим упо­мина­ние исполне­ния фай­лов PHP, а это потен­циаль­ный век­тор ата­ки. За­мет­ка об исправ­лении кон­фигура­ций

Теги: CSS

Просмотров: 519
Комментариев: 0:   6-08-2021, 00:00
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

 
Еще новости по теме:



Другие новости по теме:
Комментарии для сайта Cackle