35
CONFIDENTIAL Александр Серебряков Александр Филюков Системный Инженер Инженер группы ИБ [email protected] [email protected] БЕЗОПАСНОСТЬ WEB- ПРИЛОЖЕНИЙ С F5. BIG-IP ASM.

защита Web приложений f5 cti

Embed Size (px)

Citation preview

CONFIDENTIAL

Александр Серебряков Александр Филюков

Системный Инженер Инженер группы ИБ

[email protected] [email protected]

БЕЗОПАСНОСТЬ WEB-ПРИЛОЖЕНИЙ С F5. BIG-IP ASM.

2012 Gartner Magic Quadrant for ADC

• F5 is a strong market leader, with a very large share and a strong financial base

• F5 has a broad and comprehensive vision, with industry-leading understanding of the needs of application development, deployment and management

• F5's investment in iRules, iControl and iApps, along with its DevCentral portal, results in strong partnerships and a loyal community of customers that would find it difficult to migrate away from F5

Интеллектуальная Сервисная Платформа

Виртуальные

Физические

Облачные

Хранилище

Интеллектуальная Сервисная

Платформа соединяет любого

пользователя, из любого места, с

любого устройства к лучшим

ресурсам приложения в зависимости

от инфраструктуры.

Всегда, для Всех, Отовсюду Интеллектуальная Динамическая, Гибкая, Адаптивная

Пользователи

Полная интеллектуальность требует Полного Прокси

• App “point of delivery & definition”

• App Intelligence - layer 3- 7 visibility

• Distinct client / server control

• Unified services / context

• Interoperability and gateway functions

Преимущества Full Proxy

Network

Session

Application

Physical

Client/Server

IT = Полный Контроль

Бизнес = Снижение Затрат на Доставку и Запуск

Network

Session

Application

Physical

Client/Server

Web Application Web Application

F5 Предоставляет Стратегическую Видимость

• Понимает и адаптирует ресурсы

приложение на основе контекста

пользователя и ожидаемого поведения

приложения

• Предоставляет полную видимость

состояния приложения и его сессий

• Обеспечивает полный контроль

трафика пользователей и приложений

внутрь ЦОД и наружу

APPLICATION AWARENESS

• Принимает решения управления

трафиком в реальном времени в

зависимости от производительности

приложения

• Помогает в планировании мощностей

и настройки производительности

• Оптимизирует приложения без их

доработаки

RESOURCES AWARENESS

• Проксирует и проверяет 100% входящего

трафика

• Определяет окружение пользователя,

такое как тип клиентского устройства и

местоположение

• Применяет политики, основанные на

логике, понятной бизнесу

USER AWARENESS

Состав Интеллектуальной Платформы

iRules iControl iApps

Hardware Software

TMOS

Безопасность

Доступность

Оптимизация

DevCentral Непревзойденная Программируемость: Встроенная

изменяемость расширяемой и программируемой

архитектуры (iRules, iApps и iControl)

Функциональные Возможности: Предоставляют

Динамическую Доставку приложений от ЦОДа до

устройства

Масштабируемость и гибкость

Приложения: Созданы для обеспечения

изменяющихся требований производительности

Хакеры двигаются “Вверх по стеку”

90% of security investment

focused here

Сетевые Угрозы Угрозы Приложений

75% of attacks focused here

Source: Gartner

OWASP Top 10 for 2013 (RC1)

• A1 Injection

• A2 Broken Authentication and Session Management

• A3 Cross-Site Scripting (XSS)

• A4 Insecure Direct Object References

• A5 Security Misconfiguration

• A6 Sensitive Data Exposure

• A7 Missing Function Level Access Control

• A8 Cross-Site Request Forgery (CSRF)

• A9 Using Known Vulnerable Components

• A10 Unvalidated Redirects and Forwards

Сколько дней нужно чтобы определить конкретную уязвимость?

Spring 2009 Website Security Statistics Report

• Обеспечивает комплексную защиту для всех уязвимостей веб приложений, включая (D)DoS

• Предоставляет отчеты и журналы обо всем трафике приложения и атаках

• Обучает администратора типам атак и их определениям

• Предоставляет полную защиту от L2 до L7

• Объединяет безопасность, контроль доступа и доставку приложений

• Видит производительность на уровне приложения

• Масштабируется по запросу

BIG-IP Application Security Manager Мощное и гибкое решение

Быстрое выявление уязвимостей

• ASM защищает на уровне сети, протоколов и приложений

• Запуск приложений безопасен для всех типов угроз

