PDA

Просмотр полной версии : Лаборатория тестирования на проникновение «Test lab v.10» — за гранью хакерских возможностей (3)


<~DarkNode~>
13.12.2016, 16:07
Глава 3Предыдущая глава (https://forum.antichat.xyz/threads/558591/)
Следующая глава (https://forum.antichat.xyz/threads/558622/)
Оглавление

https://forum.antichat.xyz/attachments/4767916/img_096bfc0263.png

Приветствую вас колеги)
Сегодня продолжим наше завлекательно путешествие в корпоративной сети тестовой лаборатории и возьмем очередной токен от SSH машины.
Напомню вам что в предыдущих статьях я описывал атаки с внешнего периметра.

https://codeby.net/threads/laborato...10-za-granju-xakerskix-vozmozhnostej-1.58573/ (https://forum.antichat.xyz/threads/558573/)
https://codeby.net/threads/laborato...10-za-granju-xakerskix-vozmozhnostej-2.58591/ (https://forum.antichat.xyz/threads/558591/)

Сегодня мы уже с вами будем работать внутри корпоративной сети.
И так получил логин и пароль через SQL инъекцию,мы воспользовавшись логикой и предположили что человек может использовать одинаковые пароли(что весьма актуально в наше время,очень небольшой процент населения использует рандомные или разные пароли к разным ресурсам)
Подключились под этим логином и паролем к ссш машине немножко давайте погуляем по ней,посмотрим что к чему.
https://forum.antichat.xyz/attachments/4767916/2.png

В кронтабе (/etc/crontab) увы ничего ценного нету..
А вот папка /data вызывает интерес,так по умолчанию такой паки в корне нету...

https://forum.antichat.xyz/attachments/4767916/1.png

Так же может нам быть интересна папка /home
В которой содержатся домашние каталоги пользователей.
Также всех возможных пользователей можно посмотреть в /etc/passwd
С помощью команды:

Код:



cat /etc/passwd | grep bash | cut -d ':' -f 1


https://forum.antichat.xyz/attachments/4767916/5.png

Немного покопаясь в этих папках мы замечаем что у двух пользователей есть папки.ssh ,где наверняка могут лежать ssh ключи.Но доступ к ним увы ограничен.Эти пользователи a.modlin и rross.

https://forum.antichat.xyz/attachments/4767916/3.png


https://forum.antichat.xyz/attachments/4767916/4.png

Брут по ssh протоколу этих учеток увы не дал положительных результатов.
Повышение привилегий так же не получилось - машина пропатчина.
Перебор пароля от рута также безрезультатно.
Вспоминаем интересную нам папку /data
И идем туда...
Видим там папку users, зайти мы туда можем,но вывести содержимое увы нет...
https://forum.antichat.xyz/attachments/4767916/6.png

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

https://forum.antichat.xyz/attachments/4767916/7.png

Мы можем заходить в папки,но ничего не можем вывести... Как слепые котята...Хм...
Но если мы можем ходить по папкам внутри этой папки,но не знаем какие там есть папки на ум приходит брут директорий. В качестве словаря отлично подойдет common.txt из дирба(dirb - утилита для перебора папок и файлов на веб-сайтах ).
Но готовых программ под нашу ситуацию я пока не встречал,да и не особо нужно так как для этого мне пригодились мои базовые знание программирования на Python.
Набросал пару строчек кода,я написал простенький скриптец,который перебирает в цикле пути к файлам или папкам,и если путь существует то выведет его на экран.
Выглядит мой скрипт так:

Python:



#!/usr/bin/env python
import
os

path
=
'/data/users/'
users
=
[
'e.lindsey'
,
'a.modlin'
,
's.locklear'
,
'g.leone'
,
'm.howard'
,
'rross'
]
with
open
(
'common.txt'
,
'r'
)
as
fs
:
for
x
in
fs
.
readlines
(
)
:
for
user
in
users
:
curpath
=
path
+
user
+
'/'
+
x
.
strip
(
)
if
(
os
.
path
.
exists
(
curpath
)
)
:
print
curpath


https://forum.antichat.xyz/attachments/4767916/8.png

path -- известная нам часть пути(/data/users/)
users -- массив возможных пользователей
common.txt -- наш словарик для брута директорий
скрипт просто в цикле добавляет к известному нам пути/data/users/ имя пользователя из массива и потом добавляет построчно слово из словаря. Затем выполняется проверка пути,в случаи если путь существует выводить полный путь.

Передать словарь на ссш машину можно с помощью команды scp :

https://forum.antichat.xyz/attachments/4767916/9.png

Дальше запускаем наш скриптик и видем результат:

https://forum.antichat.xyz/attachments/4767916/10.png

Потыкая по папкам ,со временем замечаем что в одной папке пользователя rross-а есть возможность выполнить команду ls -la (просмотр содержание директории)
Там же находим наш токен от SSH-машины.

https://forum.antichat.xyz/attachments/4767916/11.png

Ну вот,токен взят) Я вас поздравляю)))
Но на этом мы не останавливаемся.Нужно двигаться дальше.
А как же нам атаковать остальные машины??? Помните я в первой части говорил что ssh машина представляет особый интерес ,так ее можно использовать как тунель во внутреннюю сеть.
Конечно же можно использоватьproxychains для атаки на хосты внутри сети,но лично мое мнение - это не совсем удобно,и мне гораздо удобнее использовать локальный проброс портов.
Прежде чем я начну - я всем настоятельно рекомендую посмотреть видео одного и разработчиков тестовой лабораторииАлександра Дмитренка (aka Sinister) о возможностях и тунелях SSH

