Как найти и устранить SQL-уязвимость на сайте. Найти уязвимость сайта онлайн


XSS Сканер

Инструменты, предлагаемые нами

Дорогие друзья, только мы способны предоставить в Ваше распоряжение множество действительно полезных, а порой и откровенно незаменимых вещей для веб-мастера, начиная с утилит и информеров, и заканчивая самыми мощными на данный момент инструментами для поиска уязвимостей. Так, одна из самых популярных утилит под названием "Find-Link", поможет Вам обнаружить и удалить все скрытые ссылки. А утилита, известная как "Find-Port", найдет все открытые порты на Вашем сервере. Возможно, ранее Вы уже не раз искали определенное место в коде, тратя на поиски большое количество времени - в таком случае утилита "Find-String" здорово упростит Вам эту задачу. К другим полезным и эффективным сервисам, предлагаемым нами, можно отнести упрощенный HTML валидатор, который проверит Ваш сайт на ошибочные HTML теги. В наличии также имеется и сетевой сканер "Find-XSS-Fire", выполненный как Add-on для браузера Firefox: он осуществит проверку любого проекта на XSS, SQL injection (SQL инъекция), PHP including. Но самый мощный и полезный для любого веб-мастера инструмент (главный из всех представленных на нашем ресурсе) - это сканер кода. Его основное преимущество в сравнении с прочими сетевыми сканерами заключается в том, что он проверяет непосредственно сам код. Именно поэтому данный инструмент способен обнаружить такие уязвимости, которые другие обычные сканеры попросту не смогут найти. Надеемся, что наш ресурс и все предлагаемые нами инструменты смогут решить все проблемы с безопасностью Ваших проектов.

С чего начать

Вы решили воспользоваться предлагаемыми нами инструментами для поиска и устранения уязвимостей, но не знаете с чего именно начать? В таком случае предлагаем ознакомиться с поэтапной инструкцией комплексной проверки Вашего проекта. Для начала проведите проверку вебсайта при помощи XSS и SQL injection сканера и исправьте обнаруженные уязвимости. После исправления еще раз проверьте Ваш проект, но на этот раз примените Find-XSS-Fire сканер. В случае обнаружения новых уязвимостей устраните и их. Затем мы рекомендуем Вам проверить проект на наличие открытых портов - сделать это можно при помощи утилиты Find-Port. Внимание: если Вы не осведомлены о предназначении какого-либо порта, то лучше обратитесь за помощью и разъяснением к техподдержке Вашего хостинга. После выполнения указанной выше последовательности попробуйте провести проверку прав на папки и файлы, ведь зачастую ошибки в правах приводят к возможности "заливки" шеллов (анг. schell). В этом Вам поможет специальная утилита Find-Info. Вдобавок к этому не будет лишним использовать утилиту Find-Date - она проверит даты изменения файлов и папок, что в свою очередь поможет в обнаружении шеллов, ведь в случае их наличия, даты файлов будут отличаться. Более того, мы искренне рекомендуем провести при помощи нашего валидатора проверку Вашего вебсайта на HTML ошибки, а также воспользоваться полезной утилитой Find-Link, которая поможет найти и удалить ненужные внешние ссылки. Не повторяйте чужие ошибки, используйте предлагаемые нами инструменты и позаботьтесь о безопасности своего проекта прямо сейчас.

Почему именно мы

Довольно часто нам задают один и тот же вопрос - почему XSS и SQL injection сканер пользуется такой огромной популярностью у клиентов? Что ж, ответ на самом деле крайне прост - по той причине, что предлагаемый нами сканер уязвимостей сайта крайне эффективен и безопасен, быстро выполняет поставленные перед ним задачи и отличается интуитивной понятностью управления. В чем заключается эффективность? В том, что наш сканер проводит проверку и находит уязвимости в разы лучше всех прочих "сканеров кода", доступных в интернете. Действительно ли он так безопасен? Да, клиент сканера работает на Java, поэтому Вам не потребуется загружать в него исходники. Правда ли, что проверка проходит очень быстро? Мы можем это гарантировать, ведь наш сканер выполняет свои задачи в онлайн-режиме и проверяет мегабайты кода за считанные секунды. Насколько просто работать с данным инструментом? Чтобы начать сканирование, вам потребуется всего лишь два клика. Более того, отчет проверки предложит Вам функцию автоматического исправления уязвимостей. Серьезно переживаете за безопасность своего проекта? Доверьтесь нашему XSS и SQL injection сканеру, проведите анализ сайта на уязвимости и все Ваши тревоги уйдут в прошлое.

Не повторяйте чужие ошибки

К сожалению, большинство веб-мастеров впервые сталкиваются с такой существенной проблемой как "уязвимости" лишь тогда, когда их сайты подвергаются взлому. Довольно печален и тот факт, что немалый процент разработчиков со стажем осведомлены о серьезности данной угрозы, но по тем или иным причинам оставляют ее без должного внимания. Что ж, причины этому явлению могут быть самые разные: тут стоит отметить и техническую сложность данного вопроса, и извечную надежду на "авось", а порой и откровенную лень или нежелание исправлять что-либо в своей работе. Тем не менее, как мы уже и сказали чуть выше, рано или поздно практически все без исключения веб-мастера сталкиваются с угрозой безопасности для своих проектов. Позволим себе заметить, что самым верным решением будет побороть свою инертность и как можно раньше озадачиться вопросом "что можно сделать?". Ну а в этом Вам как раз и поможет наш ресурс, предлагающий точные и надежные инструменты для качественной проверки сайтов, а также для поиска и самостоятельного исправления уязвимостей на них. Не секрет, что порой у некоторых клиентов попросту не хватает времени или сил на полноценное проведение подобной работы - в таких ситуациях мы предлагаем свои профессиональные услуги (более подробную информацию о них Вы сможете найти в соответствующем разделе "Услуги"). Не стоит повторять чужих ошибок, давайте прямо сейчас позаботимся о безопасности Ваших проектов и их защите от XSS атак.

Что такое уязвимости, их некоторые типы

Дорогие друзья, чуть выше мы уделили достаточно внимания описанию функций наших сетевых сканеров, поэтому давайте сейчас немного поговорим об уязвимостях, поиск которых и есть то, для чего они и были созданы. Уязвимости подразделяются на разные типы, и злоумышленники используют их в разных целях. В качестве первого примера можно привести XSS (Cross site scripting) уязвимость, применяемую обычно для кражи cookie. Задействуя ее, хакер может получить доступ к логинам и паролям, зачастую хранящимся в cookie (в незашифрованном виде). Более того, если XSS не пассивная, то при помощи этой уязвимости можно провести dos (не путайте с ddos) атаку. Dos атака способна серьезно нарушить работу Вашего сайта, например, замедлить его работу, а в отдельных случаях может и вовсе его заблокировать. Используя данную уязвимость, злоумышленник также может подменить любой баннер на взломанном сайте. На самом деле возможностей для причинения ущерба Вашему проекту очень много, ведь при помощи javascript, используемого для этих целей, можно сделать практически все. Отдельного внимания достойны уязвимости, известные как SQL injection. Их отличие от XSS заключается в том, что в первом случае атакуется клиент (открытая страница в браузере), а при применении SQL injection атакуется база данных. Используя эту уязвимость, опытный хакер сможет, например, украсть всю базу данных сайта (со всеми логинами, паролями, email и прочим), или же (если у Вас свой интернет-магазин) подменить реквизиты для оплаты - тогда деньги клиентов начнут поступать на его счет. Однако самой опасной из уязвимостей является так называемая PHP injection. Ее грамотное использование вкупе с бездействием или некомпетентностью админа откроет хакеру полный доступ к любому проекту. Ну вот мы и рассказали Вам про самые основные типы уязвимостей; на деле их существует гораздо больше, но, к счастью, они и встречаются в разы реже. Тем не менее, теперь Вы можете быть полностью спокойны, ведь предлагаемый нами XSS и SQL injection сканер способен обнаружить любые виды уязвимостей.