Enforcement

Запрос отправлен BIG-IP ASM проверяет политку безопасности

Сервер отвечает

BIG-IP ASM применяет свойства безопасности

Уязвимое приложение Получен безопасный

ответ

Start by checking RFC

compliance

2 Then check for various length

limits in the HTTP

3 Then we can enforce valid

types for the application

4 Then we can enforce a list of

valid URLs

5 Then we can check for a list of

valid parameters

Then for each parameter we

will check for max value length

7 Then scan each parameter, the

URI, the headers

6

GET /search.php?name=Acme’s&admin=1 HTTP/1.1

Host: 172.29.44.44\r\n

Connection: keep-alive\r\n

User-Agent: Mozilla/5.0 (Windows NT 6.1)\r\n

Accept:text/html,application/xhtml+xml,application/xml;q=0.9\r\n

Referer: http://172.29.44.44/search.php?q=data\r\n

Accept-Encoding: gzip,deflate,sdch\r\n

Accept-Language: en-GB,en-US;q=0.8,en;q=0.6\r\n

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3\r\n

Cookie: SESSION=0af2ec985d6ed5354918a339ffef9226; \r\n

Start by checking RFC

compliance

2 Then check for various length

limits in the HTTP

3 Then we can enforce valid

types for the application

4 Then we can enforce a list of

valid URLs

5 Then we can check for a list of

valid parameters

6 Then for each parameter we will

check for max value length

7 Then scan each parameter, the

URI, the headers

GET /search.php?name=Acme’s&admin=1 HTTP/1.1

Host: 172.29.44.44\r\n

Connection: keep-alive\r\n

User-Agent: Mozilla/5.0 (Windows NT 6.1)\r\n

Accept:text/html,application/xhtml+xml,application/xml;q=0.9\r\n

Referer: http://172.29.44.44/search.php?q=data\r\n

Accept-Encoding: gzip,deflate,sdch\r\n

Accept-Language: en-GB,en-US;q=0.8,en;q=0.6\r\n

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3\r\n

Cookie: SESSION=0af2ec985d6ed5354918a339ffef9226; \r\n

Start by checking RFC

compliance

2 Then check for various length

limits in the HTTP

3 Then we can enforce valid

types for the application

4 Then we can enforce a list of

valid URLs

5 Then we can check for a list of

valid parameters

Then for each parameter we

will check for max value length

7 Then scan each parameter, the

URI, the headers

6

GET /search.php?name=Acme’s&admin=1 HTTP/1.1

Host: 172.29.44.44\r\n

Connection: keep-alive\r\n

User-Agent: Mozilla/5.0 (Windows NT 6.1)\r\n

Accept:text/html,application/xhtml+xml,application/xml;q=0.9\r\n

Referer: http://172.29.44.44/search.php?q=data\r\n

Accept-Encoding: gzip,deflate,sdch\r\n

Accept-Language: en-GB,en-US;q=0.8,en;q=0.6\r\n

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3\r\n

Cookie: SESSION=0af2ec985d6ed5354918a339ffef9226; \r\n

Start by checking RFC

compliance

2 Then check for various length

limits in the HTTP

3 Then we can enforce valid

types for the application

4 Then we can enforce a list of

valid URLs

5 Then we can check for a list of

valid parameters

Then for each parameter we

will check for max value length

7 Then scan each parameter, the

URI, the headers

6

GET /search.php?name=Acme’s&admin=1 HTTP/1.1

Host: 172.29.44.44\r\n

Connection: keep-alive\r\n

User-Agent: Mozilla/5.0 (Windows NT 6.1)\r\n

Accept:text/html,application/xhtml+xml,application/xml;q=0.9\r\n

Referer: http://172.29.44.44/search.php?q=data\r\n

Accept-Encoding: gzip,deflate,sdch\r\n

Accept-Language: en-GB,en-US;q=0.8,en;q=0.6\r\n

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3\r\n

Cookie: SESSION=0af2ec985d6ed5354918a339ffef9226; \r\n

Start by checking RFC

compliance

2 Then check for various length

limits in the HTTP

3 Then we can enforce valid

types for the application

4 Then we can enforce a list of

valid URLs

5 Then we can check for a list of

valid parameters

Then for each parameter we

will check for max value length

7 Then scan each parameter, the

URI, the headers

6

GET /search.php?name=Acme’s&admin=1 HTTP/1.1

Host: 172.29.44.44\r\n

Connection: keep-alive\r\n

User-Agent: Mozilla/5.0 (Windows NT 6.1)\r\n