После просмотра все станет ясным)
И так следующей комбинацией клавиш вызовем меню тунелей ssh:
SHIFT+~+C
Знакомимся со справкой:
https://forum.antichat.xyz/attachments/4767916/12.png

Напоминаю что наша SSH машина имеет IP адрес 172.16.0.8 в топологии сети:
https://forum.antichat.xyz/attachments/4767916/13.png


https://forum.antichat.xyz/attachments/4767916/img_a2fceae0ab.png

Давайте просканируем какуе нибудь машину на открытые порты:
К счастью на нашей машине есть установленный nmap и мы спокойно ним можем сканировать порты и полностью его использовать,но бывают ситуации когда нам нужно просканировать порты ,а nmap-а нету.Тогда в таких ситуациях можно легко обойтись NetCat-ом,и так же легко просканировать ним на открытые порты.
И так давайте просканим что то,например Hall-Of-Fame(зал славы):

https://forum.antichat.xyz/attachments/4767916/14.png


https://forum.antichat.xyz/attachments/4767916/15.png

Как видите результаты сканирования одинаковые как у нмапа так и у нетката)
Теперь все же вернемся к пробросам,давайте пробросим 80 порт от зала славы к себе на локалхост:

https://forum.antichat.xyz/attachments/4767916/16.png

формат проброса следующий:
-L Наш_Локальный_Порт:Айпи_Адр ес_Удаленной_Машины:Порт_Уд аленной_Машины
Дальше идем к себе на http://127.0.0.1:8080 и проверяем:
https://forum.antichat.xyz/attachments/4767916/17.png

На этом пока все) Приятной работы)

