SlideShare a Scribd company logo
Going Outside 
the Application 
Securing the Environment for Blackboard Learn 
Matthew Saltzman, Security Engineer 
Blackboard Inc.
ABOUT ME 
Matthew Saltzman 
Security Engineer 
Blackboard Inc. 
matthew.saltzman@blackboard.com 
I have been at Blackboard for over 5 years, 4 of 
those in Blackboard Support
INTRODUCTION 
• Blackboard contains Sensitive Information 
• Names 
• Addresses 
• Social Security Numbers 
• Should be removed if present 
• Grade Information for Courses 
• This data must be protected 
• Securing the application can only be one 
component in securing this information 
• Also need to secure the environment it runs on
COMPONENTS TO 
SECURE 
• Application 
• Network 
• Operating System 
• Database 
• 3rd Party components external to Blackboard 
• Institution Policies
SSL 
• Protection against network monitoring tools 
• Traffic Sniffing 
• Protection against Man in the Middle Attacks 
• Easy to configure Blackboard to use SSL 
• Requires an SSL certificate from a signing 
authority (SA) 
• Configure webserver to use SSL certificate 
• Turn on SSL 
• Through the Application 
• Via SSL offloading
TYPES OF 
CERTIFICATES 
Regular SSL Certificate • single site 
• up to 256-bit encryption 
EV Certificate • single site 
• up to 256-bit encryption 
• Much stricter issuing criteria 
Wildcard Certificate • multiple sites in the same 
domain 
• up to 256-bit encryption 
Intermediary Certificate • single site 
• Used in conjunction with a 
Wildcard Certificate to validate 
the identity of the individual site
ALTERNATE CONTENT 
DOMAIN 
• Purpose: XSS Prevention from files 
• Creates a single-use session for downloading 
the file 
• Prevents session stealing from main Blackboard 
session 
• Expires as soon as the file is downloaded 
• Requires separate SSL certificate for 
alternate domain 
• Otherwise SSL errors will appear
CHANGES DUE TO 
ALTERNATE DOMAIN 
Without Alternate Domain for serving content: 
With Alternate Domain for serving content:
PATCHES AND 
UPGRADE SCHEDULE 
• Application Vulnerabilities often fixed via 
patches 
• Released via bbpatch 
• Publish a Security Advisory to Behind the 
Blackboard 
• Not all vulnerabilities fixed this way 
• Too complex a fix 
• Fixed by a new security feature 
• Capturing Security Events (SP12) 
• Secure User Password Storage (SP12) 
• Keep Blackboard version up to date as well
FIREWALL 
• Helps prevent unauthorized access to the 
server 
• Limits access to allowed ports 
• Blocks access from devices that should not 
have access 
• Required Ports (Defaults): 
80 - HTTP port 8011 - Collab HTTP Port 
443 - SSL port 8443 - Collab SSL Port 
8009 - Tomcat Port number 8006 - Collab Shutdown Port 
8005 - Tomcat Shutdown Port 1521 - (Oracle DB) 1433 - (SQLServer) 
8010 - Collab TCP Port 8016 - BBExec Service Port 
61616 – ActiveMQ Port
DEMO 
• How Firewalls help prevent network 
penetration 
• Demonstration of how port scanning works
IPTABLES 
CONFIGURATION
NETWORK 
SEGMENTING 
• Different types of servers should be in 
different network zones 
• DMZ – perimeter network containing external 
facing servers 
• Most vulnerable 
• Any other network zone – Should not contain 
external servers 
• Firewall present between DMZ and rest of 
network 
• Application servers should be in the DMZ 
• Database should not
NETWORK DIAGRAM
TRAFFIC SHAPER 
• Device that does “Rate Limiting” on network traffic to 
specific devices 
• Packet Shaping 
• Helps prevent DoS attacks 
• Slows rate of traffic hitting server 
• Requires statistics 
• Expected Incoming Traffic 
• Acceptable incoming traffic Rates 
• Traffic rate too low causes performance issues for 
end users 
• Traffic rate too high could allow DoS attack to 
succeed 
• Could be done through Load Balancer
TRAFFIC SHAPER 
GRAPH
SSL OFFLOADING 
• Can use either Load Balancer or specific 
offloading tool (SSL Accelerator) 
• Cuts down cost of encryption 
• Tool (Load Balancer or otherwise) much faster at 
encryption then Application Server 
• Allows Longer SSL encryption key 
• Thus, helps prevent DoS due to SSL
INTRUSION DETECTION/ 
PREVENTION SYSTEM 
• Monitors network for malicious traffic 
• Can take various actions when discovered: 
• Send an Alert 
• Log malicious traffic for review 
• Drop malicious traffic (Prevention only) 
• Can be configured using custom rules 
• Different types 
• Network Based – prevents network attacks 
• Host based – prevents OS level attacks 
• Some examples (Open Source): 
• Snort (Network IPS) 
• OSSEC (Host IPS) 
• Suricata (Network IPS)
SNORT
OSSEC
SURICATA
ALTER PORTS, 
REMOVE BANNERS 
• Port Scans 
• Tells scanner which ports are open 
• Reports any banners associated with open ports 
• Default ports describe which application is 
running 
• Therefore, do not use default ports 
• Exceptions: ports 80 and 443 
• Banners on ports explain what non-default 
ports do 
• Therefore, remove any descriptions of the ports 
as well
PORT SCANNER
PROTECT ANY 
OPERATING SYSTEM 
• Keep Operating System up to Date 
• OS Patches 
• Application/Service Packs 
• Dedicate Servers to specific tasks 
• Prevents vulnerabilities in one application or 
task from affecting others 
• Use domain accounts for users 
• Allows for simpler auditing of user activity 
• Require strong passwords for all accounts 
• Helps prevent unwanted access to servers
DEMO 
• Why dedicating servers to specific tasks is a 
good idea 
• Insecure tool running on same server as 
Blackboard
INSECURE SERVER 
CODE
AUDITING OS 
ACTIVITY 
• OS should be configured for auditing 
• Account with activity 
• Action this account took 
• Time the action was taken
AUDIT LOG 
RECOMMENDATIONS 
• Archive and Clear audit log daily 
• Prevents performance issues 
• Easier to read and locate problems 
• Easier to notice tampering with the audit log 
• Alerts on suspicious activity 
• Authentication Problems 
• Altering system settings 
• Accessing Sensitive Data
BAD AUDIT LOG
SECURING LINUX 
SERVERS 
• Require SSH instead of Telnet 
• Telnet is insecure 
• Traffic sniffing Telnet session is possible 
• Use public/private key authentication 
• Private Key file never leaves the client machine 
• Private key cannot be computed from public key 
• Add a strong passphrase to the private key 
file 
• Prevents a user from using a stolen private key
PUBLIC KEY SSH 
AUTHENTICATION
APACHE2 
• All Linux application servers should run 
Apache2 
• Added security, as is current version 
• Can keep up-to-date with patches and new 
versions 
• Does not require Blackboard intervention 
• Can add MOD_SECURITY 
• Application firewall 
• Can prevent some application vulnerabilities 
• Not easy in Blackboard Apache, if even possible 
• Allows for audit logging of HTTP 
• Information about potential malicious activity 
within the application
MOD_SECURITY 
FLOW DIAGRAM
RENDERED 
MOD_SECURITY LOG
SECURING WINDOWS 
SERVERS 
• Group Policy 
• Strong password Requirements 
• Require password changes often 
• Audit log (covered earlier) 
• IIS Settings 
• IIS User with minimal permissions to everything 
except application 
• MOD_SECURITY for IIS possible 
• SCW (Security Configuration Wizard) 
• Wizard for setting security configuration
UNIQUE DATABASE 
CONCERNS 
• Contains all data from the application 
• Need to configure OS Security 
• Access to the OS means access to the DB, 
usually 
• Also need database specific security 
• DB is meant to be accessed remotely
DATABASE USER 
SECURITY 
• Strong Database 
Passwords 
• Should not match OS 
Passwords 
• Each Password 
should be Unique 
• Users should not use 
system accounts 
• sa, root, master, etc. 
• Allows for auditing of 
individual users’ 
activity
DATABASE SECURITY 
MEASURES 
• Limit DB permissions to bare minimum 
• Helps prevent database privilege escalation 
• Limit login by IP Address 
• Prohibits access to Database by unauthorized 
machines 
• Potential Solution: 
• Encrypt traffic to and from Database 
• Please performance test this first, may not 
perform well
REDIS 
• 3rd Party Caching 
Database 
• Blackboard Developed 
B2 to replace server 
caches 
• See Nori’s presentation 
on performance impact: 
• 8:30 – 9:15 AM 
Tuesday in Murano 
3301B
REDIS SECURITY 
FEATURES 
• Should never manually log into Redis cache 
• Password should be far more complex than 
normal 
• Stored in a properties file 
• Block Unused Redis commands 
• Prevent users who gain access from affecting 
Redis in unauthorized ways 
• Keep Redis Application up to date
OTHER 3RD PARTY 
APPLICATIONS 
• Understand scope of server 
• What needs to access it 
• Expected network traffic 
• Expected paths to and from 
server 
• Size the application properly 
• Utilize all security features of 
the application 
• Secure the server itself
INSTITUTION 
POLICIES 
• Policies meant to encourage secure behavior 
by all personnel 
• Help to prevent privileged user mistakes 
• Such as sharing security information at a bar
PASSWORD POLICIES 
• Strong passwords should be encouraged 
• Require minimum password strength 
• Require users to change passwords often 
• Do not re-use passwords 
• Do not share passwords 
• Can prevent malicious user from accessing 
privileged account 
• Privileged accounts can bypass most security 
• Renders all previous actions essentially moot
DOMAIN USER 
POLICIES 
• Each user has a domain account 
• Each account has a set of associated roles 
• Defines level of access 
• Administration 
• IIS/Apache 
• Etc. 
• Limit Access to servers or admin features by 
role 
• Prevents unauthorized or unexpected access
THANK YOU! 
Matthew Saltzman 
Security Engineer 
Blackboard Inc. 
matthew.saltzman@blackboard.com