Accept:text/html,application/xhtml+xml,application/xml;q=0.9\r\n

Referer: http://172.29.44.44/search.php?q=data\r\n

Accept-Encoding: gzip,deflate,sdch\r\n

Accept-Language: en-GB,en-US;q=0.8,en;q=0.6\r\n

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3\r\n

Cookie: SESSION=0af2ec985d6ed5354918a339ffef9226; \r\n

Start by checking RFC

compliance

2 Then check for various length

limits in the HTTP

3 Then we can enforce valid

types for the application

4 Then we can enforce a list of

valid URLs

5 Then we can check for a list of

valid parameters

Then for each parameter we

will check for max value length

7 Then scan each parameter, the

URI, the headers

6

GET /search.php?name=Acme’s&admin=1 HTTP/1.1

Host: 172.29.44.44\r\n

Connection: keep-alive\r\n

User-Agent: Mozilla/5.0 (Windows NT 6.1)\r\n

Accept:text/html,application/xhtml+xml,application/xml;q=0.9\r\n

Referer: http://172.29.44.44/search.php?q=data\r\n

Accept-Encoding: gzip,deflate,sdch\r\n

Accept-Language: en-GB,en-US;q=0.8,en;q=0.6\r\n

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3\r\n

Cookie: SESSION=0af2ec985d6ed5354918a339ffef9226; \r\n

GET /search.php?name=Acme’s&admin=1 HTTP/1.1

Host: 172.29.44.44\r\n

Connection: keep-alive\r\n

User-Agent: Mozilla/5.0 (Windows NT 6.1)\r\n

Accept:text/html,application/xhtml+xml,application/xml;q=0.9\r\n

Referer: http://172.29.44.44/search.php?q=data\r\n

Accept-Encoding: gzip,deflate,sdch\r\n

Accept-Language: en-GB,en-US;q=0.8,en;q=0.6\r\n

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3\r\n

Cookie: SESSION=0af2ec985d6ed5354918a339ffef9226; \r\n

Начнем с проверки на

соотвествие RFC стандартам

2 Потом проверка различных

лимитов в HTTP

3 Затем мы можем проверять

разрешенные типы файлов в

приложении

4 Затем мы можем проверять

список разрешенных УРЛов

5 Затем мы можем проверить

список разрешенных

параметров

Для каждого параметра мы

можем проверить его

максимальную

длину/значение

7 Затем все это

просканировать через

сигнатуры атак

6

Сравнение ASM и других способов защиты

Known Web Worms

Unknown Web Worms

Known Web Vulnerabilities

Unknown Web Vulnerabilities

Illegal Access to Web-server files

Forceful Browsing

File/Directory Enumerations

Buffer Overflow

Cross-Site Scripting

SQL/OS Injection

Cookie Poisoning

Hidden-Field Manipulation

Parameter Tampering

ASM

X

X

X

X

X

X

X

Network Firewall

IPS

X

X

X

X

Ограничено

Ограничено

Ограничено

Ограничено

Ограничено

Частично

X

Ограничено

Ограничено

Ограничено

Ограничено Ограничено

X X

Пример OWASP Top 1. Вставка SQL.

Hacker embedded the string ‘OR 1=1 # into

The username parameter Created the following request:

POST login.php HTTP/1.1

HOST: www.myexample.com

Content-Length: 29

username=%27OR+1%3D1+%23&password=test

Web server :”Request is obeying the

HTTP protocol,

I will parse it, execute the script behind it,

forward a formatted SQL query

to the database”

SQL engine: “Query is properly formatted,

I will execute it”

SELECT * FROM users

WHERE username=‘’

OR 1=1 # AND password=‘test’

Query was successful, it returned with no

Errors, application assumed the user

provided a valid login !

What if…

SELECT * FROM users WHERE username=‘’

OR 1=1; DROP TABLE users #

AND password=‘test’

Пользователи

Тестовое

приложение

BIG-IP

Защищенное приложение 192.168.1.121

Обычный прокси 192.168.1.120

10.2.0.2:80

Пример атаки CSRF

1. Мобильный пользователь

обращается к защищенному

приложению;

2. Сессия аутентифицирована;

3. Пользователь открывает новую

вкладку, чат;

4. Хакер вставляет запрос в чат;

5. В этом запросе может быть включено

любое действие со стороны

пользователя.

Еще Пример - OWASP Top 5. Атака CSRF.

Доверенный

сайт

Полезное Дестйвие Зашифровано

•Просто поставьте галочку