Предыдущая глава (https://forum.antichat.xyz/threads/558591/)

Следующая глава (https://forum.antichat.xyz/threads/558622/)

Оглавление

<~DarkNode~>
13.12.2016, 16:49
MAdDog719 сказал(а):

а NC установлен на всех дистрибутивах Linux?


не могу пока точно ответить. Но пока на тех которые я тестировал было всегда.

3nv00ch
14.12.2016, 06:39
Очень хочется продолжения

Faust
14.12.2016, 15:41
А как с помощью утилиты поиска find определить папку куда мой пользователь может записать файл.(Или другим скриптом)

<~DarkNode~>
14.12.2016, 16:15
faust сказал(а):

А как с помощью утилиты поиска find определить папку куда мой пользователь может записать файл.(Или другим скриптом)

самый простой способ:

Код:



find / -type d -maxdepth 2 -writable


-type d -- указать искать директории
-maxdepth 2 -- глубина поиска,для рекурсивного поиска
-writeable -- искать папки которые имеют права на запись
или так еще как вариант:

Код:



find / -type d -perm -o+w -exec ls -adl {} \;


Ну в любом случае всегда для записи доступны две папки:
/tmp/

/var/tmp/

Faust
14.12.2016, 16:47
~~DarkNode~~ сказал(а):

самый простой способ:

Код:



find / -type d -maxdepth 2 -writable


-type d -- указать искать директории
-maxdepth 2 -- глубина поиска,для рекурсивного поиска
-writeable -- искать папки которые имеют права на запись
или так еще как вариант:

Код:



find / -type d -perm -o+w -exec ls -adl {} \;


Ну в любом случае всегда для записи доступны две папки:
/tmp/

/var/tmp/


Спасибо.

<~DarkNode~>
17.12.2016, 22:14
suckmydick сказал(а):

e.lindsey@tl10-ssh:~$ ssh> -L 8080:192.168.0.8:80
-bash: -L: Permission denied
что делаю не так, не подскажите?



1)Попробуйте запустить ssh сессию от рута или через sudo (Отпишите в случае решение или не решение проблемы)

2)Еще возможно порт 8080 уже используется каким то другим процессом. ( В таком случае пришлите вывод команды "от рута" netstat -natlp)

<~DarkNode~>
18.12.2016, 11:10
suckmydick сказал(а):

1) не решился
2) вот скрин

хм...Странно... А пробовали любой другой локальный порт?

<~DarkNode~>
28.12.2016, 11:55
suckmydick сказал(а):

после переброса как найти токен?


какой? От ssh ? Я же писал об этом)

d3l373d
28.12.2016, 12:45
Бл*****ть, зачем я прочитал эту тему?! Зарекся же в твои топики с лабой не заходить. Уже 2 хинта знаю.

<~DarkNode~>
28.12.2016, 13:50
suckmydick сказал(а):

ну да, после переброса на сайте есть токен?


https://codeby.net/threads/laborato...10-za-granju-xakerskix-vozmozhnostej-5.58632/ (https://forum.antichat.xyz/threads/558632/)

d3l373d
28.12.2016, 17:56
mafiasepa сказал(а):

А как или с помощью чего подключитья к SHH машине?


putty, ssh в linux (apt-get install ssh), даже для хрома есть расширение. Короче любой SSH Client.

<~DarkNode~>
07.01.2017, 15:59
sergeyxz сказал(а):

В чем может быть причина?
e.lindsey@tl10-ssh:~$ ~C
-bash: ~C: command not found
~? то же самое

<~DarkNode~>
10.01.2017, 10:36
Sinistra сказал(а):

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


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

d3l373d
10.01.2017, 10:44
sam_po_sebe сказал(а):

Спасибо,продолжайте,мы это ценим,особенно про корпоративные сети)


Осталось 2 токена или 3. И давно райтапы по лабе есть если, если не терпится почитай на хабре. А вообще максимальный профит если бы ты прошел сам весь путь даже с хинтами, чем слепо повторять действия тс в консоли. Материал интересен тем, чтобы сравнить со своим решением или на худой конец подглядеть если на каком то этапе застрял.

<~DarkNode~>
10.01.2017, 12:13
SooLFaa сказал(а):

Осталось 2 токена или 3. И давно райтапы по лабе есть если, если не терпится почитай на хабре. А вообще максимальный профит если бы ты прошел сам весь путь даже с хинтами, чем слепо повторять действия тс в консоли. Материал интересен тем, чтобы сравнить со своим решением или на худой конец подглядеть если на каком то этапе застрял.