More Related Content

What's hot

Dakotacon 2017
Dakotacon 2017Dakotacon 2017
Dakotacon 2017
Blue Teamer
 
CNIT 123: 6: Enumeration
CNIT 123: 6: EnumerationCNIT 123: 6: Enumeration
CNIT 123: 6: Enumeration
Sam Bowne
 
SnapComms Technical Overview
SnapComms Technical OverviewSnapComms Technical Overview
SnapComms Technical Overview
leanne_abarro
 
CSF18 - BitLocker Deep Dive - Sami Laiho
CSF18 - BitLocker Deep Dive - Sami LaihoCSF18 - BitLocker Deep Dive - Sami Laiho
CSF18 - BitLocker Deep Dive - Sami Laiho
NCCOMMS
 
Ch 10: Attacking Back-End Components
Ch 10: Attacking Back-End ComponentsCh 10: Attacking Back-End Components
Ch 10: Attacking Back-End Components
Sam Bowne
 
Integrating security into the application development process
Integrating security into the application development processIntegrating security into the application development process
Integrating security into the application development process
Jerod Brennen
 
CSF18 - Moving from Reactive to Proactive Security - Sami Laiho
CSF18 - Moving from Reactive to Proactive Security - Sami LaihoCSF18 - Moving from Reactive to Proactive Security - Sami Laiho
CSF18 - Moving from Reactive to Proactive Security - Sami Laiho
NCCOMMS
 