•Список URL для работы

Защита для таких пользователей

Положительная модель безопасности

Экспертная Система Атак в ASM Нажмите на информационный значок

Контроль за login URL?

Login URL

IP Intelligence Идентификация и управление пользователями с известной вредоносной активностью

• Используйте IP intelligence для блокирования атак

• Снижение расходов на периметр ИБ

?

Scanners

IP Intelligence Service

Внутренние сервисы и

устройства

IP address intelligence в ASM

• Необходимо ограничивать вход из других стран из юридических соображений.

• Также это хороший способ значительно снизить число возможных атак.

Ограничение пользователей в зависимости от их положения

Автоматизированные определение и защита от DOS атак • Техника точного определения, основанная на измерении задержки сервера

• 8 различных способ снижения активности выбираются последовательно

• Оставляем внимание на высокой производительности

Условие определения DOS

Определение возможного

злоумышленника

Запретить только

злоумышенников

Контроль над Сканерами и BOT-ами Защита от Web Scraping

Параметры по

умолчанию, для

определения,

блокировки и периода

доверия

В белый список заносят

достоверные IP

PCI DSS # PCI DSS - Requirements F5

1 Install and maintain a firewall configuration to protect cardholder data ✓

2 Do not use vendor-supplied defaults for system passwords and other security parameters ✓

3 Protect stored cardholder data ✓

4 Encrypt transmission of cardholder data across open, public networks ✓

5 Use and regularly update anti-virus software

6 Develop and maintain secure systems and applications ✓

7 Restrict access to cardholder data by business need-to-know ✓

8 Assign a unique ID to each person with computer access ✓

9 Restrict physical access to cardholder data

10 Track and monitor all access to network resources and cardholder data ✓

11 Regularly test security systems and processes

12 Maintain a policy that addresses information security ✓

Отчеты и Применение

Отчеты

Аналитика Приложений

Stats Collected • Server Latency • Client-Side Latency • Throughput • Response Codes • Methods • URLs • Client IPs • Client Geographic • User Agent • User Sessions

Views • Virtual Server • Pool Member • Response Codes • URL • HTTP Methods

• Статистика собрана по приложениям • Предоставляются отчеты

• Исследование процессов • Отчет ROI • Планирование Емкости • Устранение проблем • Производительность

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

• Корреляция на основе Source IP и URL/ Parameter

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

Built for intelligence, speed and scale

Users

Concurrent user sessions

200K Concurrent logins

3,000/sec.

Throughput

640 Gbps Concurrent connections

288 M

Connections per second

8 M

SSL TPS (2K keys)

120K/sec

DNS query response

10 M/sec

Resources

Эволюция решений ИБ от F5

Узконаправленные продукты по ИБ

Интегрированные решения по ИБ

Объединённая платформа безопасности

• Балансировка и

масштабирование

экранов

• Разгрузка SSL

• Технологии Firepass

TrafficShield

1. Контроль допуска к

приложениям

2. Безопасность

приложений

3. Technology Alliance

Program

Объединение информации из

ключевых точек контроля:

ЦОД/Облако/Приложение:

1. App Delivery Firewall

2. Centralized Policy Mgmt

3. Mobile App Mgmt

4. Outbound Services

5. Hybrid Services

Unified Security Modules

iRules®, iApps®, and iControl®

TMOS®

BIG-IP®

Advanced

Firewall

Manager

(AFM)

BIG-IP®

Application

Security

Manager

(ASM)

BIG-IP®

Global

Traffic

Manager

(GTM)

BIG-IP®

Local

Traffic

Manager

(LTM)

BIG-IP®

Carrier

Grade NAT

(CGNAT)

BIG-IP®

Policy

Enforce-

ment

Manager

(PEM)

BIG-IP®

WAN Opt

Manager

(WOM)

BIG-IP®

Web-

Accelerator

(WA)

BIG-IP®

Access

Policy

Manager

(APM)

BIG-IP®

Cloud

Connector

(CC)

BIG-IP®

SDN

Gateway

(SDNG)

BIG-IP®

Mobile App

Manager

(MAM)

BIG-IP®

Modules

BIG-IQ

Security™

BIG-IQ

Cloud™

BIG-IQ

Modules™

BIG-IQ™

BIG-IQ

EM™ …

Защищайте и Ускоряйте Веб Приложения с BIG-IP ASM Преимущества комбинированных решений

• Web application security

• Web app. acceleration

• Access policy enforcement

• Scaling and high availability

• Database monitoring and blocking

• Enterprise Architecture