Преглед на безплатни инструменти за тестване на уеб ресурси и други v2

Преди време писах за това, но малко оскъдно и хаотично. След това реших да разширя списъка с инструменти в прегледа, да добавя структура към статията и да взема под внимание критиките (много благодаря Лефти за съвет) и го изпрати на конкурс в SecLab (и го публикува връзка, но по всички очевидни причини никой не я видя). Конкурсът приключи, резултатите са обявени и с чиста съвест мога да го публикувам (статията) на Хабре.

Безплатни инструменти за Pentester за уеб приложения

В тази статия ще говоря за най-популярните инструменти за пентестиране (тестове за проникване) на уеб приложения, използващи стратегията „черна кутия“.
За да направим това, ще разгледаме помощни програми, които ще помогнат при този тип тестване. Помислете за следните категории продукти:

  1. Мрежови скенери
  2. Скенери за пробиви в уеб скриптове
  3. Експлоатация
  4. Автоматизация на инжекциите
  5. Дебъгери (снифери, локални проксита и т.н.)


Някои продукти имат универсален „характер“, затова ще ги класифицирам в категорията, в която иматопо-добър резултат (субективно мнение).

Мрежови скенери.

Основната задача е да откриете наличните мрежови услуги, да инсталирате техните версии, да определите операционната система и т.н.

NmapПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
Nmap ("Картограф на мрежа") е безплатна помощна програма с отворен код за мрежов анализ и одит на сигурността на системата. Яростните противници на конзолата могат да използват Zenmap, който е GUI за Nmap.
Това не е просто „умен“ скенер, той е сериозен разширяем инструмент (една от „необичайните функции“ е наличието на скрипт за проверка на възел за наличие на червей "Stuxnet“ (споменато тук). Типичен пример за употреба:

nmap -A -T4 localhost

-A за откриване на версия на ОС, сканиране и проследяване на скриптове
-T4 настройка за контрол на времето (повече е по-бързо, от 0 до 5)
localhost - целеви хост
Нещо по-твърдо?

nmap -sS -sU -T4 -A -v -PE -PP -PS21,22,23,25,80,113,31339 -PA80,113,443,10042 -PO --script all localhost

Това е набор от опции от профила "бавно цялостно сканиране" в Zenmap. Отнема доста време за завършване, но в крайна сметка предоставя по-подробна информация, която може да се намери за целевата система. Помощно ръководство на руски, ако решите да се задълбочите, препоръчвам и превод на статията Ръководство за начинаещи в Nmap.
Nmap е удостоен със статут „Продукт за сигурност на годината“ от списания и общества като Linux Списание, Инфо свят, LinuxQuestions.Org и Codetalker Digest.
Интересен момент, Nmap може да се види във филмите „The Matrix Reloaded“, „Die Hard 4“, „The Bourne Ultimatum“, „Hottabych“ и друг.

IP-ToolsПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
IP-Tools - един вид набор от различни мрежови помощни програми, идва с GUI, „посветен“ на потребителите на Windows.
Скенер за портове, споделени ресурси (споделени принтери/папки), WhoIs/Finger/Lookup, telnet клиент и много повече. Просто удобен, бърз, функционален инструмент.

Няма особен смисъл да се разглеждат други продукти, тъй като в тази област има много помощни програми и всички те имат сходни принципи на работа и функционалност. Все пак nmap остава най-често използваният.

Скенери за пробиви в уеб скриптове

Опитвате се да намерите популярни уязвимости (SQL inj, XSS, LFI/RFI и т.н.) или грешки (неизтрити временни файлове, индексиране на директории и т.н.)

Скенер за уеб уязвимости на AcunetixПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
Скенер за уеб уязвимости на Acunetix — от връзката можете да видите, че това е xss скенер, но това не е съвсем вярно. Безплатната версия, налична тук, предоставя доста голяма функционалност. Обикновено човекът, който стартира този скенер за първи път и получава отчет за своя ресурс за първи път, изпитва лек шок и ще разберете защо, след като го направите. Това е много мощен продукт за анализиране на всички видове уязвимости на уебсайт и работи не само с обичайните PHP уебсайтове, но и на други езици (въпреки че разликата в езика не е показател). Няма особен смисъл да се описват инструкциите, тъй като скенерът просто „улавя“ действията на потребителя. Нещо подобно на „следващ, следващ, следващ, готов“ в типична софтуерна инсталация.

NiktoПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
Nikto Това е уеб робот с отворен код (GPL). Елиминира рутинната ръчна работа. Търси целевия сайт за неизтрити скриптове (някои test.php, index_.php и т.н.), инструменти за администриране на бази данни (/phpmyadmin/, /pma и други подобни) и т.н., тоест проверява ресурса за най-честите грешки обикновено причинени от човешки фактори.
Освен това, ако намери някакъв популярен скрипт, той го проверява за пуснати експлойти (които са в базата данни).
Отчита наличните "нежелани" методи като PUT и TRACE
И така нататък. Много е удобно, ако работите като одитор и анализирате уебсайтове всеки ден.
От минусите бих искал да отбележа високия процент фалшиви положителни резултати. Например, ако вашият сайт винаги дава основната грешка вместо грешка 404 (когато трябва да се появи), тогава скенерът ще каже, че вашият сайт съдържа всички скриптове и всички уязвимости от неговата база данни. На практика това не се случва толкова често, но като факт много зависи от структурата на вашия сайт.
Класическа употреба:

./nikto.pl -host localhost

Ако трябва да бъдете оторизирани на сайта, можете да зададете бисквитка във файла nikto.conf, променливата STATIC-COOKIE.

WiktoПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
Wikto - Никто под Windows, но с някои допълнения, като например размита логика за проверка на грешки, използване на GHDB, извличане на връзки към ресурси и папки и наблюдение в реално време на HTTP заявки/отговори. Wikto е написан на C# и изисква .NET framework.

скачаща рибаПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
скачаща риба - скенер за уеб уязвимости от Михал Залевски (известен като lcamtuf). Написано на C, междуплатформено (Win изисква Cygwin). Рекурсивно (и за много дълго време, около 20~40 часа, въпреки че последният път, когато работи за мен, беше 96 часа) той обхожда целия сайт и намира всякакви дупки в сигурността. Освен това генерира много трафик (няколко GB входящи/изходящи). Но всички средства са добри, особено ако имате време и ресурси.
Типична употреба:

./skipfish -o /home/reports www.example.com

В папката “отчети” ще има отчет в html, пример.

w3af Преглед на безплатни инструменти за тестване на уеб ресурси и други v2
w3af — Рамка за атака и одит на уеб приложения, скенер за уеб уязвимости с отворен код. Има GUI, но можете да работите от конзолата. По-точно, това е рамка с куп плъгини.
Мога да говоря безкрайно за ползите му, но е по-добре да го пробвам :]
Типичната работа с него се свежда до избор на профил, задаване на цел и всъщност стартирането му.