Basic security and Barracuda VRS
Basic security and Barracuda VRSBasic security and Barracuda VRS
Basic security and Barracuda VRS
Aravindan A
 
CNIT 141 13. TLS
CNIT 141 13. TLSCNIT 141 13. TLS
CNIT 141 13. TLS
Sam Bowne
 
System Hardening Recommendations_FINAL
System Hardening Recommendations_FINALSystem Hardening Recommendations_FINAL
System Hardening Recommendations_FINAL
Martin Evans
 
07182013 Hacking Appliances: Ironic exploits in security products
07182013 Hacking Appliances: Ironic exploits in security products07182013 Hacking Appliances: Ironic exploits in security products
07182013 Hacking Appliances: Ironic exploits in security products
NCC Group
 
Bright talk mapping the right aut solution for you 2014 final (1)
Bright talk mapping the right aut solution for you 2014 final (1)Bright talk mapping the right aut solution for you 2014 final (1)
Bright talk mapping the right aut solution for you 2014 final (1)
Sectricity
 
Ch 9: Embedded Operating Systems: The Hidden Threat
Ch 9: Embedded Operating Systems: The Hidden ThreatCh 9: Embedded Operating Systems: The Hidden Threat
Ch 9: Embedded Operating Systems: The Hidden Threat
Sam Bowne
 
Windows server hardening 1
Windows server hardening 1Windows server hardening 1
Windows server hardening 1
Frank Avila Zapata
 
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloudKoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
Tobias Koprowski
 
Brian Desmond - Quickly and easily protect your applications and services wit...
Brian Desmond - Quickly and easily protect your applications and services wit...Brian Desmond - Quickly and easily protect your applications and services wit...
Brian Desmond - Quickly and easily protect your applications and services wit...
Nordic Infrastructure Conference
 
Information Security Lesson 4 - Baselines - Eric Vanderburg
Information Security Lesson 4 - Baselines - Eric VanderburgInformation Security Lesson 4 - Baselines - Eric Vanderburg
Information Security Lesson 4 - Baselines - Eric Vanderburg
Eric Vanderburg
 
Pragmatic Container Security (Sponsored by Trend Micro) - AWS Summit Sydney
Pragmatic Container Security (Sponsored by Trend Micro) - AWS Summit SydneyPragmatic Container Security (Sponsored by Trend Micro) - AWS Summit Sydney
Pragmatic Container Security (Sponsored by Trend Micro) - AWS Summit Sydney
Amazon Web Services
 
AWS Community Day - Vitaliy Shtym - Pragmatic Container Security
AWS Community Day - Vitaliy Shtym - Pragmatic Container SecurityAWS Community Day - Vitaliy Shtym - Pragmatic Container Security
AWS Community Day - Vitaliy Shtym - Pragmatic Container Security
AWS Chicago
 
How we breach small and medium enterprises (SMEs)
How we breach small and medium enterprises (SMEs)How we breach small and medium enterprises (SMEs)
How we breach small and medium enterprises (SMEs)
NCC Group
 

What's hot (20)