Как использовать предлагаемые инструменты

Мы уже немного рассказали Вам про XSS и SQL injection сканер, его клиент Find-Compromise, а также Add-on для браузера Find-XSS-Fire. Давайте теперь более подробно разберемся для чего предназначен каждый из этих инструментов, какой из них лучше, и как именно стоит использовать их. Запомните главное: все они служат одной цели - проверить Ваш проект на наличие уязвимостей. Самый важный из них XSS и SQL injection сканер - специальный инструмент, позволяющий выполнять проверку сайтов в онлайн-режиме. В свою очередь его клиент под названием Find-Compromise осуществляет половину своей деятельности на Вашем компьютере, а другую половину, задействуя XSS и SQL injection сканер. Со стороны это может показаться немного запутанным, но на самом деле абсолютно ничего сложного в этом нет, ведь при использовании клиента сканера Find-Compromise Вам не придется загружать свой проект на наш сайт. Следующий по списку - удобный и надежный Add-on для браузера Find-XSS-Fire, являющийся по своей сути еще одним сетевым сканером (аналогично не требует загрузки файлов). В основе его функционирования заложен принцип имитации действий хакера, пытающегося взломать Ваш вебсайт - действуя подобным образом, инструмент полностью собирает всю важную информацию о существующих уязвимостях. Думаем, после ознакомления с принципами работы всех трех инструментов у Вас появился справедливый вопрос - какой именно из них нужно использовать в первую очередь? В подавляющем большинстве случаев можно обойтись XSS и SQL injection сканером (при таком варианте использовать клиент Find-Compromise не обязательно). После этого на всякий случай рекомендуется проверить свой проект при помощи Find-XSS-Fire на localhost (ни в коем случае не проверяйте сайт на обычном хостинге, так как сканер может попросту его сломать). Возможно, этот инструмент сможет найти некоторые дополнительные уязвимости, упущенные при первом сканировании. У Вас все еще остались вопросы? В таком случае просто свяжитесь с нашей профессиональной службой поддержки, сотрудники которой всегда рады помочь решить любое затруднение.

find-xss.net

Автоматический поиск уязвимостей - «Хакер»

Ты наверное до сих пор думаешь, что хакеры ищут уязвимости в программныхпродуктах в ручную, постоянно смотря в исходный код или ручками вставляяспецсимволы в переменные скриптов? Ты глубоко ошибаешься, мой дорогой друг.Существует масса пауков сканеров и вспомогательных программ, которые позволяютпо максимуму сократить время исследования. Конечно, многие из них стоят кучуденег. поэтому достать их проблематично (хотя вполне реально, те же Xspider,Nessus), другие же не обладают нужной функциональностью. Но всегда есть золотаясередина. Сейчас я поведаю о очень полезных бесплатных программках которыеокажут отличную помощь взломщику, а также затронем тему локального поискауязвимостей в исходниках вебскриптов.

RPVS — во Франции также есть хакеры

Платформа: WindowsСсылка: http://81.57.125.106/~slythers/rpvsinstall.exe

Скромную заметку о этой программе я на днях отыскал на одном элитноммеждународном хакерском форуме. Программа однозначно из класса Must Have. Темболее, что софтина имеет как консольный, так и графический интерфейс. Полное ееназвание — Remote PHP Vulnerability Scanner. Этот сканер затачивался подудаленное исследование сайтов написанных на PHP. Программа способна находитьтакие уязвимости: XSS, SQL-Injection, уязвимости подключения файлов функциямиinclude() и fopen() и раскрытия инсталляционного пути. Программа работает как сGET, так и POST запросами. Имеет несколько режимов работы и отличную скоростьсканирования. Принцип ее работы состоит в полном собрании линков с сайта, послечего подставляют спецсимволы в переменные и проводится анализ на показанных PHPошибках и сигнатурах. Протестировав ее на одном из небольших сайтов, я получилподробный отчет о найденных уязвимостях.

Rapport on http://test3.ru/

Number of made request: 24vuln include: 0vuln xss: 12err fopen: 0err inc: 0err sql: 0—————————————————-Vuln XSS :/?year=2006&month=02&day=6941337<a>%22%27/?year=6941337<a>%22%27&month=01/?year=6941337<a>%22%27&month=02&day=05/?year=2006&month=6941337<a>%22%27&day=05/?year=6941337<a>%22%27&month=03/?year=6941337<a>%22%27&month=02/?year=6941337<a>%22%27&month=12

Vuln SQL : /?id=6941337<a>%22%27/?id=15&c=6941337<a>%22%27—Видишь, неплохой отчет. Автоматизация — отличный процесс, который неплохоэкономит время и нервы. Да, кстати, в сети есть вполне компилируемые исходникиэтой чудо программы — http://81.57.125.106/~slythers/rpvsv1.3-src.rar.

