Сканирование на уязвимости: как проверить устройство и обезопасить себя от потенциальных угроз. Очистка системы и браузеров. Must read&save чек-лист для обязательной проверки уязвимостей

Сканирование на уязвимости: как проверить устройство и обезопасить себя от потенциальных угроз. Очистка системы и браузеров. Must read&save чек-лист для обязательной проверки уязвимостей

15.05.2019

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

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

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

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

Теперь рассмотрим что нужно делать на каждом из этапов и какие инструменты для этого нужно использовать. Лучше не устанавливать все эти программы отдельно, а использовать уже готовую среду для тестирования на проникновение - Kali Linux. Это специально подготовленный дистрибутив 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, то вы об этом тоже узнаете. Прочитать подробнее вы можете в отдельной статье.

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

  • 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 в одной из следующих статей.

Исправление

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

Выводы

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

Проблема безопасности вебсайтов ещё никогда не стояла так остро, как в 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С-Битрикс". Простой и понятный интерфейс.

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

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

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

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

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

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

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

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

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

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

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

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

Заключение

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

Host-tracker.com — позволяет поверить уязвимость сервера. Администратор сайта, используя этот сервис, легко узнает, защищено ли его подсоединение к удаленному серверу от уязвимости POODLE .

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

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

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

Таким образом администратор сайта, используя хостинги, должен знать, а защищено ли его подсоединение к удаленному серверу? Используется ли этот «дырявый» протокол на нем?

Я задался вопросом, а защищен ли мой сервер от этой уязвимости под названием POODLE и нашел такой сайт.

Сервис host-tracker: проверьте, включен ли ssl 3.0 на вашем сервере

Справедливости ради скажу, что данный сервис полезен не только для проверки уязвимости по указанному протоколу, на нем есть возможность проверки и других нужных параметров: он автоматически определяет IP-адрес пользователя интернетом (т.е. ваш) и позволяет проверить некоторые данные по вебсайтам.

Я не стану объяснять суть каждого параметра — понять не сложно, но для тех, кто желает уточнить — наведите курсор на любую из кнопок — http, рing и т.д. Эти полезные полезные данные на host-tracker вы получаете бесплатно.

Но на этой странице мы поговорим немного о том, чему, собственно, посвящена статья — проблеме уязвимости браузера пользователя по IP-соединению. Как я уже говорил, можно проверить личный IP — вашего провайдера, проверки можно производить для сайтов (используется его IP). Причем любого. Для этого используем крайнюю правую кнопку SSLv3 .

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

Как видите, в моих случаях сервису почему-то не удалось проверить уязвимость POODLE и я не смог узнать, пользуются мои серверы старой версией протокола шифрования — SSL 3.0. Жаль.

Но потом (любопытства ради), решил проверить некоторые сайты нескольких моих комментаторов. Тут тоже были разные ответы:

  1. «Рукопожатие не удалось из-за неожиданной пакетном формате .» (курсив — это результат перевода фразы, которая почему-то выдается на английском).
  2. «Не удалось выявить уязвимость POODLE. При попытке подключения через SSL 3.0, возникла следующая ошибка: В соединеии отказано
  3. «Не удалось выявить уязвимость POODLE. При попытке подключения через SSL 3.0, возникла следующая ошибка : Превышен интервал ожидания
  4. SSL 3.0 выключен на этом сервере .

Как видите, не все серверы предоставляют возможность узнать, пользуются они старой версией протокола SSL 3.0. А некоторые сообщают и им повезло.

Таким образом, используя сервис host-tracker, друзья, если у вас есть сайты, вы сможете узнать насколько надежен ваш хостинг в плане безопасности от происков взломщиков и мошенников.

(Visited 125 times, 1 visits today)

Мы выпустили новую книгу «Контент-маркетинг в социальных сетях: Как засесть в голову подписчиков и влюбить их в свой бренд».

Подписаться

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

Больше видео на нашем канале - изучайте интернет-маркетинг с SEMANTICA

Чтобы разобраться, что такое уязвимости сайта, рассмотрим простой пример.

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

Но один злодей перепрыгнул стену, другой притворился мирным жителем и прошел сквозь ворота, а третий использовал неохраняемый потайной лаз, сделанный для хозяев замка.

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

Виды уязвимостей сайта

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

SQL-инъекции

Один из самых частых и действенных методов атаки на динамические . Злоумышленник подставляет специально сформированные строки SQL-кода в запрос к серверу, получая таким способом контроль над базой данных сайта. Единственное, что будет ограничивать хакера – права пользователя, от которого выполняется запрос к БД.

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

XSS

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

Способ защиты схож с SQL-инъекциями – преобразование управляющих HTML и JS последовательностей. Браузер должен читать скрипт как текст и не выполнять его.

Незащищенная работа с персональной информацией

Известная ошибка новичка-программиста – хранить пароли пользователей в базе данных в открытом виде. Но стоит представить, что хакер получил к себе дамп таблицы, и становится не по себе. Все пароли принято не только хэшировать, но ещё и «солить» с помощью некоторой операции с дополнительным ключом, например md5($pass.$salt) в PHP.

Проблемы распределения уровней доступа

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

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

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

Плохая конфигурация модулей

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

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

Брутфорс-атака