Dakotacon 2017
Dakotacon 2017Dakotacon 2017
Dakotacon 2017
 
CNIT 123: 6: Enumeration
CNIT 123: 6: EnumerationCNIT 123: 6: Enumeration
CNIT 123: 6: Enumeration
 
SnapComms Technical Overview
SnapComms Technical OverviewSnapComms Technical Overview
SnapComms Technical Overview
 
CSF18 - BitLocker Deep Dive - Sami Laiho
CSF18 - BitLocker Deep Dive - Sami LaihoCSF18 - BitLocker Deep Dive - Sami Laiho
CSF18 - BitLocker Deep Dive - Sami Laiho
 
Ch 10: Attacking Back-End Components
Ch 10: Attacking Back-End ComponentsCh 10: Attacking Back-End Components
Ch 10: Attacking Back-End Components
 
Integrating security into the application development process
Integrating security into the application development processIntegrating security into the application development process
Integrating security into the application development process
 
CSF18 - Moving from Reactive to Proactive Security - Sami Laiho
CSF18 - Moving from Reactive to Proactive Security - Sami LaihoCSF18 - Moving from Reactive to Proactive Security - Sami Laiho
CSF18 - Moving from Reactive to Proactive Security - Sami Laiho
 
Basic security and Barracuda VRS
Basic security and Barracuda VRSBasic security and Barracuda VRS
Basic security and Barracuda VRS
 
CNIT 141 13. TLS
CNIT 141 13. TLSCNIT 141 13. TLS
CNIT 141 13. TLS
 
System Hardening Recommendations_FINAL
System Hardening Recommendations_FINALSystem Hardening Recommendations_FINAL
System Hardening Recommendations_FINAL
 
07182013 Hacking Appliances: Ironic exploits in security products
07182013 Hacking Appliances: Ironic exploits in security products07182013 Hacking Appliances: Ironic exploits in security products
07182013 Hacking Appliances: Ironic exploits in security products
 
Bright talk mapping the right aut solution for you 2014 final (1)
Bright talk mapping the right aut solution for you 2014 final (1)Bright talk mapping the right aut solution for you 2014 final (1)
Bright talk mapping the right aut solution for you 2014 final (1)
 
Ch 9: Embedded Operating Systems: The Hidden Threat
Ch 9: Embedded Operating Systems: The Hidden ThreatCh 9: Embedded Operating Systems: The Hidden Threat
Ch 9: Embedded Operating Systems: The Hidden Threat
 
Windows server hardening 1
Windows server hardening 1Windows server hardening 1
Windows server hardening 1
 
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloudKoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
 
Brian Desmond - Quickly and easily protect your applications and services wit...
Brian Desmond - Quickly and easily protect your applications and services wit...Brian Desmond - Quickly and easily protect your applications and services wit...
Brian Desmond - Quickly and easily protect your applications and services wit...
 
Information Security Lesson 4 - Baselines - Eric Vanderburg
Information Security Lesson 4 - Baselines - Eric VanderburgInformation Security Lesson 4 - Baselines - Eric Vanderburg
Information Security Lesson 4 - Baselines - Eric Vanderburg
 
Pragmatic Container Security (Sponsored by Trend Micro) - AWS Summit Sydney
Pragmatic Container Security (Sponsored by Trend Micro) - AWS Summit SydneyPragmatic Container Security (Sponsored by Trend Micro) - AWS Summit Sydney
Pragmatic Container Security (Sponsored by Trend Micro) - AWS Summit Sydney
 
AWS Community Day - Vitaliy Shtym - Pragmatic Container Security
AWS Community Day - Vitaliy Shtym - Pragmatic Container SecurityAWS Community Day - Vitaliy Shtym - Pragmatic Container Security
AWS Community Day - Vitaliy Shtym - Pragmatic Container Security
 
How we breach small and medium enterprises (SMEs)
How we breach small and medium enterprises (SMEs)How we breach small and medium enterprises (SMEs)
How we breach small and medium enterprises (SMEs)
 

Similar to Going outside the application

DevCon13 System Administration Basics
DevCon13 System Administration BasicsDevCon13 System Administration Basics
DevCon13 System Administration Basics
sysnickm
 
CNIT 123: 8: Desktop and Server OS Vulnerabilites
CNIT 123: 8: Desktop and Server OS VulnerabilitesCNIT 123: 8: Desktop and Server OS Vulnerabilites
CNIT 123: 8: Desktop and Server OS Vulnerabilites
Sam Bowne
 
Presentation database security audit vault & database firewall
Presentation   database security audit vault & database firewallPresentation   database security audit vault & database firewall
Presentation database security audit vault & database firewall
xKinAnx
 
Security in the cloud Workshop HSTC 2014
Security in the cloud Workshop HSTC 2014Security in the cloud Workshop HSTC 2014
Security in the cloud Workshop HSTC 2014
Akash Mahajan
 