Мои врайтапы нацелены на ту аудиторию людей , которые начали осваивать ИБ, а не успешные пентестеры. К тому же ,нужно брать во внимания и то,что нас читают ученники школ. Для меня важно что бы молодеж с ранних лет понимала как находятся и эксплуатируются уязвимости в реальных условия а не как в фильмах про мега крутых хакеров.Практические примеры - дают куда больше профит в усваивании информаци нежели теория , которую трактуют в школах и других учебных заведений разых уровней акредитации. Еще профит от такого рода врайтапов - это то , что при прохождении человек начинает понимать в какие стороны ему нужно развиватся.
Что касается врайтапа на хабре - да он есть, но очень кратенько комментирован и нету возможности пообщатся с автором в случае возникновения каких то трудностей при прохождении. Там никто не заинтересован в помощи новичкам.

d3l373d
10.01.2017, 12:23
~~DarkNode~~ сказал(а):

Мои врайтапы нацелены на ту аудиторию людей , которые начали осваивать ИБ, а не успешные пентестеры. К тому же ,нужно брать во внимания и то,что нас читают ученники школ. Для меня важно что бы молодеж с ранних лет понимала как находятся и эксплуатируются уязвимости в реальных условия а не как в фильмах про мега крутых хакеров.Практические примеры - дают куда больше профит в усваивании информаци нежели теория , которую трактуют в школах и других учебных заведений разых уровней акредитации. Еще профит от такого рода врайтапов - это то , что при прохождении человек начинает понимать в какие стороны ему нужно развиватся.
Что касается врайтапа на хабре - да он есть, но очень кратенько комментирован и нету возможности пообщатся с автором в случае возникновения каких то трудностей при прохождении. Там никто не заинтересован в помощи новичкам.


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

sunwillnotrise
15.01.2017, 17:11
столкнулся с проблемой, что не запускается скрипт, пишет permission denied, понимаю, что происходит из-за нехватки прав. Если я правильно понял, моя ошибка, что я не правильно сохраняю скрипт в директории. Из-за хайда не могу посмотреть ваш способ. Прошу не кидаться камнями, все когда-то учились) Спасибо заранее)
P.S. Не люблю флудить для набивки постов, поэтому прошу подсказать так, если не затруднит




sunwillnotrise сказал(а):

столкнулся с проблемой, что не запускается скрипт, пишет permission denied, понимаю, что происходит из-за нехватки прав. Если я правильно понял, моя ошибка, что я не правильно сохраняю скрипт в директории. Из-за хайда не могу посмотреть ваш способ. Прошу не кидаться камнями, все когда-то учились) Спасибо заранее)
P.S. Не люблю флудить для набивки постов, поэтому прошу подсказать так, если не затруднит



Через chmod решил проблему, так что не актуально

XuliNam
27.03.2017, 23:57
почему сочитание клавишь SHIFT+~+C, практически не срабатывает??
спс разобрался))) нубик еще я!!!

XuliNam
27.04.2017, 19:31
Inject0r сказал(а):

И почему не срабатывает?) Я не разобрался)
Кажется понял. Для выполнения этой команды необходимо находится в папке, которая принадлежит пользователю и группе root и при этом для этой папки должен стоять атрибут x для всех пользователей. Если честно мне не до конца понятна механика этой особенности.
не, я ошибся. Комбинация не сработает, если мы написали какую-либо команду и стерли ее. Хз почему, но не срабатывает. Но если мы выполним любую другую команду, например, ls, и сразу после нее выполним комбинацию, то она сработает. Вместо ls можно clear написать. Какая-то странная механика.


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

XuliNam
28.04.2017, 07:54
Inject0r сказал(а):

Не разложено там по полочкам. В выводе справки по ~? в конце на английском написано, что escape-символ сработает только при открытии новой строки. В видео на это акцент не делается, момент очень не очевидный, я заметил только с 3 раза )


Значит доходит до меня по другому)))

id2746
15.09.2017, 16:18
ShurikEEN сказал(а):

Отличная статья!


вместо своих 11 сообщений "классная статья" тут принято ставить "мне нравится", а так можете бан получить

ShurikEEN
15.09.2017, 17:25
id2746 сказал(а):

вместо своих 11 сообщений "классная статья" тут принято ставить "мне нравится", а так можете бан получить


Я понял, больше не буду спамить ;-)