Mantra Security FrameworkПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
Мантра е сбъдната мечта. Колекция от безплатни и отворени инструменти за защита на информацията, вградени в уеб браузър.
Много полезно при тестване на уеб приложения на всички етапи.
Използването се свежда до инсталиране и стартиране на браузъра.

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

Експлоатация

За автоматизирано и по-удобно използване на уязвимости експлойтовете са написани в софтуер и скриптове, на които само трябва да бъдат предадени параметри, за да се използва дупката в сигурността. Има и продукти, които премахват необходимостта от ръчно търсене на експлойти и дори прилагането им в движение. Тази категория ще бъде обсъдена сега.

Metasploit Framework Преглед на безплатни инструменти за тестване на уеб ресурси и други v2
Рамката Metasploit® - един вид чудовище в нашия бизнес. Той може да направи толкова много, че инструкциите ще обхващат няколко статии. Ще разгледаме автоматичното използване (nmap + metasploit). Изводът е следният: Nmap ще анализира порта, от който се нуждаем, ще инсталира услугата и metasploit ще се опита да приложи експлойти към нея въз основа на класа на услугата (ftp, ssh и т.н.). Вместо текстови инструкции ще вмъкна видео, доста популярно по темата autopwn

Възпроизвеждане на видео

Или можем просто да автоматизираме работата на необходимия експлойт. например:

msf > use auxiliary/admin/cisco/vpn_3000_ftp_bypass
msf auxiliary(vpn_3000_ftp_bypass) > set RHOST [TARGET IP]
msf auxiliary(vpn_3000_ftp_bypass) > run

Всъщност възможностите на тази рамка са много обширни, така че ако решите да отидете по-дълбоко, отидете на връзка

ArmitageПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
Armitage — OVA на графичния интерфейс на жанра киберпънк за Metasploit. Визуализира целта, препоръчва експлойти и предоставя разширени функции на рамката. Като цяло за тези, които обичат всичко да изглежда красиво и впечатляващо.
Скринкаст:

Възпроизвеждане на видео

Устойчив Nessus®Преглед на безплатни инструменти за тестване на уеб ресурси и други v2
Tenable Nessus® скенер за уязвимости - може да прави много неща, но една от способностите, от които се нуждаем, е да определя кои услуги имат експлойти. Безплатна версия на продукта „само за дома“

Использование:

  • Изтеглено (за вашата система), инсталирано, регистрирано (ключът се изпраща на вашия имейл).
  • Стартира сървъра, добави потребителя към Nessus Server Manager (бутон Управление на потребителите)
  • Отиваме на адреса
    https://localhost:8834/

    и вземете флаш клиента в браузъра

  • Сканира -> Добави -> попълнете полетата (като изберете профила за сканиране, който ни подхожда) и щракнете върху Сканиране

След известно време докладът за сканиране ще се появи в раздела Отчети
За да проверите практическата уязвимост на услугите към експлойти, можете да използвате Metasploit Framework, описана по-горе, или да опитате да намерите експлойт (например на Explot-db, пакетна буря, експлоатационно търсене и т.н.) и го използвайте ръчно срещу неговата система
IMHO: твърде обемисти. Доведох го като един от лидерите в тази посока на софтуерната индустрия.