Shared Security Responsibility for the Azure Cloud
Shared Security Responsibility for the Azure CloudShared Security Responsibility for the Azure Cloud
Shared Security Responsibility for the Azure Cloud
Alert Logic
 
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Andrejs Prokopjevs
 
Slashing Your Cloud Risk: 3 Must-Do's
Slashing Your Cloud Risk: 3 Must-Do'sSlashing Your Cloud Risk: 3 Must-Do's
Slashing Your Cloud Risk: 3 Must-Do's
Security Innovation
 
Cloud patterns at Carleton University
Cloud patterns at Carleton UniversityCloud patterns at Carleton University
Cloud patterns at Carleton University
Taswar Bhatti
 
Terrascan - Cloud Native Security Tool
Terrascan - Cloud Native Security Tool Terrascan - Cloud Native Security Tool
Terrascan - Cloud Native Security Tool
sangam biradar
 
Securing Applications in the Cloud
Securing Applications in the CloudSecuring Applications in the Cloud
Securing Applications in the Cloud
Security Innovation
 
Centrify Access Manager Presentation.pptx
Centrify Access Manager Presentation.pptxCentrify Access Manager Presentation.pptx
Centrify Access Manager Presentation.pptx
johncenafls
 
CompTIASecPLUSAASS-part4 - Edited (1).pptx
CompTIASecPLUSAASS-part4 - Edited (1).pptxCompTIASecPLUSAASS-part4 - Edited (1).pptx
CompTIASecPLUSAASS-part4 - Edited (1).pptx
mohedkhadar60
 
Ccna sec 01
Ccna sec 01Ccna sec 01
Ccna sec 01
EduclentMegasoftel
 
Managed Threat Detection and Response
Managed Threat Detection and ResponseManaged Threat Detection and Response
Managed Threat Detection and Response
Alert Logic
 
Anatomy of a Cloud Hack
Anatomy of a Cloud HackAnatomy of a Cloud Hack
Anatomy of a Cloud Hack
NotSoSecure Global Services
 
Controlling Access to IBM i Systems and Data
Controlling Access to IBM i Systems and DataControlling Access to IBM i Systems and Data
Controlling Access to IBM i Systems and Data
Precisely
 
Enterprise Node - Securing Your Environment
Enterprise Node - Securing Your EnvironmentEnterprise Node - Securing Your Environment
Enterprise Node - Securing Your Environment
Kurtis Kemple
 
The Spy Who Loathed Me - An Intro to SQL Server Security
The Spy Who Loathed Me - An Intro to SQL Server SecurityThe Spy Who Loathed Me - An Intro to SQL Server Security
The Spy Who Loathed Me - An Intro to SQL Server Security
Chris Bell
 
Database Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best PracticesDatabase Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best Practices
MariaDB plc
 
Protecting Against Web App Attacks
Protecting Against Web App AttacksProtecting Against Web App Attacks
Protecting Against Web App Attacks
Alert Logic
 

Similar to Going outside the application (20)

DevCon13 System Administration Basics
DevCon13 System Administration BasicsDevCon13 System Administration Basics
DevCon13 System Administration Basics
 
CNIT 123: 8: Desktop and Server OS Vulnerabilites
CNIT 123: 8: Desktop and Server OS VulnerabilitesCNIT 123: 8: Desktop and Server OS Vulnerabilites
CNIT 123: 8: Desktop and Server OS Vulnerabilites
 
Presentation database security audit vault & database firewall
Presentation   database security audit vault & database firewallPresentation   database security audit vault & database firewall
Presentation database security audit vault & database firewall
 
Security in the cloud Workshop HSTC 2014
Security in the cloud Workshop HSTC 2014Security in the cloud Workshop HSTC 2014
Security in the cloud Workshop HSTC 2014
 
Shared Security Responsibility for the Azure Cloud
Shared Security Responsibility for the Azure CloudShared Security Responsibility for the Azure Cloud
Shared Security Responsibility for the Azure Cloud
 
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
 
Slashing Your Cloud Risk: 3 Must-Do's
Slashing Your Cloud Risk: 3 Must-Do'sSlashing Your Cloud Risk: 3 Must-Do's
Slashing Your Cloud Risk: 3 Must-Do's
 
Cloud patterns at Carleton University
Cloud patterns at Carleton UniversityCloud patterns at Carleton University
Cloud patterns at Carleton University
 
Terrascan - Cloud Native Security Tool
Terrascan - Cloud Native Security Tool Terrascan - Cloud Native Security Tool
Terrascan - Cloud Native Security Tool
 
Securing Applications in the Cloud
Securing Applications in the CloudSecuring Applications in the Cloud
Securing Applications in the Cloud
 
Centrify Access Manager Presentation.pptx
Centrify Access Manager Presentation.pptxCentrify Access Manager Presentation.pptx
Centrify Access Manager Presentation.pptx
 