В некоторых случаях, когда масштабное сканирование не удается произвести, работуможно полуавтомазировать с помощью такого софта как Mini-Browser (http://www.aignes.com)и Advanced HTTP Header Constructor 1.2 (http://www.ru24-team.net).Программы умеют многое и в любом случае тебе понадобятся, Mini-Browser позволяетподделывать POST/GET запросы и кукисы, а также вытаскивать все ссылки настранице. В программу встроен браузер (на движке ИЕ), что делает работу ещеудобнее. Ну а эстеты могут посмотреть на других вкладках исходник или логКлиент-Сервер. Advanced HTTP Header Constructor работает с HTTP-заголовками,позволяет составлять/подделывать/отсылать POST и GET заголовки, а также многоедругое. Для установки нужен свежий Framework.

Acunetix Web Vulnerability Scanner 3 — Достойная замена XSpider

Платформа: WindowsСсылка:http://www.acunetix.com/vulnerability-scanner/vulnerabilityscanner3.exe

Когда-то просматривая каталог линков с astalavista.box.sk я и наткнулся наэту программу. Ее описание мне пришлось по вкусу. По своим возможностям она дажепревосходит XSpider. Acunetix Web Vulnerability Scanner — cканер уязвимостейвэб-сайтов, сканирует как комплексно так и профильно, то есть Cross sitescripting, SQL injection, cgi-test, CRLF Injection, Directory traversal,Authentication hacking. Также в сканере присутствует очень интересный тип атаки— Google hacking на определенный сайт. Этот тип атаки использует поисковыесистемы для поиска уязвимостей, что очень полезно и оригинально. Сканер такжеотлично определяет версии веб-сервера и его модули. Плюс в него встроеныразличные перекодировщики и шифровальщик, HTTP снифер и средства подменызаголовков. Этот софт обязательно должен поселится в джентльменском наборехакера. Так что не поленись, скачай и зацени! Плохо лишь одно, как и всепрограммные продукты подобного рода, этот софт стоит больших денег (1500$). Новсе лечится, защита там слабенькая. Тем более обновление доступно и вtrial-версии. Кто ищет, тот всегда найдет. Я нашел 🙂

Google – Величайший сканер уязвимостей

С помощью поисковых систем, на самом деле, очень удобно искать нужныеуязвимые скрипты. Нужно только вспомнить о эпидемии червячка Santy, которыйискал в Google все бажные phpBB форумы. Подробнее о червячке можно почитатьздесь — http://www.f-securлe.com/v-descs/santy_a.shtml. Также примеры реализацииподобных сканеров ты найдешь на сайте команды AntiSecurity (http://antisec.2×4.ru).Так что при грамотном написании программы и хорошей уязвимости, хакер получаетконтроль над огромным количеством сайтов.

Теперь мне бы хотелось затронуть тему переполнения буфера. Искать уязвимоститакого типа вручную можно несколько лет, так что будем автоматизировать 🙂Кстатиь, компания eyee.com утверждает, что большинство уязвимостей они нашлиавтоматически, используя специальное программное обеспечение.

RATS — Грубый Инструмент Ревизии для Защиты

Платформа: WindowsСсылка: http://www.securesoftware.com/rats/

RATS, Rough Auditing Tool for Security (Грубый Инструмент Ревизии для Защиты)является утилитой ревизии защиты для C и C ++ кода. RATS просматривает исходныйтекст, находя потенциально опасные обращения к функциям. Цель этого инструмента— не окончательный поиск ошибки, а скорее обеспечение разумной отправной точкидля выполнения ручной ревизий защиты. Мой хороший знакомый уже давно пользуетсяданной программой и очень доволен ее результатами. И еще конечно же радуетоткрытость ее исходного кода.

Также следует обратить внимание на аналогичный софт под названием ITS4 (http://www.securitylab.ru/_tools/its4-1.1.1.tgz).Этот инструмент командной строки ищет уязвимости C и C ++ кода и работает наплатформах Windows и Unix. Есть еще одна полезная программа из данного класса —Flawfinder (http://www.dwheeler.com/flawfinder/).В отличие от ITS4, flawfinder имеет полностью открытое программное обеспечение(распространяется согласно лицензии GPL).

BofCheck — Buffer Overflow, Environment Variables Overflow/Format StringVulnerabilities Binary Tester

Платформа: FreeBSDСсылка: http://oc192.1afm.com/

BofCheck используется для проверки программ на наличие основных уязвимостей.Программа проверяет переполнение буфера и уязвимости в параметрах команднойстроки. Софтину стоит использовать только когда нет под рукой исходного кода илипоиск в нем не дал результатов.

Qaudit — Perl приходит на помощь

Оказывается классные вещи можно написать на интерпретируемом языке Perl.Qaudit.pl — сценарий для быстрой ревизии C и C ++ исходных файлов на наличиепереполнения буфера, ошибок форматной строки, запросов исполняемых вызовов,переменных среды, и разных функций, которые часто имеют проблемы защиты. Лично яне ожидал от скрипта таких возможностей 🙂 Кстати, на Perl написано множествополезных программ, таких как cgi-сканеры, эксплоиты, и даже IDS системы!Скачивай скриптик от сюда —http://www.SecurityLab.ru/_exploits/other/qaudit.txt.

Между прочим

Что касается глобальной автоматизации, то автоматизировать можно все. Нонужно ли это? Не всегда автоматизация помогает, так что ты сам должен решатькаждый раз как действовать. В статье я специально не рассмотрел популярный софт,такой как XSpider, Hydra и им подобные, о них многие знают, да и писать быпришлось целую книгу. Более подробно о способах внутреннего обследования системыможешь почитать в моей статье "Демократичныйхостинг".

xakep.ru

Уязвимости сайтов. Проверка сайта. Программа для сканирования сайта на уязвимость

Проблема безопасности вебсайтов ещё никогда не стояла так остро, как в 21 веке. Конечно, это связано со всеобъемлющим распространением сети Интернет практически во всех отраслях и сферах. Каждый день хакеры и специалисты по безопасности находят по нескольку новых уязвимостей сайтов. Многие из них тут же закрываются владельцами и разработчиками, а какие-то остаются как есть. Чем и пользуются злоумышленники. А ведь с помощью взломанного сайта можно нанести большой вред как его пользователям, так и серверам, на которых он размещён.

Типы уязвимостей сайтов

При создании веб-страниц используется много смежных электронных технологий. Какие-то являются совершенными и проверены временем, а какие-то новые и ещё не обкатанные. В любом случае имеется масса разновидностей уязвимостей сайтов:

  • XSS. Каждый сайт обладает небольшими формами. С их помощью пользователи вводят данные и получают какой-либо результат, проводят регистрации или отправляют сообщения. Подстановкой в эти формы специальных значений можно спровоцировать выполнение определённого скрипта, что может вызвать нарушение целостности сайта и компрометирование данных.
  • SQL-инъекция. Очень распространённый и эффективный способ получить доступ к конфиденциальным данным. Происходить это может либо через адресную строку, либо через формы. Процесс проводится путем подстановки значений, которые могут не отфильтровываться скриптами и выполнять запросы в базу данных. А при должных знаниях это может вызвать нарушение безопасности.

  • HTML-ошибки. Практически то же самое, что и XSS, но внедряется не скрипт-код, а HTML.
  • Уязвимость сайтов, связанная с размещением файлов и каталогов в местах по умолчанию. Например, зная структуру веб-страниц, можно добраться до кода административной панели.
  • Недостаточная настройка защиты операционной системы на сервере. Если таковая уязвимость присутствует, то у злоумышленника появляется возможность выполнить произвольный код.
  • Плохие пароли. Одна из самых очевидных уязвимостей сайтов — использование слабых значений для защиты своей учётной записи. Особенно, если она с правами администратора.
  • Переполнение буфера. Используется при замене данных из памяти, вследствие чего можно внести свои коррективы. Встречается при задействовании несовершенного программного обеспечения.
  • Замена страниц веб-ресурса. Воссоздание точной копии сайта, зайдя на который пользователь может не заподозрить подвоха и ввести свои личные данные, через некоторое время переходящие злоумышленнику.
  • Отказ в обслуживании. В основном под этим термином понимают атаку на сервер, когда он получает большое количество запросов, которые не может обработать и попросту «падает» или же становится не способным обслужить настоящих пользователей. Уязвимость же заключается в том, что фильтр по IP не настроен должным образом.

Поиск уязвимостей сайта

Специалисты по безопасности проводят особый аудит веб-ресурсов на наличие ошибок и недочётов, способных привести к взлому. Такая проверка сайта называется пентестинг. В процессе анализируется исходный код, используемые CMS, наличие уязвимых модулей и много других интересных проверок.

SQL-инъекция

Этот тип проверки сайта устанавливает, фильтрует ли скрипт полученные значения при составлении запросов в базу данных. Провести простейшее тестирование можно и вручную. Как найти уязвимость SQL на сайте? Сейчас будет рассмотрено.

К примеру, имеется некий сайт мой-сайт.рф. На его главной странице есть какой-либо каталог. Зайдя в него, можно обнаружить в адресной строке что-то наподобие мой-сайт.рф/?product_id=1. Есть вероятность, что это и есть запрос в базу. Для поиска уязвимостей сайта сначала можно попробовать подставить в эту строку одинарную кавычку. В итоге должно быть мой-сайт.рф/?product_id=1′. Если при нажатии клавиши «Ввод» на странице появилось сообщение об ошибке, то уязвимость имеется.

Теперь можно использовать различные варианты подбора значений. Применяются операторы объединения, исключения, комментирования и многие другие.

XSS

Данный тип уязвимости может быть двух видов — активный и пассивный.

Активный подразумевает внедрение участка кода в базу данных или прямо в файл на сервере. Он более опасен и непредсказуем.

Пассивный режим предусматривает заманивание жертвы на определённый адрес сайта, содержащего вредный код.

С помощью XSS злоумышленник может украсть Cookies. А в них могут содержаться важные данные пользователя. Ещё более ужасными последствиями обладает кража сессии.

Также хакер может использовать скрипт на сайте таким образом, чтобы форма в момент отправки её пользователем отдавала информацию прямиком в руки злоумышленнику.

Автоматизация процесса поиска

В сети можно найти массу интересных сканеров уязвимостей сайта. Какие-то поставляются отдельно, какие-то идут в комплекте с несколькими подобными и объединены в один общий образ, наподобие Kali Linux. Далее будет представлен обзор наиболее популярных средств для автоматизации процесса сбора информации об уязвимостях.

Nmap

Самый простой сканер уязвимостей сайта, который может показать такие подробности, как операционная система, используемые порты и сервисы. Типичный пример применения:

nmap -sS 127.0.0.1, где вместо локального IP нужно подставить адрес реального тестируемого сайта.

Вывод сообщит о том, какие сервисы запущены на нем, и какие порты в этот момент открыты. На основе этой информации можно попробовать использовать уже выявленные уязвимости.

Вот несколько ключей nmap для более пристрастного сканирования:

  • -A. Агрессивное сканирование, которое вывалит очень много информации, но может занять значительное время.
  • -O. Пытается определить операционную систему, задействованную на сервере.
  • -D. Подменит IP адреса, с которых производится проверка, чтобы при просмотре логов сервера невозможно было определить, откуда произошла атака.
  • -p. Диапазон портов. Проверка сразу нескольких служб на наличие открытых.
  • -S. Позволит указать нужный IP адрес.

WPScan

Данная программа для сканирования сайта на уязвимость входит в дистрибутив Kali Linux. Ориентирован на проверку веб-ресурсов на системе управления контентом WordPress. Написана она на Ruby, поэтому запускается примерно так:

ruby ./wpscan.rb —help. Эта команда покажет все доступные ключи и литеры.

Для запуска простой проверки можно использовать команду:

ruby ./wpscan.rb —url какой-то-сайт.ру

В общем WPScan — довольно простая в использовании утилита для проверки своего сайта на «ВордПресс» на уязвимости.

Nikto

Программа проверка сайта на уязвимости, которая также имеется в дистрибутиве Kali Linux. Обладает богатым функционалом при всей своей простоте:

  • сканирование по протоколам с HTTP и HTTPS;
  • обход многих встроенных инструментов обнаружения;
  • множественное сканирование портов, даже в нестандартном диапазоне;
  • поддержка использования прокси-серверов;
  • имеется возможность реализации и подключения плагинов.

Для запуска nikto нужно, чтобы в системе был установлен perl. Простейший анализ выполняется так:

perl nikto.pl -h 192.168.0.1.

Программе можно «скормить» текстовый файл, в котором перечислены адреса веб-серверов:

perl nikto.pl -h file.txt

Данная утилита поможет не только специалистам по безопасности для проведения пентестов, но и администраторам сетей и ресурсов для поддержания работоспособности сайтов.

Burp Suite

Очень мощный инструмент для проверки не только сайтов, но мониторинга любой сети. Обладает встроенной функцией модификации передаваемых запросов на тестируемый сервер. Умный сканер, способный в автоматическом режиме искать по нескольку типов уязвимостей сразу. Имеется возможность сохранить результат текущей деятельности, а затем возобновить её. Гибкость, позволяющая не только использовать сторонние плагины, но и писать свои.

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

SQLmap

Наверное, самый удобный и мощный инструмент для поиска SQL и XSS уязвимостей. Список его достоинств можно выразить так:

  • поддержка практически всех видов систем управления базами данных;
  • умение использовать шесть основных способов определения и применения SQL-инъекций;
  • режим перебора пользователей, их хешей, паролей и других данных.

Перед использованием SQLmap обычно сначала находят уязвимый сайт посредством дорков — заготовок запросов поисковых систем, помогающих ориентировочно отсеять необходимые веб-ресурсы.

Затем адрес страниц передаётся программе, и она проводит проверку. При успешном определении уязвимости утилита может сама её и использовать, получая полный доступ к ресурсу.

Webslayer

Небольшая утилита, которая позволяет провести атаку перебором. Может «брутфорсить» формы ресурса, сессии, параметры сайта. Поддерживает многопоточность, что отлично сказывается на производительности. Также может рекурсивно подбирать пароли во вложенных страницах. Имеется поддержка прокси.

Ресурсы для проверки

В сети присутствует несколько инструментов для проверки уязвимости сайтов онлайн:

  • coder-diary.ru. Простой сайт для тестирования. Достаточно ввести адрес проверяемого ресурса и нажать «Проверить». Поиск может занять длительное время, поэтому есть возможность указать адрес своей электронной почты для того, чтобы по завершении проверки результат пришёл прямо в ящик. В базе сайта имеется около 2500 известных уязвимостей.
  • https://cryptoreport.websecurity.symantec.com/checker/. Онлайн-сервис проверки наличия сертификата SSL и TLS от компании Symantec. Требуется только адрес проверяемого ресурса.
  • https://find-xss.net/scanner/. Проект сканирует отдельный файл PHP сайтов на уязвимости или их архив в формате ZIP. Можно указать типы проверяемых файлов и символы, по которым экранируются данные в скрипте.
  • http://insafety.org/scanner.php. Сканер для тестирования сайтов на платформе «1С-Битрикс». Простой и понятный интерфейс.

Алгоритм проведения проверки на уязвимости

Любой специалист по сетевой безопасности выполняет проверку по простому алгоритму:

  • Сначала он вручную или с помощью автоматизированных инструментов анализирует, имеются ли на сайте уязвимости. Если да, то он определяет их тип.
  • В зависимости от разновидности присутствующей уязвимости выстраивает дальнейшие ходы. Например, если известна CMS, то подбирается соответствующий метод атаки. Если же это SQL-инъекция, то подбираются запросы в базу данных.
  • Главной задачей является получение привилегированного доступа к административной панели. Если же такового добиться не удалось, может стоит попробовать формы и подделку адреса с внедрением в него скрипта с последующей передачей жертве.
  • Если какая-либо атака или проникновение удалось, то начинается сбор данных: имеются ли ещё уязвимости, какие недочёты присутствуют.
  • На основе полученных данных специалист по безопасности сообщает владельцу сайта о существующих проблемах и способах их устранения.
  • Уязвимости устраняются его руками или с привлечением сторонних мастеров.
  • Несколько советов по безопасности

    Тем, кто самостоятельно занимается разработкой собственного сайта, помогут это простые советы и рекомендации.

    Входящие данные нужно фильтровать таким образом, чтобы скрипты или запросы не могли запуститься автономно или отдать данные из базы.

    Использовать сложные и стойкие пароли для входа в административную панель, чтобы избежать возможного брутфорса.

    Если сайт строится на основе какой-либо CMS, нужно как можно чаще обновлять её и применять только проверенные плагины, шаблоны и модули. Не стоит перегружать сайт ненужными компонентами.

    Чаще проверять журналы сервера на наличие подозрительных вхождений или действий.

    Проверить собственный сайт несколькими сканерами и сервисами.

    Правильная настройка сервера — залог его стабильной и безопасной работы.

    По возможности нужно использовать сертификат SSL. Это позволит избежать перехвата личных и конфиденциальных данных между сервером и пользователем.

    Инструменты для обеспечения безопасности. Имеет смысл установить или подключить программные средства для предотвращения проникновений и внешних угроз.

    Заключение

    Статья получилась объёмная, однако даже её не хватит для описания в подробностях всех аспектов сетевой безопасности. Для того чтобы справиться с задачей защиты информации, придётся изучить немало материалов и инструкций. А также освоить кучу инструментов и технологий. Можно обратиться за советом и помощью к профессиональным компаниям, которые специализируются на проведении пентестов и аудита веб-ресурсов. Хотя такие услуги и выльются в неплохую сумму, все же безопасность сайта может быть гораздо дороже как в экономическом плане, так и в репутационном.

    Источник

    ruud.ru

    Поиск уязвимостей на сайте 2017

    Тестирование на проникновение позволяет обнаружить уязвимости и ошибки, которые могут быть использованы злоумышленниками для проникновения в вашу систему. Если вы администратор сайта, вам обязательно нужно добавить тестирование на проникновение в свой список инструментов и регулярно выполнять поиск уязвимостей для того, чтобы обеспечить полную безопасность ваших сайтов. Обнаруженные проблемы помогут вам устранить слабые места.

    Тестирование безопасности включает очень много различных инструментов и задач. В этой статье мы постараемся охватить все аспекты поиска уязвимостей на сайте. С помощью этой инструкции вы сможете сохранить свой ресурс в безопасности.

    Содержание статьи:

    Поиск уязвимостей на сайте

    Тестирование на проникновение и поиск уязвимостей на сайте состоит из нескольких этапов. Тут недостаточно запустить один инструмент и проверить сайт, нужен правильный подход, который поможет вам собрать как можно больше информации о безопасности вашей системы. Вот основные этапы:

    • Разведка — поиск и сборка информации о вашей сети или серверах;
    • Сканирование — на этом этапе нужно проверить сайт на уязвимости опираясь на собранную информацию;
    • Эксплуатация — этот шаг необязательный и не всегда нужный тестировщикам на проникновение. Это необходимо, если вам нужно показать реальную опасность уязвимостей;
    • Исправление — на этом этапе нужно исправить все найденные уязвимости на вашем сайте.

    Теперь рассмотрим что нужно делать на каждом из этапов и какие инструменты для этого нужно использовать. Лучше не устанавливать все эти программы отдельно, а использовать уже готовую среду для тестирования на проникновение — Kali Linux. Это специально подготовленный дистрибутив Linux, который уже содержит все необходимые программы. Так вам не придется ничего устанавливать. Вы можете запускать систему из флешки или же установить Kali Linux на жесткий диск.

    Разведка

    То, что это ваша система ничего не значит, вам все равно нужно узнать какую информацию о ней могут узнать другие люди. Для этого можно применять несколько инструментов:

    nmap — это один из самых популярных инструментов для сканирования сетей. С помощью него вы можете посмотреть какие сервисы запущены на сервере веб-сайта, какие порты они используют их версии, и даже версию операционной системы. Чтобы посмотреть открытые порты на своей машине выполните такую команду в терминале Kali Linux:

    nmap -sS 192.168.91.249

    Здесь 192.168.91.249 — это ip адрес вашего сайта. Это команда только выведет открытые порты и названия сервисов. Вы можете получить более подробную информацию, например, уже на этом этапе можно собрать много информации о системе. Например, здесь вы можете видеть, что на машине запущен SSH сервер, веб-сервер, службы обмена файлами Samba и прокси сервер на порту 3128. Все они могут быть потенциально уязвимы.

    Сканер Nmap позволяет копнуть глубже, с помощью более интенсивного сканирования. Для этого используйте опцию -A:

    nmap -A 192.168.91.62

    Тут вы уже увидите намного больше информации, например, версии сервисов, системное время, систему управления контентом и даже версию операционной системы. Также, если будут обнаружены простые уязвимости, такие как слабый пароль FTP, то вы об этом тоже узнаете. Прочитать подробнее как пользоваться Nmap вы можете в отдельной статье.

    Также нужно использовать другие доступные источники информации. Важно понять, какая информация о вас доступна в сети и сможет ли злоумышленник получить информацию, к которой у него не должно быть доступа. Вот некоторые сервисы:

    • whois — с помощью этого сервиса вы можете узнать общедоступную информацию о домене, регистратора, владельца и другую контактную информацию;
    • recon-ng — полезный инструмент для анализа, который поставляется вместе с Kali Linux;
    • Maltego Chlorine — это очень популярный инструмент с открытым исходным кодом, предназначенный для сбора информации с открытых источников;
    • Netcraft — полезный инструмент, позволяющий найти поддомены сайта;
    • hackertarget.com/reverse-ip-lookup — позволяет узнать какие еще сайты работают на вашем ip адресе.

    После того, как вы завершили сбор информации на этапе разведки, нужно перейти к сканированию, непосредственно выполнить поиск уязвимостей на сайте Kali Linux.

    Сканирование

    Для сканирования часто применяется такой метод, как фаззинг. Его суть в передачи большого количества случайных данных вашему сайту чтобы попытаться обнаружить уязвимости. Различные инструменты которые мы рассмотрим ниже будут имитировать атаки чтобы проверить уязвимость приложения.

    Приложения фаззинга позволяют выявить различные уязвимости, но это не заменит понимания того как работают эти приложения, и в чем состоит ошибка. Если у вас есть доступ к исходным кодам проекта, то вы можете параллельно использовать фаззинг и ручной анализ, чтобы с большей точностью найти проблемы.

    Важно заметить, что атаки фаззинга работают очень громко поскольку требуют передачи большого количества данных. И скорее всего, ваша система защиты от вторжений заметит их, поэтому будьте осторожны. А теперь рассмотрим некоторые инструменты, которые можно использовать.

    WPScan — это проект с открытым исходным кодом, написанный на Ruby специально для сканирования WordPress. Он очень прост в использовании и может быть полезным для сайтов, которые используют большое количество плагинов или не обновляются. Утилите не нужен исходный код, она выполняет сканирование удаленно.

    Nikto — это сканер уязвимостей для веб-сайтов. Он работает намного дольше чем WPSan, но рассчитан не только на WordPress. Он включает в себя множество плагинов, и во время сканирования будет выполнено очень много запросов. Например, программа может найти файл, который будет выводить информацию phpinfo. Но Nikto генерирует очень много ложных срабатываний, поэтому вам нужно внимательно анализировать вывод.

    Burp Suite — это очень мощная программа для поиска уязвимостей на сайте или в веб приложениях. Этот инструмент работает только через веб-браузер. Утилита позволяет проверить все формы, которые есть на сайте, проверить отправку разных заголовков, посмотреть ответы и запросы браузера, выполнить активное сканирование URL, выполнить статический анализ кода JavaScript, а также выполнить поиск XSS уязвимостей на сайте. Это отличный инструмент, но он может показаться сложным.

    https://youtu.be/M_h_absC5yE

    SQLMap — программа для поиска sql уязвимостей сайта. Вы можете  найти все возможные места, где могут быть выполнены SQL инъекции. Например, если вы предполагаете, что в параметре id может быть sql инъекция, используйте такую команду:

    sqlmap -u http://example.com/?id=1 -p id

    Программа будет выполнять тестирование для различных типов баз данных, поэтому вы можете указать только нужную:

    sqlmap --dbms=MySQL -u http://example.com/?id=1 -p id

    С помощью этой команды вы можете проверить различные поля, и указывать различные параметры, такие как базы данных, таблицы или пароли.

    Эксплуатация

    Эксплуатация завершает поиск уязвимостей на сайте и предоставляет из себя использование уязвимостей для получения доступа к системе или данным. В целом, если вы смогли найти дырки в вашей системе безопасности и закрыть их, то больше ничего вам делать не нужно. Но иногда нужно доказать, что проблема действительно серьезна. Рекомендуется не использовать эксплуатацию уязвимостей на производственных системах. потому что это может привести к проблемам. Лучше создать виртуальную машину и уже в ней показывать все, что нужно. Вот некоторые инструменты, которые можно использовать:

    • SQLMap — очень эффективный инструмент для поиска sql уязвимостей и их эксплуатации;
    • Burp Suite — инструмент для поиска XSS уязвимостей и эксплуатации;
    • Metasploit — эксплуатация уязвимостей в системе.

    Metasploit — это целая среда для проведения тестирования на проникновение, в которой содержится множество готовых эксплойтов. Вы можете найти эксплойты для установленных плагинов или обнаруженных на первом этапе сервисов. Мы более подробно рассмотрим как пользоваться Metasploit в одной из следующих статей.

    Исправление

    Это заключительный этап поиска уязвимостей. На основе всего того, что было найдено нужно сделать выводы и закрыть все дыры. Когда у вас есть все данные об уязвимых местах. Распределите приоритеты и исправьте все, что нашли. Если эти уязвимости смогли найти вы, значит их может найти любой другой.

    Выводы

    В этой статье мы сделали очень интенсивный курс в поиск уязвимостей на сайте и рассмотрели основные программы для поиска уязвимостей на сайте, которые вы можете использовать для обеспечения максимальной безопасности своего ресурса или инфраструктуры. Многие из этих инструментов являются промышленным стандартом. Сейчас вы можете продумать стратегию тестирования и попытаться устранить все уязвимости.

    losst.ru

    Как найти уязвимость к SQL-инъекции — Information Security Squad

    Протестируйте свой веб-сайт на атаку с использованием SQL инъекции и препятствуйте тому, чтобы он был взломан.

    SQLi (Инъекция SQL) является старым методом, где хакер выполняет вредоносные SQL-операторы, чтобы завладеть веб-сайтом.

    SQLi может быть опасным, поскольку она может использоваться, чтобы украсть уязвимую информацию, такую как как кредитная карта, пароль, и т.д.

    Начиная с SQL (Язык структурированных запросов) база данных поддерживается многими веб-платформами (PHP, WordPress, Joomla, и т.д.), оан может потенциально использоваться для большого количества веб-сайтов.

    1. SQL Injection тестирование с использованием  Sqlmap

    sql ijection

    Онлайн SQLMAP от FPentest identify идентифицируют систему баз данных,и выполняет тестирование на следующие шесть методов инжекции SQL:

    • Time-based blind
    • Error-based
    • UNION query-based
    • Boolean-based blind
    • Stacked queries
    • Out-of-band

    2. suIP.biz

    Обнаружение уязвимости к SQL инъекции можно выполнить  онайлайн на suIP.biz поддерживающее: MySQl, Oracle, PostgreSQL, Microsoft SQL, IBM DB2, Firebird, Sybase, и т.д.

    Оно так же осуществляет сканирование при помощи SQLMap теми же шестью инъекционными методами.

    3. Acunetix

    Acunetix проверяет ваш веб-сайт  на больше чем 3000 слабых мест, включая инъекцию SQL.

    Если вы хотите сжатый просмотр состояния безопасности, то попробуйте Acunetix.

    Acunetix обеспечивает подробный отчет, где вы можете отфильтровать параметры риска на основе серьезности, чтобы расположить их по приоритетам.

    4. SQL Injection Test Online

    Другой онлайновый инструмент Hacker Target на основе SQLMap находит уязвимости, связанные с HTTP-запросом GET.

    5. Scan My Server

    Scan My Server от Beyond Security является СВОБОДНЫМ сканером и может протестировать ваш веб-сайт на вредоносное программное обеспечение, XSS уязвимости , инъекцию SQL и другие уязвимости.

    6. Vega

    Vega — это свободное программное обеспечение [ сканер безопасности ] с открытым исходным кодом, которое может быть установлено на Linux, OS X и Windows.

    Vega написан на Java и базируется он на GUI.

    Не только для SQLi, но также вы можете использовать Vega, чтобы протестировать много других уязвимостей, таких как:

    XML/Shell/URL инъекцияПеречисление каталоговВключение удаленного файлаXSS

    Vega выглядит многообещающим СВОБОДНЫМ сканером безопасности в Интернете.

    7. SQLMap

    SQLMap — один из самых популярных инструментов для тестирования с открытым исходным кодом, чтобы выполнить инъекцию SQL против системы управления реляционными базами данных.

    Sqlmap перечисляет пользователей, пароли, хеши, роли, базу данных, таблицы, столбцы чтобы сдампить таблицы базы данных полностью.

    Если вы используете Kali Linux, то вы можете использовать SQLMap там также, не устанавливая его.

    8. SQL Inject Me

    SQL Inject Me это Аддон Firefox, которое через поля HTML-формы ищут сообщение об ошибке на выходной странице.

    Если бы вы проектируете форму ввода, соединяющуюся с базой данных по localhost, и хотели бы протестировать, прежде чем ставить на реальный сервер, SQL Inject Me, был бы хороший выбор.

    9. Netsparker

    Netsparker — один из популярных сканеров безопасности в Интернете, существует облачная версия и десктоп. Он обнаруживает большое количество дефектов безопасности включая лучшие 10 по версии OWASP.

    Netsparker может быть интегрирован в жизненный цикл разработки программного обеспечения для непрерывной безопасности.

    10. Appspider

    Appspider от Rapid7 — динамическое решение для тестирования безопасности приложений проверить и протестировать веб-приложение больше чем на 80 типов атак.

     

     

    itsecforu.ru

    Как найти и устранить SQL-уязвимость на сайте

    Опубликовано в Защита веб-сайтов   15 Августа, 2017

    SQL (structured query language, «язык структурированных запросов») – единый стандарт коммуникации, поддерживающий связь хозяина интернет-ресурса с базами данных.

    Поскольку базы данных представляют собой один из основных инструментов в работе и поддержании сайтов, SQL-файлы находятся под пристальным вниманием хакеров. Для внедрения вредоносного кода они используют так называемые SQL-инъекции. С их помощью злоумышленники «читают» содержимое любых таблиц, удаляют, изменяют или добавляют информацию в базы, перезаписывают содержание локальных файлов и дают команды на выполнение произвольных команд. Иными словами, – полностью перехватывают управление атакованным сайтом.

    SQL-атаки опасны не только нарушением целостности базы данных сайта. Взломавший таким образом всего один сайт хакер способен перейти на страницы других интернет-ресурсов, размещённых на этом сервере. Более того, хищение личных данных пользователей из базы какого-нибудь сервиса грозит их распространением в оффлайне. Это привлекает внимание надзорных государственных органов, которые ответственность за нарушение приватности накладывают на владельцев интернет-страниц.

    Любой профессиональный веб-мастер думает о том, как найти уязвимость SQL на сайте до момента заражения. В идеале лучше вообще предотвратить внедрение на ресурс SQL-инъекций, но от этого риска никто не застрахован.

    Как проверить сайт на уязвимость SQL

    Определить степень незащищённости веб-ресурса и его подверженности SQL-инъекциям несложно даже в ручном режиме.

    Проверка сайта на SQL-уязвимости — определение возможности скрипта на сайте отфильтровывать полученные значения при составлении запросов в базе данных.

    Рассмотрим простейший тест на SQL-уязвимость, который способен провести и не разбирающийся в программировании человек. Для примера, возьмём условный адрес сайта тест.рф с размещённым на главной странице каталогом. При переходе в каталог в браузерной строке отображается адрес типа тест.рф/?product_id=1, – не исключено, что это и есть прямой запрос в базу данных. Для того, чтобы найти SQL-уязвимость, достаточно подставить в строку всего лишь одинарную кавычку (адрес будет выглядеть как тест.рф/?product_id=1′). Если при нажатии на клавишу enter страничка выдаёт сообщение об ошибке, то значит уязвимость базы действительно имеется. Дальше уже подкованному злоумышленнику остаётся только подобрать для взлома нужное значение.

    Как проверить сайт при помощи сканера SQL-уязвимостей

    Проверять вручную сайт на возможные SQL-инъекции неудобно. Сегодня программные комплексы для подобного рода тестирования есть практически у всех крупных антивирусных сервисов.Среди популярных независимых платформ выделяется, к примеру, Sqlmap, сканер, работающий с большинством известных систем управления базами данныхSQL Injection – ещё один популярный кроссплатформенный инструмент, который используется при поиске SQL-уязвимостей. Этот сканер, однако, написан на языке Java, – соответственно, для успешного теста требуется установка в систему JRE (специализированной программной среды исполнения для Java).

    Найти в интернете сканер сайтов на уязвимости SQL не так уж тяжело. Сложнее найти универсальный программный продукт, который после тонкой настройки под конкретный веб-ресурс с точностью определит наличие уязвимости с системой управления базами данных. А ведь с этой проблемой нужно ещё и как-то справиться.

    Virusdie – надёжный помощник в поиске и устранении SQL-уязвимостей

    Универсальное решение при борьбе с уязвимостями SQL предлагает крупный антивирусный сервис Virusdie.

    Его отличие от стандартных сканеров в простоте и удобстве использования. Разработчики не предлагают ничего скачивать и устанавливать для запуска процессов сканирования, – вся работа происходит после подключения через облачные технологии.

    Антивирусная платформа проверяет подключённые сайты в автоматическом режиме, находя и определяя вирусы, внедрённый вредоносный код и различные XSS/SQL инъекции. Кроме проверки сайта на SQL-уязвимости онлайн Virusdie предлагает эффективные способы разрешения возникших проблем и удаление уязвимостей в автоматическом или ручном режиме (в особо проблемных случаях – с привлечением технического персонала сервиса).

    Важное преимущество для далёких от программирования людей заключается в том, что управление ведётся на основе сервисного интерфейса, без взаимодействия с панелями управления сервером или FTP и без переписывания доменных записей. Подключить сайт к Virusdie можно непосредственно по защищённым каналам HTTP/HTTPS, используя при этом уникальный для каждого пользователя файл синхронизации.

    Проверка на SQL-уязвимость для сайта облегчается в разы: пользователю не нужно искать в интернете и устанавливать специализированные сканеры, настраивая их для тестирования слабых мест особым образом. В то же время антивирусная платформа  не просто находит поражения в базах данных, но и автоматически устраняет их.

    Virusdie относится к тем универсальным антивирусным инструментам, которые облегчают владельцам сайтов их обслуживание, экономя время, затраты, связанные с техническим обеспечением. И это одна из главных причин того, почему этот сервис выбирают компетентные веб-мастера.

    virusdie.ru

    Уязвимости сайтов. Проверка сайта. Программа для сканирования сайта на уязвимость

    Проблeма бeзопасности вeбсайтов eщё никогда нe стояла так остро, как в 21 вeкe. Конeчно, это связано со всeобъeмлющим распространeниeм сeти Интернет практичeски во всeх отраслях и сфeрах. Каждый дeнь хакeры и спeциалисты по бeзопасности находят по нeскольку новых уязвимостeй сайтов. Многиe из них тут жe закрываются владeльцами и разработчиками, а какиe-то остаются как eсть. Чeм и пользуются злоумышлeнники. А вeдь с помощью взломанного сайта можно нанeсти большой врeд как eго пользоватeлям, так и сeрвeрам, на которых он размeщён.

    Типы уязвимостeй сайтов

    При создании вeб-страниц используeтся много смeжных элeктронных тeхнологий. Какиe-то являются совeршeнными и провeрeны врeмeнeм, а какиe-то новыe и eщё нe обкатанныe. В любом случаe имeeтся масса разновидностeй уязвимостeй сайтов:

    • XSS. Каждый сайт обладаeт нeбольшими формами. С их помощью пользоватeли вводят данныe и получают какой-либо рeзультат, проводят рeгистрации или отправляют сообщeния. Подстановкой в эти формы спeциальных значeний можно спровоцировать выполнeниe опрeдeлённого скрипта, что можeт вызвать нарушeниe цeлостности сайта и компромeтированиe данных.
    • SQL-инъeкция. Очeнь распространённый и эффeктивный способ получить доступ к конфидeнциальным данным. Происходить это можeт либо чeрeз адрeсную строку, либо чeрeз формы. Процeсс проводится путeм подстановки значeний, которыe могут нe отфильтровываться скриптами и выполнять запросы в базу данных. А при должных знаниях это можeт вызвать нарушeниe бeзопасности.

    • HTML-ошибки. Практичeски то жe самоe, что и XSS, но внeдряeтся нe скрипт-код, а HTML.
    • Уязвимость сайтов, связанная с размeщeниeм файлов и каталогов в мeстах по умолчанию. Напримeр, зная структуру вeб-страниц, можно добраться до кода административной панeли.
    • Нeдостаточная настройка защиты опeрационной систeмы на сeрвeрe. Если таковая уязвимость присутствуeт, то у злоумышлeнника появляeтся возможность выполнить произвольный код.
    • Плохиe пароли. Одна из самых очeвидных уязвимостeй сайтов — использованиe слабых значeний для защиты своeй учётной записи. Особeнно, eсли она с правами администратора.
    • Пeрeполнeниe буфeра. Используeтся при замeнe данных из памяти, вслeдствиe чeго можно внeсти свои коррeктивы. Встрeчаeтся при задeйствовании нeсовeршeнного программного обeспeчeния.
    • Замeна страниц вeб-рeсурса. Воссозданиe точной копии сайта, зайдя на который пользоватeль можeт нe заподозрить подвоха и ввeсти свои личныe данныe, чeрeз нeкотороe врeмя пeрeходящиe злоумышлeннику.
    • Отказ в обслуживании. В основном под этим тeрмином понимают атаку на сeрвeр, когда он получаeт большоe количeство запросов, которыe нe можeт обработать и попросту «падаeт» или жe становится нe способным обслужить настоящих пользоватeлeй. Уязвимость жe заключаeтся в том, что фильтр по IP нe настроeн должным образом.

    Поиск уязвимостeй сайта

    Спeциалисты по бeзопасности проводят особый аудит вeб-рeсурсов на наличиe ошибок и нeдочётов, способных привeсти к взлому. Такая провeрка сайта называeтся пeнтeстинг. В процeссe анализируeтся исходный код, используeмыe CMS, наличиe уязвимых модулeй и много других интeрeсных провeрок.

    SQL-инъeкция

    Этот тип провeрки сайта устанавливаeт, фильтруeт ли скрипт получeнныe значeния при составлeнии запросов в базу данных. Провeсти простeйшee тeстированиe можно и вручную. Как найти уязвимость SQL на сайтe? Сeйчас будeт рассмотрeно.

    К примeру, имeeтся нeкий сайт мой-сайт.рф. На eго главной страницe eсть какой-либо каталог. Зайдя в нeго, можно обнаружить в адрeсной строкe что-то наподобиe мой-сайт.рф/?product_id=1. Есть вeроятность, что это и eсть запрос в базу. Для поиска уязвимостeй сайта сначала можно попробовать подставить в эту строку одинарную кавычку. В итогe должно быть мой-сайт.рф/?product_id=1'. Если при нажатии клавиши "Ввод" на страницe появилось сообщeниe об ошибкe, то уязвимость имeeтся.

    Тeпeрь можно использовать различныe варианты подбора значeний. Примeняются опeраторы объeдинeния, исключeния, коммeнтирования и многиe другиe.

    XSS

    Данный тип уязвимости можeт быть двух видов — активный и пассивный.

    Активный подразумeваeт внeдрeниe участка кода в базу данных или прямо в файл на сeрвeрe. Он болee опасeн и нeпрeдсказуeм.

    Пассивный рeжим прeдусматриваeт заманиваниe жeртвы на опрeдeлённый адрeс сайта, содeржащeго врeдный код.

    С помощью XSS злоумышлeнник можeт украсть Cookies. А в них могут содeржаться важныe данныe пользоватeля. Ещё болee ужасными послeдствиями обладаeт кража сeссии.

    Такжe хакeр можeт использовать скрипт на сайтe таким образом, чтобы форма в момeнт отправки eё пользоватeлeм отдавала информацию прямиком в руки злоумышлeннику.

    Автоматизация процeсса поиска

    В сeти можно найти массу интeрeсных сканeров уязвимостeй сайта. Какиe-то поставляются отдeльно, какиe-то идут в комплeктe с нeсколькими подобными и объeдинeны в один общий образ, наподобиe Kali Linux. Далee будeт прeдставлeн обзор наиболee популярных срeдств для автоматизации процeсса сбора информации об уязвимостях.

    Nmap

    Самый простой сканeр уязвимостeй сайта, который можeт показать такиe подробности, как опeрационная систeма, используeмыe порты и сeрвисы. Типичный примeр примeнeния:

    nmap -sS 127.0.0.1, гдe вмeсто локального IP нужно подставить адрeс рeального тeстируeмого сайта.

    Вывод сообщит о том, какиe сeрвисы запущeны на нeм, и какиe порты в этот момeнт открыты. На основe этой информации можно попробовать использовать ужe выявлeнныe уязвимости.

    Вот нeсколько ключeй nmap для болee пристрастного сканирования:

    • -A. Агрeссивноe сканированиe, котороe вывалит очeнь много информации, но можeт занять значитeльноe врeмя.
    • -O. Пытаeтся опрeдeлить опeрационную систeму, задeйствованную на сeрвeрe.
    • -D. Подмeнит IP адрeса, с которых производится провeрка, чтобы при просмотрe логов сeрвeра нeвозможно было опрeдeлить, откуда произошла атака.
    • -p. Диапазон портов. Провeрка сразу нeскольких служб на наличиe открытых.
    • -S. Позволит указать нужный IP адрeс.

    WPScan

    Данная программа для сканирования сайта на уязвимость входит в дистрибутив Kali Linux. Ориeнтирован на провeрку вeб-рeсурсов на систeмe управлeния контeнтом WordPress. Написана она на Ruby, поэтому запускаeтся примeрно так:

    ruby ./wpscan.rb --help. Эта команда покажeт всe доступныe ключи и литeры.

    Для запуска простой провeрки можно использовать команду:

    ruby ./wpscan.rb --url какой-то-сайт.ру

    В общeм WPScan - довольно простая в использовании утилита для провeрки своeго сайта на "ВордПрeсс" на уязвимости.

    Nikto

    Программа провeрка сайта на уязвимости, которая такжe имeeтся в дистрибутивe Kali Linux. Обладаeт богатым функционалом при всeй своeй простотe:

    • сканированиe по протоколам с HTTP и HTTPS;
    • обход многих встроeнных инструмeнтов обнаружeния;
    • множeствeнноe сканированиe портов, дажe в нeстандартном диапазонe;
    • поддeржка использования прокси-сeрвeров;
    • имeeтся возможность рeализации и подключeния плагинов.

    Для запуска nikto нужно, чтобы в систeмe был установлeн perl. Простeйший анализ выполняeтся так:

    perl nikto.pl -h 192.168.0.1.

    Программe можно «скормить» тeкстовый файл, в котором пeрeчислeны адрeса вeб-сeрвeров:

    perl nikto.pl -h file.txt

    Данная утилита поможeт нe только спeциалистам по бeзопасности для провeдeния пeнтeстов, но и администраторам сeтeй и рeсурсов для поддeржания работоспособности сайтов.

    Burp Suite

    Очeнь мощный инструмeнт для провeрки нe только сайтов, но мониторинга любой сeти. Обладаeт встроeнной функциeй модификации пeрeдаваeмых запросов на тeстируeмый сeрвeр. Умный сканeр, способный в автоматичeском рeжимe искать по нeскольку типов уязвимостeй сразу. Имeeтся возможность сохранить рeзультат тeкущeй дeятeльности, а затeм возобновить eё. Гибкость, позволяющая нe только использовать сторонниe плагины, но и писать свои.

    Утилита имeeт собствeнный графичeский интeрфeйс, что, нeсомнeнно, удобно, особeнно для начинающих пользоватeлeй.

    SQLmap

    Навeрноe, самый удобный и мощный инструмeнт для поиска SQL и XSS уязвимостeй. Список eго достоинств можно выразить так:

    • поддeржка практичeски всeх видов систeм управлeния базами данных;
    • умeниe использовать шeсть основных способов опрeдeлeния и примeнeния SQL-инъeкций;
    • рeжим пeрeбора пользоватeлeй, их хeшeй, паролeй и других данных.

    Пeрeд использованиeм SQLmap обычно сначала находят уязвимый сайт посрeдством дорков — заготовок запросов поисковых систeм, помогающих ориeнтировочно отсeять нeобходимыe вeб-рeсурсы.

    Затeм адрeс страниц пeрeдаётся программe, и она проводит провeрку. При успeшном опрeдeлeнии уязвимости утилита можeт сама eё и использовать, получая полный доступ к рeсурсу.

    Webslayer

    Нeбольшая утилита, которая позволяeт провeсти атаку пeрeбором. Можeт «брутфорсить» формы рeсурса, сeссии, парамeтры сайта. Поддeрживаeт многопоточность, что отлично сказываeтся на производитeльности. Такжe можeт рeкурсивно подбирать пароли во вложeнных страницах. Имeeтся поддeржка прокси.

    Рeсурсы для провeрки

    В сeти присутствуeт нeсколько инструмeнтов для провeрки уязвимости сайтов онлайн:

    • coder-diary.ru. Простой сайт для тeстирования. Достаточно ввeсти адрeс провeряeмого рeсурса и нажать «Провeрить». Поиск можeт занять длитeльноe врeмя, поэтому eсть возможность указать адрeс своeй элeктронной почты для того, чтобы по завeршeнии провeрки рeзультат пришёл прямо в ящик. В базe сайта имeeтся около 2500 извeстных уязвимостeй.
    • https://cryptoreport.websecurity.symantec.com/checker/. Онлайн-сeрвис провeрки наличия сeртификата SSL и TLS от компании Symantec. Трeбуeтся только адрeс провeряeмого рeсурса.
    • https://find-xss.net/scanner/. Проeкт сканируeт отдeльный файл PHP сайтов на уязвимости или их архив в форматe ZIP. Можно указать типы провeряeмых файлов и символы, по которым экранируются данныe в скриптe.
    • http://insafety.org/scanner.php. Сканeр для тeстирования сайтов на платформe "1С-Битрикс". Простой и понятный интeрфeйс.

    Алгоритм провeдeния провeрки на уязвимости

    Любой спeциалист по сeтeвой бeзопасности выполняeт провeрку по простому алгоритму:

  • Сначала он вручную или с помощью автоматизированных ин
  • xroom.su