Въведение в тестване за сигурност

Тестване на сигурността е тип тестване на софтуер, предназначен да открива уязвимостите на системата и да гарантира, че информацията и ресурсите му са защитени от възможни натрапници. По подобен начин, уеб приложението се нуждае от освен защита на данните и сигурност по отношение на достъпа си. Приложението трябва да е имунизирано срещу Brute Force Attacks и XSS, SQL Injections, от уеб разработчик. По подобен начин точките за отдалечен достъп на уеб приложението също трябва да бъдат безопасни. Значението на безопасността обаче нараства експоненциално, когато говорим за интернет. Никой никога няма да си помисли, че ако онлайн система не може да защити данните за транзакциите. Безопасността все още не е термин за нейното определение.
Ето някои списъци на недостатъци на сигурността
• Ако клонът „Вход“ може да редактира информацията за изпита, системата за управление на студентите е несигурна.
• Ако DEO (оператор за въвеждане на данни) може да изготви „отчети“, ERP схема не е безопасна.
• Ако данните за кредитната карта на клиент не са шифровани, тогава онлайн уебсайтът няма безопасност.
• Персонализираният софтуер има недостатъчна безопасност, когато SQL заявка намери истински потребителски пароли.

Видове тестове за сигурност

Ръководството за методология за тестване на сигурността с отворен код има седем основни вида тестове за безопасност. Описано е следното:

1. Сканиране на уязвимостта

Това се извършва чрез автоматизиран софтуер за сканиране на система за известни подписи на уязвимостта.

2. Сканиране за сигурност

Тя включва идентифициране на слабости в мрежата и системата и предлага алтернативи за намаляване на такива опасности. За ръчно и автоматизирано сканиране това сканиране може да се направи.

3. Тест за проникване

Този тест симулира злонамерена хакерска атака. Този преглед включва анализ на конкретна система за откриване на потенциални уязвимости при вътрешно хакване.

4. Оценка на риска

Този тест включва анализ на опасностите за безопасност, наблюдавани в компанията. Рисковете имат ниска, средна и висока класификация. Този тест предлага контрол и действия за намаляване на риска.

5. Одитиране на сигурността

Одитът може също да се извършва онлайн по линия, проверка на кода и операционни системи за грешки в безопасността.

6.Етично хакерство

Етичното хакване не е същото като злокачественото хакване. Етичното хакване е насочено към идентифициране на недостатъци в безопасността в организационната структура.

7. Оценка на стойката

Това съчетава сканиране на безопасността, оценки на риска и етично хакване, за да се покаже цялостната позиция за безопасност на организацията.

Методологии за тестване на сигурността

Има различни методологии за тестване на сигурността
1. Кутия за тигър
2. Черна кутия
3. Сива кутия

Tiger Box:

Това хакване обикновено се извършва на лаптоп с OS и събиране на хакерски инструменти. Този тест позволява на операторите за тестване на проникване и операторите за тестване за сигурност да оценяват и атакуват уязвимостите.

Черна кутия:

Black Box Testing е метод за тестване на софтуер, известен на тестера като Поведенческо тестване. По този начин не е известен вътрешният дизайн на тестовия продукт. Тези изпити могат да бъдат или функционални, или не.

Сива кутия:

Grey Box Testing е техника за тестване на софтуер, която комбинира тест на Black Box и White Box. Grey Box Testing е метод за тестване на приложението или софтуера, който има част от вътрешната работа на изпълнението.

Как можем да направим тестване на сигурността?

Винаги е било договорено, че ако отложим тестване за сигурност след внедряване или внедряване на софтуер, тази цена ще бъде увеличена. В по-ранните етапи трябва да се провеждат тестове за сигурност в жизнения цикъл на SDLC. Нека разгледаме подходящите процедури за сигурност за всеки етап на SDLC. За входните зони тестерът може да провери максималните дължини. Това ограничение не може - да не позволи на хакер да включва такива злонамерени скриптове.
• Изисквания за оценка на сигурността и проверка за злоупотреба / злоупотреба.
• Анализ на опасностите за сигурността при проектиране. Разработка на план за изпитване, включително тестване за безопасност.

Топ 10 инструменти за тестване с отворен код

По-долу е списъкът на най-добрите инструменти за тестване на сигурността, заедно с техните функции. Можете да изберете всеки инструмент въз основа на вашите нужди.

1. Wapiti

Wapiti е мощен инструмент за тестване на сигурността на уеб приложения за оценка на безопасността на вашето уеб приложение. Той извършва "тестване на черни кутии", за да провери за потенциална уязвимост в уеб приложенията. Той сканира уеб страниците и инжектира информация за тестване, за да следи дефицита на безопасност по време на фазата на тестване. Wapiti дефинира множество уязвимости за поддръжката на GET и POST HTTP атаки. Wapiti е приложение за команди, което е трудно за начинаещи, но просто за професионалисти. Софтуерът се нуждае от пълно разбиране на командите.

Характеристики на Wapiti

• XSS инжектиране
• Инжектиране на база данни
• Откриване на изпълнение на командите.
• инжектиране CRLF

2. Zed Attack Proxy