Автоматизация на инжекциите

Много от секенерите за уеб приложения търсят инжекции, но те все още са само общи скенери. И има помощни програми, които специално се занимават с търсене и използване на инжекции. За тях ще говорим сега.

sqlmapПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
sqlmap — помощна програма с отворен код за търсене и използване на SQL инжекции. Поддържа сървъри за бази данни като: MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, SQLite, Firebird, Sybase, SAP MaxDB.
Типичното използване се свежда до реда:

python sqlmap.py -u "http://example.com/index.php?action=news&id=1"
Има достатъчно ръководства, включително и на руски. Софтуерът значително улеснява работата на пентестера при работа в тази област.
Ще добавя официална видео демонстрация:

Възпроизвеждане на видео

bsqlbf-v2
bsqlbf-v2 — perl скрипт, brute forcer за „слепи“ Sql инжекции. Работи както с целочислени стойности в url, така и с низови стойности.
Поддържа се база данни:

  • MS-SQL
  • MySQL
  • PostgreSQL
  • Оракул

Пример за употреба:

./bsqlbf-v2-3.pl -url www.somehost.com/blah.php?u=5 -blind u -sql "select table_name from imformation_schema.tables limit 1 offset 0" -database 1 -type 1

-url www.somehost.com/blah.php?u=5 — Връзка с параметри
-сляп u — параметър за инжектиране (по подразбиране последният се взема от адресната лента)
-sql "изберете table_name от imformation_schema.tables limit 1 offset 0" — нашата произволна заявка към базата данни
-база данни 1 — сървър на база данни: MSSQL
- тип 1 — тип атака, „сляпо“ инжектиране, базирано на отговори True и Error (например синтактични грешки)

Дебъгери

Тези инструменти се използват главно от разработчиците, когато имат проблеми с резултатите от изпълнението на своя код. Но тази посока е полезна и за pentesting, когато можем да заменим данните, от които се нуждаем, в движение, да анализираме какво идва в отговор на нашите входни параметри (например по време на размиване) и т.н.

Супер суит
Супер суит — набор от помощни програми, които помагат при тестове за проникване. Има го в интернет добър преглед на руски от Raz0r (макар и за 2008 г.).
Безплатната версия включва:

  • Burp Proxy е локален прокси, който ви позволява да променяте вече генерирани заявки от браузъра
  • Burp Spider - паяк, търси съществуващи файлове и директории
  • Burp Repeater - ръчно изпращане на HTTP заявки
  • Burp Sequencer - анализиране на случайни стойности във формуляри
  • Burp Decoder е стандартен енкодер-декодер (html, base64, hex и др.), от които има хиляди, които могат бързо да бъдат написани на всеки език
  • Burp Comparer - Компонент за сравнение на низове

По принцип този пакет решава почти всички проблеми, свързани с тази област.

цигуларПреглед на безплатни инструменти за тестване на уеб ресурси и други v2
цигулар — Fiddler е прокси за отстраняване на грешки, който регистрира целия HTTP(S) трафик. Позволява ви да изследвате този трафик, да задавате точки на прекъсване и да „играете“ с входящи или изходящи данни.

Налице е също така Fire sheep, чудовище Wireshark и други, изборът е на потребителя.

Заключение

Естествено, всеки pentester има свой собствен арсенал и свой собствен набор от помощни програми, тъй като има просто много от тях. Опитах се да изброя някои от най-удобните и популярни. Но за да може всеки да се запознае с други помощни програми в тази посока, ще дам връзки по-долу.

Различни топове/списъци на скенери и помощни програми

разпределения Linux, които вече включват куп различни помощни програми за pentesting

UPD: Документация на BurpSuite на руски от екипа “Hack4Sec” (добавен Антон Кузмин)

PS Не можем да мълчим за XSpider. Не участва в прегледа, въпреки че е shareware (разбрах, когато изпратих статията на SecLab, всъщност поради това (не познаване и липса на най-новата версия 7.8) и не го включих в статията). И на теория беше планиран преглед на него (имам подготвени трудни тестове за него), но не знам дали светът ще го види.

PPS Някои материали от статията ще бъдат използвани по предназначение в предстоящ доклад на CodeFest 2012 в секцията QA, която ще съдържа инструменти, които не са споменати тук (безплатни, разбира се), както и алгоритъма, в какъв ред какво да използвате, какъв резултат да очаквате, какви конфигурации да използвате и всякакви съвети и трикове, когато работи (мисля за доклада почти всеки ден, ще се опитам да ви кажа всичко най-добро за темата тема)
Между другото, имаше урок по тази статия в Open InfoSec Days (етикет на Хабре, уебсайт), мога ограбват Корованите погледни Материали.

Източник: www.habr.com

Купете надежден хостинг за сайтове с DDoS защита, VPS VDS сървъри 🔥 Купете надежден уеб хостинг със защита от DDoS атаки, VPS VDS сървъри | ProHoster