11.12.2016 @ 17:31 Прохождение hackertest.net hackertest.net Данной статьёй я начинаю серию write-up’ов тренировочных площадок. Площадки могут быть как общего направления, так и конкретно под один тип уязвимости, например xss. Практически всегда я буду пользоваться Kali Linux и инструментами, входящими в него. И первой такой площадкой является сайт hackertest.net. Это 20 уровней, проверяющие ваши знания в области web-безопасности, javascript, немного стеганографии и логики в целом. 1. Level 1 Первый уровень располагается на главной странице сайта. Помимо стартового текста мы видим окно для ввода пароля. Открываем исходный код страницы в браузере (правая кнопка мыши — «view page source») <script language=JavaScript> { var a="null"; function check() { if (document.a.c.value == a) { document.location.href="http://www.hackertest.net/"+document.a.c.value+".htm"; } else { alert ("Try again"); } } } </script> <h1>Hacker Test</h1> <p>Test your hacking skills</p> Находим js-код, отвечающий за авторизацию. Видим, что если введём пароль «null», то попадём на следующий уровень hackertest.net/null.htm 2. Level 2 Сначала запрашивается пароль, вводим что-нибудь и получаем ошибку. Теперь открываем исходник и находим функцию авторизации. Пароль «l3l». Обновляем страницу и вводим его. 3. Level 3 Снова открываем исходники. В переменную pw присваивается значение параметра alink, используя DOM. <SCRIPT LANGUAGE="JavaScript"> function pass() { var pw, Eingabe; pw=window.document.alinkColor; Eingabe=prompt ("Please enter password"); if (Eingabe==pw) { window.location.href=String.fromCharCode(97,98,114,97,101)+".htm"; } else { alert("Try again"); } } </SCRIPT> Пароль — «#000000». Но есть второй вариант. С помощью таблицы ASCII раскодируем последовательность 97, 98, 114, 97, 101 — получаем ссылку на следующий уровень hackertest.net/abrae.htm 4. Level 4 Нам дана ссылка на следующalign=»justify»ий уровень. Но при переходе по ней запрашивается пароль, в случае неверного ввода нас возвращают обратно. Для получения исходников можно воспользоваться утилитой wget: wget http://www.hackertest.net/sdrawkcab.htm Альтернативный способ — открываем в firefox исходный код: view-source:http://www.hackertest.net/sdrawkcab.htm 5. Level 5 <script language=JavaScript> var pass, i; pass=prompt("Password: ",""); if (pass=="SAvE-as hELpS a lOt") { window.location.href="save_as.htm"; i=4; }else {alert("Try again"); window.location.href="abrae.htm";} // --> </script> Открываем файл sdrawkcab.htm и находим функцию авторизации. Пароль к следующему уровню — «SAvE-as hELpS a lOt». 6. Level 6 Открываем исходник — находим подключаемый скрипт psswd.js. Открываем его по адресу hackertest.net/psswd.js и находим пароль «hackertestz». 7. Level 7 Изучаем исходный код, находим ссылку на gif-файл. Открываем hackertest.net/images/included.gif и видим в правом нижнем углу данные для входа на следующий уровень. 8. Level 8 Вводим любые данные, попадаем на страницу hackertest.net/phat.php. В исходниках находим gif-файл. Открываем hackertest.net/images/phat.gif, в углу читаем подсказку, что нужно открыть как Photoshop-файл. Проходим по ссылке hackertest.net/images/phat.psd и открываем скачанный файл фотошопом или, например, gimp’ом. Убираем лишние слои и видим данные для входа на следующий уровень. 9. Level 9 Нам сказано взломать пароль. Значит, надо его сначала найти. Изучаем исходники — находим в комментариях пароль Z2F6ZWJydWg= . Знак равно подсказывает нам, что используется алгоритм base64. Декодируем на сайте base64.ru и получаем «gazebruh». Проходим на hackertest.net/gazebruh.php 10. Level 10 <td width="100%"><font size="2" face="Tahoma"><i>S</i>treet Korner is your own online <i>hack</i>er simulation. W<i>it</i>h over 100 levels that require different skills to get to another step of the game, this new real-life immitation will <i>h</i>elp you advance your security knowledge. This site will help you improve your JavaScript, PHP, HTML and graphic thinking in <i>a</i> fun way that will entertain any visitor! Have a spare minute? Log on! Each level wil<i>l</i> provide you with a new, harder clue to find a way to get to another level. Only <i>f</i>ew people have gotten to the end of the maze... Will you crack this site?</font></td> Изменился дизайн. Здесь нужно включить смекалку. Изучая исходники, можно заметить в тексте несколько тегов курсива. Попробуем из этих символов составить пароль — «shackithalf». Получаем некую ошибку. Если вы выделим текст, или откроем исходник — увидим невидимый текст с ссылкой на следующий уровень rofl.php 11. Level 11 Опять изучаем исходники и находим ссылку clipart.php 12. Level 12 Дело в трёх буквах… замечаем, что файл логотипа изменил расширение. Скачиваем картинку logo.jpg, увеличиваем и видим ссылку на следующий уровень. 13. Level 13 Находим файл hackertest.net/images/lvl13.gif, скачиваем и увеличиваем. Видим надпись 4.xml, открываем hackertest.net/4.xml, в этом файле видим строчку с 4xml.php, открываем его. 14. Level 14 Находим файл hackertest.net/images/bidvertiser.gif, скачиваем и открываем в gimp’e или фотошопе. На одном из слоёв видим надпись «Totally!!! php». hackertest.net/totally.php — следующий уровень. 15. Level 15 Проходим по ссылке, получаем ошибку. Тогда скачиваем этот файл — wget http://www.hackertest.net/images/pass2level16.jpg Открываем файл в обычном текстовом редакторе, видим надпись «Level 16: unavailable». Заходим на следующий уровень hackertest.net/unavailable/ 16. Level 16 В исходниках видим комментарий с указанием на следующий уровень — hackertest.net/unavailable/images/ . Тут находим ссылку на картинку bg.jpg . Скачиваем её, открываем текстовым редактором и находим ссылку Ducky.php — следующий уровень http://www.hackertest.net/unavailable/Ducky.php 17. Level 17 В исходниках всё ясно сказано. Узнаём IP: https://www.google.ru/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8&client=ubuntu#q=%D0%BC%D0%BE%D0%B9%20ip <font color="#FFFFFF">Password: your IP address</font><br> После ввода IP получили ошибку и ссылку на следующий уровень — http://www.hackertest.net/level18.shtml 18. Level 18 Нам сказано думать как нуб. Копаться в исходниках и увидеть там файл n00b.gif — неверный ход. Просто вбиваем пароль «password» и получаем ссылку на следующий уровень — /level19.shtml 19. Level 19 В исходниках находим файл hackertest.net/images/level20_pass.gif , скачиваем его и открываем gimp’ом или фотошопом — в слоях находим название следующего уровня. Переходим на http://www.hackertest.net/gazebruh2.htm 20. Level 20 <p align="center"><b><font face="Arial" size="2"> VldwSk5Gb3lVa2hQUjJSclRUSlJlbFJITlU5TlIwNTBWbTE0YTFJelVqSlpNakF4WWtkT2NFNVlWbUZYUmtZeVYycEtTbG95U25SUFZFNU5Xbm93T1QwOT09<br> <font color="#FFFFFF"> ^^^^^^^^^^ Change domain, add "22332" at the end, reach it and then get hold of ... ^^^^^^^^^^ </font></font></b></p> Последний уровень. Открываем исходный код. Обратим внимание на несколько строчек. Во-первых, Richard Cole первым прошёл этот уровень. Во-вторых, дана картинка hex.gif с hex-кодом. Далее, дан ещё один код, скорее всего зашифрованный в base64. Наконец, подсказка: «Изменить домен, добавить 22332 в конец, и затем достать…» Начнём с base64. Опытным путём выясняем, что это 4-кратная шифрация текста «Go to www.streetkorner.net/gb now.». При переходе на .streetkorner.net/gb нас направляют на facebook. Вспомним про подсказку, и попробуем изменить домен — http://www.hackertest.net/gb/ .Чего-то не хватает — допишем 22332. Нам выдаётся ошибка 505, но на самом деле сервер возвращает ответ 200. Может, это подсказка? http://www.hackertest.net/505/ — нам показывается ошибка 403, хотя сервер снова возвращает ответ 200. Идём дальше. На странице http://www.hackertest.net/505/403/ видим надпись «What is the answer to life, the universe, and everything?». Гугл на этот вопрос даёт волшебный ответ 42 =) На странице http://www.hackertest.net/42.php висит всего одна ссылка, ведущая на самую первую страницу. Не знаю, можно ли считать это финишом, если есть другие идеи — пишите =) Можно нагуглить некоторые ссылки по http://www.hackertest.net/gb22332/* ,но дальше раскрутить этот вектор я не смог. Да, в hex зашифровано некоторое поздравление =) leksadin 12170 Penetration testing Читать дальше >>