Zed Attack Proxy, обикновено известен като ZAP, ZAP е създаден от OWASP и с това ZAP е с отворен код. Zed Attack Proxy, поддържан от Unix / Linux, Windows и Mac OS, Zed Attack Proxy ви позволява да идентифицирате редица уязвими места дори по време на етапа на разработване и тестване на уеб приложения. Този инструмент за тестване е лесен за използване, дори когато сте начинаещ тест за проникване.

Характеристики на Zed Attack

• Zed Attack Proxy има поддръжка на автоматичен скенер и поддръжка.
• Zed Attack Proxy също има динамичен SSL сертификат и поддръжка на уеб сокет.

3. Вега

Написана на JAVA, Vega има GUI. Той е достъпен на Linux, Mac OS и Windows, което може да ви помогне. Vega е безплатен инструмент за тестване на уеб приложения и платформа с отворен код. Vega може да помогне при намирането и валидирането на SQL инжектиране, кръстосани скриптове (XSS) и други уязвимости. Може да се използва и за задаване на предпочитания, като брой на потомците на пътя и броя на възлите в секунда, максимални и минимални заявки в секунда.

Характеристики на Вега

• Вега има скриптове на различни сайтове.
• SQL Injection Validate

4. W3af

W3af е известна рамка за тестване на сигурността за уеб приложения. Той осигурява ефективна платформа за тестване на проникване на уеб приложения, разработена с помощта на Python. Този инструмент може да бъде използван за идентифициране на повече от 200 вида проблеми с безопасността на интернет приложения, като например кръстосано скриптиране и инжектиране на SQL. Той следи следните уязвимости на уеб приложенията. W3af може лесно да се разбере както в интерфейса на GUI, така и в конзолата. Модулите за удостоверяване също ви позволяват да удостоверите Уебсайта.

Характеристики на W3af

• Множество дефектни настройки за CORS
• CSRF и много по-голяма уязвимост

5. Skipfish

Skipfish е инструмент за тестване на интернет приложение, който коригира сайта и проверява за слабости на всяка страница и накрая подготвя одиторския доклад. Skipfish е написан на c език и е оптимизиран да обработва HTTP и да оставя минимални отпечатъци на процесора. Без да показва отпечатък на процесора, софтуерът, който твърди, че обработва 2 K заявки в секунда. Инструментът също така твърди, че предлага висококачествени предимства, тъй като използва евристиката в уеб приложенията. За интернет приложения Linux, FreeBSD, Mac-OS X и Windows са снабдени с инструменти за оценка на безопасността на Skipfish.

6. SQLMap

SQLMap е често използван уеб-базиран инструмент за тестване на сигурността, който автоматизира процеса на откриване на уязвимост на SQL в базата данни на уебсайтове. Пакетът с множество различни функции, тестовият двигател е мощен, позволява лесно проникване и тестване на SQL инжектиране в уеб приложение. SQLMap поддържа много бази данни, включително MySQL, Oracle, PostgreSQL, Microsoft SQL и др. Освен това тестовият инструмент поддържа шест различни метода на инжектиране на SQL.

7. Wfuzz

Wfuzz е друг инструмент с отворен код, който може да бъде свободно достъпен на пазара за уеб-базиран инструмент за тестване на сигурността. Този инструмент за тестване е разработен в Python и се използва за уеб приложения за груба сила. Трябва да работите върху интерфейса на командния ред, когато използвате WFuzz, защото няма GUI интерфейс. Някои от характеристиките на Wfuzz са:

Характеристики на Wfuzz

• Wifuzz поддържа множество точки за инжектиране.
• Изходът на Wfuzz идва в HTML
• Освен това има мулти-резба
• Освен това има множество прокси поддръжка

8. Metasploit

Една от най-често използваните рамки за тестове за проникване. Metasploit е платформа за тестване с отворен код, която позволява тестове за безопасност далеч над оценката на риска.

Характеристики на Metasploit

• Структурата е далеч по-добра от тази на съперниците.
• Много сценарии за мафиотски функции за инфилтрация

9. Акунетикс

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

Характеристика на Acunetix

  • Той може лесно да произведе много технически средства и средства за съответствие.
  • Сканира както приложения с отворен код, така и персонализирани
  • Дълбоки сканирания за ефективно сканиране.

10. Grabber

Grabber е скенер с отворен код за откриване на уязвимостите в безопасността на интернет приложенията. Малките уеб приложения като форуми и частни интернет сайтове са мобилни и могат да бъдат сканирани. Grabber е малък инструмент за тестване, който отнема повече време за сканиране на големи приложения. Освен това скенерът няма GUI интерфейс и няма функция за генериране на PDF отчети, тъй като е проектиран да се използва за лична употреба.

Характеристики на Grabber

• Резервно копие на файлове за проверка
• Проверка на Ajax

заключение

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

Препоръчителни статии

Това е ръководство за тестване на сигурността. Тук обсъждаме въвеждането, типовете, методологиите и Топ 10 инструменти за тестване за сигурност с отворен код. Можете да разгледате и другите ни предложени статии, за да научите повече -

  1. Алфа тестване срещу бета тестване
  2. Статично тестване
  3. Какво е тестване за използваемост?
  4. Инструменти за тестване на производителността
  5. Предимства и недостатъци на бета тестване
  6. Научете инструментите за тестване на приложения