Upload
ctianalytics
View
198
Download
0
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.
Доверенный
сайт
Полезное Дестйвие Зашифровано
IP Intelligence Идентификация и управление пользователями с известной вредоносной активностью
• Используйте IP intelligence для блокирования атак
• Снижение расходов на периметр ИБ
?
Scanners
IP Intelligence Service
Внутренние сервисы и
устройства
• Необходимо ограничивать вход из других стран из юридических соображений.
• Также это хороший способ значительно снизить число возможных атак.
Ограничение пользователей в зависимости от их положения
Автоматизированные определение и защита от 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™ …