Security of information and communication systems Andrii Rodionov Institute of physics and technology NTUU «KPI» [email protected]
May 22, 2015
Security of information and communication systems
Andrii RodionovInstitute of physics and technology
NTUU «KPI»[email protected]
Plan for today
Basic terminology Main threats Complex protection Symmetric-key cryptography & Public-key
cryptography Digital signature OS Security Network security
Security issues
http://www.youtube.com/watch?v=gQbUzJUkBXg
gate
Information System Security Key Factors
Developer – vulnerabilities System, Domain, Data Base, … administrators
– misconfigured settings Architect — insecure design Users — viruses, weak passwords, … Information security policy
Information security policy
Main goal is to ensure information is appropriately protected from modification or disclosure.
Should define who can have access to information or information services.
Should define how information is to be stored and transmitted (encrypted, archive files, unencoded, etc).
The main goals of information security Confidentiality
confidentiality is the term used to prevent the disclosure of information to unauthorized individuals or systems
Integrity integrity means that data cannot be modified
undetectably Availability
the information (or service) must be available when it is needed
The threats of violation of the information properties
Confidentiality: “sniffing”: listening of the data transmitted through a
telecommunication channel “spoofing”: an authorized object of telecommunication
exchange is substituted by an unauthorized object Integrity:
partial or complete loss of the information falsification of data
Accessibility: denial of service (DoS or DDoS) attacks, when any
authorized object may obtain data within the certain (short) time interval
Teleworkers
Remote SitesCentral Sites
WANRouter
Network Reference Model
PBX
Hub
IPTGateway
Hub
PSTN
Router
WAN
Violator (Internal)
L3 SwitchL2
Switch
PBX
Violator (External)
Internet
WAN Router/IPT Gateway
TeleworkersSpoofing
Sniffing
WANRouter
The threats of confidentiality violation
HubHub
WANL3 Switch
L2Switch
Internet
WAN Router/IPT Gateway
Router
The threats of integrity violation
The violation of integrity: partial or complete loss of the
information falsification of data
Hub
WAN Router/IPT Gateway
Router
The threats of accessibility violation
The violation of accessibility: denial of service (DoS) attacks
Hub
WAN Router/IPT Gateway
Router
Attack levels
NETWORK DEFENSE
HOST/DEVICE DEFENSE
DATA DEFENSE
APPLICATION DEFENSE
Phys
ical
Sec
urity
• Secured equipment rack• Physically controlled
access• Secure facilities• RFI/EMI shielding• Geographical site location
Security Mechanisms
Security Mechanisms
• HTML content filters• Validation checks• Secure stored procedures
Security Mechanisms
• Windows Server 2003 Security Templates
• IIS 6.0 hardening• HIDS
Security Mechanisms
• Authentication• Security Policy• Encryption• Audit• Access control
Security Mechanisms
• Network device access control lists
• IPSec Encryption• NIDS• Firewalls
Complex protection
Identification and Authentication Access control Registration and audit Integrity Cryptography
Identification and Authentication
The function of identification is to map a known quantity to an unknown entity so as to make it known
Authentication is the act of confirming the truth of an attribute of a datum or entity
Rainbow tables Multi-factor authentication Single Sign On (SSO)
Access control policy
Discretionary access control Role-based access control Mandatory access control
Symmetric-key cryptography
• AES (Advanced Encryption Standard)• ГОСТ 28147-89• DES (Data Encryption Standard)• 3DES (Triple-DES)• RC6• IDEA (International Data Encryption Algorithm)
Public-key cryptography
a x≡bmod p
1) Discrete logarithm problem
2) Integer factorization problem
n= p×q
NP = full search
Network security
Firewalls DMZ (De
Militarized Zone ) NAT (Network
Address Translation)
Sub-netting NAC (Network
Access Control)
VPN (Virtual Private Network)
IDS (Intrusion Detection System)
IPS (Intrusion Prevention Systems)
DLP (Data Leak Prevention)
Network segmentation principles
Security Projects/special applications Performance/bandwidth Broadcasts/traffic flow Departments/specific job types
Security Auditing Tools
Service Mapping Tools Nmap Hping
Vulnerability Assessment Tools Nessus RedSeal
Packet Capture Tools Tcpdump Wireshark/Tshark
Penetration Testing Tools Core Impact Metasploit XSpider
BackTrack
Information Gathering: This category includes tools for DNS mapping, Whois, Finger, and mail scanning.
Network Mapping: Port and services mapping, OS fingerprinting, and VPN discovery. Vulnerability Identification: Tools to identify service, SQL, VoIP, and http
vulnerabilities. Penetration: Tools to exploit vulnerabilities and compromise systems. Metasploit is the
primary application. Privilege Escalation: LAN Sniffers, password sniffers, and spoofing tools are here. Maintaining Access: Backdoors, rootkits, and tunneling applications for retaining
access after exploiting. Radio Network Analysis: Wireless sniffers, scanners, and cracking tools VoIP & Telephony Analysis: VoIP cracking and recording tools Digital Forensics: Disk editors, file system dump tools, and hexeditors for recovering
evidence from deleted and hidden files. Reverse Engineering: Malware analysis tools, application debug tools, hex and
assembly tools.
Most common vulnerabilities
Buffer overflow, integer overflow SQL/Script Injection Cross-Site Scripting (XSS) Unlimited Resource Consumption
(DoS, DDoS) http://live.xakep.ru/blog/Hack/638.html
Information Leakage
Buffer overflow
(DATA)(DATA)(...) (NEWDATA)(DATA)(DATA)(...) (ADDR)(DATA)(DATA)(...) (.a........)(ADDR)(DATA)(DATA)(...)
char[10]
Cross Site Scripting
Videohttp://www.virtualforge.de/vmovie/xss_lesson_1/xss_selling_
platform_v1.0.htmlhttp://www.virtualforge.de/vmovie/xss_lesson_2/xss_selling_
platform_v2.0.html
Рекомендации по безопасности, касающиеся языка C# http://msdn.microsoft.com/ru-
ru/library/ms173195.aspx
SDL: Дизайн
Применение лучших практик по безопасности: Установить и задокументировать критические
компоненты безопасности Следовать принципам безопасного дизайна
Модульный дизайн Разрешать минимальные привилегии
Задокументировать и минимизировать «атакуемую поверхность» Моделирование угроз Удовлетворить крипто-стандарты Не использовать MD4, MD5, SHA1
Гибкость замены крипто-алгоритмов
Моделирование угроз
• Систематический обзор архитектуры с точки зрения атакующего
• Определение ресурсов, угроз, уязвимостей, механизмов защиты и рисков
• Имеет большое значение для тестирования безопасности
• Использование модели “STRIDE”
SDL: Разработка
• Требования к средствам разработки• Улучшения в Visual Studio, начиная с версии 2005 (компиляция с ключом /GS)
• Переход на более безопасные библиотеки C/C++• Не использовать «небезопасные» функции
(http://msdn2.microsoft.com/en-us/library/bb288454.aspx)• Использование инструментов статического анализа• Использование ASLR• Использование последних версий компиляторов и
ХML-парсеров• ...и многое, многое другое
SDL: Верификация
• Кодирование завершено – делается тест безопасности как нового, так и ранее существовавшего кода
• «Фаззинг» для тестирования обработки данных (обработка намеренно некачественных входных данных)o Файлы, RPC, ActiveX, DCOMo Те же методы используют хакеры и исследователи в
области безопасности• Анализаторы безопасности:
o статические (FxCop, PreFast)o Динамические (AppVerifier, Binscope, CAT.NET) o другие инструменты
• Тесты на основе модели угроз• Tестирование взломом (проникновения)
SDL: Выпуск продукта
• Задача: проверить что все требования SDL выполнены– Обзор всей проделанной работы по безопасности
перед выпуском продукта, поиск слабых мест– Независимый взгляд на готовность выпуска с точки
зрения безопасности• Шаги
– Специальный вопросник SDLTrack – Обзор дизайна и моделей угроз– Анализ поверхности атаки– Проверка средств построения продукта– Анализ известных ошибок– Результаты тестирования взломом– Оценка плана реагирования– Дополнительные критерии
Оптимизационная модель внедрения SDL – стандартный уровень готовности•Обучение персонала, организационные планы и мероприятия: поддержка руководства по умолчанию, есть несколько пилотных проектов, введено обучение основным концепциям безопасности•Постановка и дизайн: оценка рисков безопасности, моделирование угроз для задач с высоким уровнем риска•Разработка: использование защиты при компиляции, учет запрещенных функций, защиты от межсайтового скриптинга и SQL-инъекции•Верификация: фаззинг, сканирование веб-приложений, тестирование взлома •Выпуск и сопровождение: финальный обзор безопасности, архивирование проекта, базовый уровень сопровождения