CompTIASecPLUSAASS-part4 - Edited (1).pptx
CompTIASecPLUSAASS-part4 - Edited (1).pptxCompTIASecPLUSAASS-part4 - Edited (1).pptx
CompTIASecPLUSAASS-part4 - Edited (1).pptx
 
Ccna sec 01
Ccna sec 01Ccna sec 01
Ccna sec 01
 
Managed Threat Detection and Response
Managed Threat Detection and ResponseManaged Threat Detection and Response
Managed Threat Detection and Response
 
Anatomy of a Cloud Hack
Anatomy of a Cloud HackAnatomy of a Cloud Hack
Anatomy of a Cloud Hack
 
Controlling Access to IBM i Systems and Data
Controlling Access to IBM i Systems and DataControlling Access to IBM i Systems and Data
Controlling Access to IBM i Systems and Data
 
Enterprise Node - Securing Your Environment
Enterprise Node - Securing Your EnvironmentEnterprise Node - Securing Your Environment
Enterprise Node - Securing Your Environment
 
The Spy Who Loathed Me - An Intro to SQL Server Security
The Spy Who Loathed Me - An Intro to SQL Server SecurityThe Spy Who Loathed Me - An Intro to SQL Server Security
The Spy Who Loathed Me - An Intro to SQL Server Security
 
Database Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best PracticesDatabase Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best Practices
 
Protecting Against Web App Attacks
Protecting Against Web App AttacksProtecting Against Web App Attacks
Protecting Against Web App Attacks
 

Recently uploaded

美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
widenerjobeyrl638
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
dakas1
 
Computer Science & Engineering VI Sem- New Syllabus.pdf
Computer Science & Engineering VI Sem- New Syllabus.pdfComputer Science & Engineering VI Sem- New Syllabus.pdf
Computer Science & Engineering VI Sem- New Syllabus.pdf
chandangoswami40933
 
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical OperationsEnsuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
OnePlan Solutions
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
Alina Yurenko
 
Streamlining End-to-End Testing Automation
Streamlining End-to-End Testing AutomationStreamlining End-to-End Testing Automation
Streamlining End-to-End Testing Automation
Anand Bagmar
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
kalichargn70th171
 
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
Luigi Fugaro
 
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
kalichargn70th171
 
Cost-Effective Strategies For iOS App Development
Cost-Effective Strategies For iOS App DevelopmentCost-Effective Strategies For iOS App Development
Cost-Effective Strategies For iOS App Development
Softradix Technologies
 
Stork Product Overview: An AI-Powered Autonomous Delivery Fleet
Stork Product Overview: An AI-Powered Autonomous Delivery FleetStork Product Overview: An AI-Powered Autonomous Delivery Fleet
Stork Product Overview: An AI-Powered Autonomous Delivery Fleet
Vince Scalabrino
 
Orca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container OrchestrationOrca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container Orchestration
Pedro J. Molina
 
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
The Third Creative Media
 
Secure-by-Design Using Hardware and Software Protection for FDA Compliance
Secure-by-Design Using Hardware and Software Protection for FDA ComplianceSecure-by-Design Using Hardware and Software Protection for FDA Compliance
Secure-by-Design Using Hardware and Software Protection for FDA Compliance
ICS
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
ShulagnaSarkar2
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies
 
Microsoft-Power-Platform-Adoption-Planning.pptx
Microsoft-Power-Platform-Adoption-Planning.pptxMicrosoft-Power-Platform-Adoption-Planning.pptx
Microsoft-Power-Platform-Adoption-Planning.pptx
jrodriguezq3110
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
gapen1
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 

Recently uploaded (20)

美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
 
Computer Science & Engineering VI Sem- New Syllabus.pdf
Computer Science & Engineering VI Sem- New Syllabus.pdfComputer Science & Engineering VI Sem- New Syllabus.pdf
Computer Science & Engineering VI Sem- New Syllabus.pdf
 
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical OperationsEnsuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
 
Streamlining End-to-End Testing Automation
Streamlining End-to-End Testing AutomationStreamlining End-to-End Testing Automation
Streamlining End-to-End Testing Automation
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
 
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
 
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
 
Cost-Effective Strategies For iOS App Development
Cost-Effective Strategies For iOS App DevelopmentCost-Effective Strategies For iOS App Development
Cost-Effective Strategies For iOS App Development
 
Stork Product Overview: An AI-Powered Autonomous Delivery Fleet
Stork Product Overview: An AI-Powered Autonomous Delivery FleetStork Product Overview: An AI-Powered Autonomous Delivery Fleet
Stork Product Overview: An AI-Powered Autonomous Delivery Fleet
 
Orca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container OrchestrationOrca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container Orchestration
 
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
 
Secure-by-Design Using Hardware and Software Protection for FDA Compliance
Secure-by-Design Using Hardware and Software Protection for FDA ComplianceSecure-by-Design Using Hardware and Software Protection for FDA Compliance
Secure-by-Design Using Hardware and Software Protection for FDA Compliance
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
 
bgiolcb
bgiolcbbgiolcb
bgiolcb
 
Microsoft-Power-Platform-Adoption-Planning.pptx
Microsoft-Power-Platform-Adoption-Planning.pptxMicrosoft-Power-Platform-Adoption-Planning.pptx
Microsoft-Power-Platform-Adoption-Planning.pptx
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 

Going outside the application

  • 1. Going Outside the Application Securing the Environment for Blackboard Learn Matthew Saltzman, Security Engineer Blackboard Inc.
  • 2. ABOUT ME Matthew Saltzman Security Engineer Blackboard Inc. matthew.saltzman@blackboard.com I have been at Blackboard for over 5 years, 4 of those in Blackboard Support
  • 3. INTRODUCTION • Blackboard contains Sensitive Information • Names • Addresses • Social Security Numbers • Should be removed if present • Grade Information for Courses • This data must be protected • Securing the application can only be one component in securing this information • Also need to secure the environment it runs on
  • 4. COMPONENTS TO SECURE • Application • Network • Operating System • Database • 3rd Party components external to Blackboard • Institution Policies
  • 5.
  • 6. SSL • Protection against network monitoring tools • Traffic Sniffing • Protection against Man in the Middle Attacks • Easy to configure Blackboard to use SSL • Requires an SSL certificate from a signing authority (SA) • Configure webserver to use SSL certificate • Turn on SSL • Through the Application • Via SSL offloading
  • 7. TYPES OF CERTIFICATES Regular SSL Certificate • single site • up to 256-bit encryption EV Certificate • single site • up to 256-bit encryption • Much stricter issuing criteria Wildcard Certificate • multiple sites in the same domain • up to 256-bit encryption Intermediary Certificate • single site • Used in conjunction with a Wildcard Certificate to validate the identity of the individual site
  • 8. ALTERNATE CONTENT DOMAIN • Purpose: XSS Prevention from files • Creates a single-use session for downloading the file • Prevents session stealing from main Blackboard session • Expires as soon as the file is downloaded • Requires separate SSL certificate for alternate domain • Otherwise SSL errors will appear
  • 9. CHANGES DUE TO ALTERNATE DOMAIN Without Alternate Domain for serving content: With Alternate Domain for serving content:
  • 10. PATCHES AND UPGRADE SCHEDULE • Application Vulnerabilities often fixed via patches • Released via bbpatch • Publish a Security Advisory to Behind the Blackboard • Not all vulnerabilities fixed this way • Too complex a fix • Fixed by a new security feature • Capturing Security Events (SP12) • Secure User Password Storage (SP12) • Keep Blackboard version up to date as well
  • 11.
  • 12. FIREWALL • Helps prevent unauthorized access to the server • Limits access to allowed ports • Blocks access from devices that should not have access • Required Ports (Defaults): 80 - HTTP port 8011 - Collab HTTP Port 443 - SSL port 8443 - Collab SSL Port 8009 - Tomcat Port number 8006 - Collab Shutdown Port 8005 - Tomcat Shutdown Port 1521 - (Oracle DB) 1433 - (SQLServer) 8010 - Collab TCP Port 8016 - BBExec Service Port 61616 – ActiveMQ Port
  • 13. DEMO • How Firewalls help prevent network penetration • Demonstration of how port scanning works
  • 15. NETWORK SEGMENTING • Different types of servers should be in different network zones • DMZ – perimeter network containing external facing servers • Most vulnerable • Any other network zone – Should not contain external servers • Firewall present between DMZ and rest of network • Application servers should be in the DMZ • Database should not
  • 17. TRAFFIC SHAPER • Device that does “Rate Limiting” on network traffic to specific devices • Packet Shaping • Helps prevent DoS attacks • Slows rate of traffic hitting server • Requires statistics • Expected Incoming Traffic • Acceptable incoming traffic Rates • Traffic rate too low causes performance issues for end users • Traffic rate too high could allow DoS attack to succeed • Could be done through Load Balancer
  • 19. SSL OFFLOADING • Can use either Load Balancer or specific offloading tool (SSL Accelerator) • Cuts down cost of encryption • Tool (Load Balancer or otherwise) much faster at encryption then Application Server • Allows Longer SSL encryption key • Thus, helps prevent DoS due to SSL
  • 20. INTRUSION DETECTION/ PREVENTION SYSTEM • Monitors network for malicious traffic • Can take various actions when discovered: • Send an Alert • Log malicious traffic for review • Drop malicious traffic (Prevention only) • Can be configured using custom rules • Different types • Network Based – prevents network attacks • Host based – prevents OS level attacks • Some examples (Open Source): • Snort (Network IPS) • OSSEC (Host IPS) • Suricata (Network IPS)
  • 21. SNORT
  • 22. OSSEC
  • 24. ALTER PORTS, REMOVE BANNERS • Port Scans • Tells scanner which ports are open • Reports any banners associated with open ports • Default ports describe which application is running • Therefore, do not use default ports • Exceptions: ports 80 and 443 • Banners on ports explain what non-default ports do • Therefore, remove any descriptions of the ports as well
  • 26.
  • 27. PROTECT ANY OPERATING SYSTEM • Keep Operating System up to Date • OS Patches • Application/Service Packs • Dedicate Servers to specific tasks • Prevents vulnerabilities in one application or task from affecting others • Use domain accounts for users • Allows for simpler auditing of user activity • Require strong passwords for all accounts • Helps prevent unwanted access to servers
  • 28. DEMO • Why dedicating servers to specific tasks is a good idea • Insecure tool running on same server as Blackboard
  • 30. AUDITING OS ACTIVITY • OS should be configured for auditing • Account with activity • Action this account took • Time the action was taken
  • 31. AUDIT LOG RECOMMENDATIONS • Archive and Clear audit log daily • Prevents performance issues • Easier to read and locate problems • Easier to notice tampering with the audit log • Alerts on suspicious activity • Authentication Problems • Altering system settings • Accessing Sensitive Data
  • 33. SECURING LINUX SERVERS • Require SSH instead of Telnet • Telnet is insecure • Traffic sniffing Telnet session is possible • Use public/private key authentication • Private Key file never leaves the client machine • Private key cannot be computed from public key • Add a strong passphrase to the private key file • Prevents a user from using a stolen private key
  • 34. PUBLIC KEY SSH AUTHENTICATION
  • 35. APACHE2 • All Linux application servers should run Apache2 • Added security, as is current version • Can keep up-to-date with patches and new versions • Does not require Blackboard intervention • Can add MOD_SECURITY • Application firewall • Can prevent some application vulnerabilities • Not easy in Blackboard Apache, if even possible • Allows for audit logging of HTTP • Information about potential malicious activity within the application
  • 38. SECURING WINDOWS SERVERS • Group Policy • Strong password Requirements • Require password changes often • Audit log (covered earlier) • IIS Settings • IIS User with minimal permissions to everything except application • MOD_SECURITY for IIS possible • SCW (Security Configuration Wizard) • Wizard for setting security configuration
  • 39.
  • 40. UNIQUE DATABASE CONCERNS • Contains all data from the application • Need to configure OS Security • Access to the OS means access to the DB, usually • Also need database specific security • DB is meant to be accessed remotely
  • 41. DATABASE USER SECURITY • Strong Database Passwords • Should not match OS Passwords • Each Password should be Unique • Users should not use system accounts • sa, root, master, etc. • Allows for auditing of individual users’ activity
  • 42. DATABASE SECURITY MEASURES • Limit DB permissions to bare minimum • Helps prevent database privilege escalation • Limit login by IP Address • Prohibits access to Database by unauthorized machines • Potential Solution: • Encrypt traffic to and from Database • Please performance test this first, may not perform well
  • 43.
  • 44. REDIS • 3rd Party Caching Database • Blackboard Developed B2 to replace server caches • See Nori’s presentation on performance impact: • 8:30 – 9:15 AM Tuesday in Murano 3301B
  • 45. REDIS SECURITY FEATURES • Should never manually log into Redis cache • Password should be far more complex than normal • Stored in a properties file • Block Unused Redis commands • Prevent users who gain access from affecting Redis in unauthorized ways • Keep Redis Application up to date
  • 46. OTHER 3RD PARTY APPLICATIONS • Understand scope of server • What needs to access it • Expected network traffic • Expected paths to and from server • Size the application properly • Utilize all security features of the application • Secure the server itself
  • 47.
  • 48. INSTITUTION POLICIES • Policies meant to encourage secure behavior by all personnel • Help to prevent privileged user mistakes • Such as sharing security information at a bar
  • 49. PASSWORD POLICIES • Strong passwords should be encouraged • Require minimum password strength • Require users to change passwords often • Do not re-use passwords • Do not share passwords • Can prevent malicious user from accessing privileged account • Privileged accounts can bypass most security • Renders all previous actions essentially moot
  • 50. DOMAIN USER POLICIES • Each user has a domain account • Each account has a set of associated roles • Defines level of access • Administration • IIS/Apache • Etc. • Limit Access to servers or admin features by role • Prevents unauthorized or unexpected access
  • 51. THANK YOU! Matthew Saltzman Security Engineer Blackboard Inc. matthew.saltzman@blackboard.com

Editor's Notes

  1. Begin by blocking all ports Open Loopback, and remote connection ports Each AppServer Open Port 443 (and 80 without SSL System Wide) to all traffic in and out Open Ports 8009, 8005 to the local server and all other appservers only Open Port 8016 Collab Server Open the Collab Ports (8010, 8011, 8443, 8005) Database Server Open DB Port (1521 for Oracle, 1433 for SqlServer) to all appservers
  2. Windows: Group Policy Manager: gpedit.msc Linux: /etc/audit/auditd.conf and /etc/audit/audit.rules.