Злоумышленник, не найдя уязвимых мест, может начать перебор паролей «в лоб». Запустив ботнет, рано или поздно он сможет подобрать ключи к SSH, FTP и административной панели. Поэтому всегда ставьте ограничение на допустимое количество попыток входа с одного IP. Для SSH это может быть, к примеру, утилита fail2ban.

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

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

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

  • Coder-diary. Проверяет сайт на самые популярные и простые типы уязвимостей. Забытые служебные файлы, собственная постоянно пополняемая база.
  • Find-xss. Включает в себя не только XSS-сканер, но и анализатор SQL-инъекционных атак. Комплексный и довольно популярный инструмент, выполняющий широкий спектр задач проверки сайта различные виды проблем безопасности.
  • Nikto. Входит в легендарную сборку Kali Linux. Проводит долгий и эффективный анализ всех работающих на сайте скриптов, находит устаревшее программное обеспечение и проблемные места проекта. Включает в себя множество плагинов и всегда генерирует много запросов.
  • Acunetix. Интуитивно понятный и мощный инструмент для онлайн-анализа вашего сайта. Бесплатного функционала чаще всего достаточно для первичного ознакомления с возможностями этого монстра.
  • The Metasploit Framework. Полноценный инструмент хакера. Исходя из специфики используемого протокола атаки, программа подбирает различные эксплойты и пытается взломать сервис. В связке с утилитой NMAP процесс взлома практически автоматизируется, так как она сама находит уязвимые порты и сервисы на домене.

Одним из наиболее важных вопросов в области информационных технологий является безопасность. Знаете ли вы, что 96% тестируемых приложений имеют уязвимости?

Ниже приведена диаграмма от Cenzic, на которой показаны различные типы найденных уязвимостей.


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

Список рассматриваемых инструментов:

  • Scan My Server;
  • SUCURI;
  • Qualys SSL Labs, Qualys FreeScan;
  • Quttera;
  • Detectify;
  • SiteGuarding;
  • Web Inspector;
  • Acunetix;
  • Asafa Web;
  • Netsparker Cloud;
  • UpGuard Web Scan;
  • Tinfoil Security.

1. Scan My Server

ScanMyServer предоставляет один из самых полных отчетов по тестам безопасности: SQL-инъекциям, межсайтовому скриптингу, инъекциям PHP-кода, раскрытию источника, установке HTTP-заголовков и многое другое.


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

2. SUCURI

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


SUCURI также очищает и защищает сайт от онлайн-угроз. Инструмент работает на любых CMS, включая WordPress, Joomla, Magento, Drupal, phpBB и т. д.

3. Qualys SSL Labs, Qualys FreeScan

SSL Labs является одним из популярных инструментов для сканирования веб-сервера SSL. Он обеспечивает углубленный анализ https URL-адреса, общий рейтинг, шифр, версию SSL / TLS, имитацию рукопожатий, информацию о протоколе, BEAST и многое другое.


FreeScan проверяет сайты на OWASP Top Risks и вредоносные программы, по параметрам безопасности SCP, а также выполняет другие тесты. Чтобы выполнить сканирование, необходимо зарегистрировать бесплатную учетную запись.

4. Quttera

Quttera проверяет сайт на наличие вредоносных программ и уязвимостей.



Этот инструмент сканирует сайт на наличие вредоносных файлов, подозрительных файлов, потенциально подозрительных файлов, phishTank, а также присутствие в списках безопасного просмотра (Google, Yandex) и списках вредоносных программ.

5. Detectify

Detectify — это сканер сайта, основанный на SaaS. Он позволяет проводить более 100 автоматических тестов безопасности, включая тест OWASP Top 10, наличие вредоносного программного обеспечения и многие другие.

Detectify предоставляет 21-дневную бесплатную ознакомительную версию.

6. SiteGuarding

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

Сканер совместим с WordPress, Joomla, Drupal, Magento, osCommerce, Bulletin и другими платформами.


SiteGuarding также помогает удалить вредоносное программное обеспечение с сайта.

7. Web Inspector

Web Inspector сканирует сайт и предоставляет отчеты — «черный список», «фишинг», «вредоносные программы», «черви», «бэкдоры», «трояны», «подозрительные фреймы», «подозрительные подключения».


8. Acunetix

Acunetix проверяет весь сайт на наличие более 500 различных уязвимостей.


Инструмент предоставляет бесплатную пробную версию на 14 дней.

9. Asafa Web

AsafaWeb предлагает сканирование трассировки, пользовательских ошибок, трассировки стека, патча Hash DoS, журнала EMLAH, HTTP Only Cookies, Secure Cookies, Clickjacking и многого другого.


10. Netsparker Cloud

Netsparker Cloud — это сканер безопасности корпоративных веб-приложений, который способен обнаружить более 25 критических уязвимостей. Он бесплатен для проектов с открытым исходным кодом. Также можно запросить пробную версию инструмента.


11. UpGuard Web Scan

UpGuard Web Scan — это инструмент оценки внешних рисков, который использует общедоступную информацию по различным факторам, включая SSL, атаки Clickjack, Cookie, DNSSEC, заголовки и т. д. Он все еще находится на стадии бета-тестирования, но его стоит попробовать.


12. Tinfoil Security

Tinfoil Security сначала проверяет сайт на наличие 10 уязвимостей OWASP, а затем на другие известные угрозы. В конечном итоге вы получите отчет о действиях и сможете повторно просканировать сайт после внесения необходимых исправлений.

Полная настройка займет около 5 минут. Просканировать сайт можно даже если он защищен или для входа на него требуется регистрация.


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

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

Перевод статьи «12 Online Free Tools to Scan Website Security Vulnerabilities & Malware» был подготовлен дружной командой проекта



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows