SlideShare a Scribd company logo
Cyber Security for
System Design
Cyber Security Awareness means that you must be aware of threats and
build systems with adequate defenses
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Cyber Security Horror Stories
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Data Breaches: Veteran's Administration
• 26.5 million records (Name, SSN, & DoB)
• Employee took the material home
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Data Breaches: Sony Pictures
• Malware Attack by hackers
• New movie release stolen ($44 million production cost)
• “Trade secrets” – schedules, plans, contacts, scripts
• Employee information
• Stolen or insider credentials
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Data Breaches: Target
• Attack by hackers
• FireEye reported suspicions
• 40 million customer credit information
• 70 million emails
• $148 million
• Contractors stolen user id gave access to Target’s internal systems
• Malware loaded inside Target systems
• Other compromised computers used as data drops
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Data Breaches: TJX & Heartland
• T.J. Maxx, Marshalls’ Office Max, Barnes& Noble (Credit cards)
• Heartland Payment Systems (Credit cards)
• 130 million credit cards compromised
• Surveillance of Fortune 500 companies
• Exploited vulnerabilities – SQL injection
• Sold stolen credit cards
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Cyber Security Awareness
• Understand Threats and Defenses
• Encourage Personal Responsibility
• All aspects of computing
• Personal habits
• Professional habits
Insider Threats Dominate Attacks
• Insider – 55% according to IBM study
• Careless behavior
• Intentional behavior including disgruntled employee attack
• Contractor
• Hacker
• Defenses
• security strategy and regulations
• comprehensive data on user and system behavior
• advanced analytic tools
• automated incident-response.
SANS Institute
• Established in 1989
• Cooperative research and education organization
• more than 165,000 security professionals around the world
• Ranges from auditors and network administrators, to chief information
security officers
• Sharing the lessons learned and are finding solutions to the challenges
• Many security practitioners in varied global organizations from
corporations to universities
• Largest source for information security training and security certification
SANS - Top 25 Software Errors
• Insecure Interaction Between Components (6 errors)
• Risky Resource Management (8 errors)
• Porous Defenses (11 errors)
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Insecure Interaction Between Components
• Improper Neutralization of Special Elements used in an SQL
Command ('SQL Injection')
• Improper Neutralization of Special Elements used in an OS Command
('OS Command Injection')
• Improper Neutralization of Input During Web Page Generation
('Cross-site Scripting')
• Unrestricted Upload of File with Dangerous Type
• Cross-Site Request Forgery (CSRF)
• URL Redirection to Untrusted Site ('Open Redirect')
Risky Resource Management
• Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')
• Improper Limitation of a Pathname to a Restricted Directory ('Path
Traversal')
• Download of Code Without Integrity Check
• Inclusion of Functionality from Untrusted Control Sphere
• Use of Potentially Dangerous Function
• Incorrect Calculation of Buffer Size
• Uncontrolled Format String
• Integer Overflow or Wraparound
Porous Defenses
• Missing Authentication for Critical Function
• Missing Authorization
• Use of Hard-coded Credentials
• Missing Encryption of Sensitive Data
• Reliance on Untrusted Inputs in a Security Decision
• Execution with Unnecessary Privileges
• Incorrect Authorization
• Incorrect Permission Assignment for Critical Resource
• Use of a Broken or Risky Cryptographic Algorithm
• Improper Restriction of Excessive Authentication Attempts
• Use of a One-Way Hash without a Salt
Takeover process
• Attack and obtain access
• Exploit a known vulnerability
• Credentials obtained by
• cracking
• social engineering
• phishing, spear phishing, clone phishing, Whaling
• Install malware/rootkit
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Hacking Kits
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Aircrack-Ng Suite of Wi-Fi Hacking Tools
• Airmon-Ng
• Promiscuous mode – receives all traffic
• Airodump-Ng
• Captures packets
• Aircrack-Ng
• statistical techniques (WEP)
• dictionary cracks for WPA and WPA2 after capturing the WPA handshake
• Aireplay-Ng
• Attacks such as Address Resolution Protocol injection or redirection
• Airdecap-Ng
• Decrypt wireless traffic
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
What are the problems?
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Problems
• Poor Habits
• Personal habits of development team
• Poor Development Practices
• SDLC fails to make security a concern
• Poor Architecture
• Architectural standards do not include security concerns
• Poor Coding
• Programming standards are absent or ignored
• Poor Service Management/Service Transition and Operations
• Lack of attention, patching, monitoring and analysis
Poor Habits
Personal habits of development team
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
VA Breach
• 26.5 million records(Name, SSN, & DoB)
• Employee took the material home
• Don’t use actual sensitive data in a test
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Personal Habits
• What you know is valuable
• What you have stored is valuable
• Protect yourself
Poor Practices
SDLC fails to make security a concern
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Development cycle problems
• Rush to bring web-based products online
• Is security being considered?
• Mobile applications without security cautions
• Unique issues with mobile
• Prototyping with sensitive data
• SANS Institute
• “… small amount of security testing is done by the development team (21.6
percent) or quality assurance personnel (22.percent) – while the internal
security team accounts for most (83.2 percent) of the testing.”
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
An old problem
• Industry overly focused on testing and scanning
• Inspection mentality that was abandoned by most quality systems
• Application security has to be part of the early stages of the SDLC
• Teach developers how to write secure code and build secure systems
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Poor Architecture
Architectural standards do not include security concerns
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Biggest mistakes
• Poor threat understanding
• False reliance on perimeter protection and products (e.g., anti-virus)
• Failure to classify and protect sensitive data
• Insecure storage of Personal Identifier Information (PII)
• PII emailed as plain text
• Web folders with PII in them
• Files with PII in same web folder as the form
• Insufficient separation
• Networks, file systems, folders, etc.
• Authority
Data Breaches: TJX and Heartland
• Tools to detect compromised accounts had many false positives
• Solution: CCFinder developed
• Identifies how stolen numbers are traded
• Include stronger component in the architecture
• Also include monitoring in the architecture
• Two-factor identification
• What you have
• What you know
• What are you physical characteristics
Data Breaches: Sony Pictures
• Malware Attack by hackers
• Stolen or insider credentials
• Defenses
• Encrypt all sensitive data
• Store passwords in a separate location
• Two-factor authentication avoids stolen or insider credentials problem
• Store PII someplace separate
• Regular security checks and monitoring
Data Breaches: Target
• No two-factor identification
• Access to one system opened the door to others
• Identity and Access Management
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Component Architecture Problem
• 84% of attacks occur in the application layer
• CISCO 215 Annual Security Report:
• “Application-level components built by developers are often riddled with vulnerabilities.”
04 Oct 2016 Animas OneTouch Ping insulin pump contains multiple vulnerabilities Multiple CVEs
30 Sep 2016 U by BB&T iOS banking application fails to properly validate SSL certificates CVE-2016-6550
28 Sep 2016 Aternity version 9 vulnerable to cross-site scripting and remote code
execution
Multiple CVEs
13 Sep 2016 AVer Information EH6108H+ hybrid DVR contains multiple vulnerabilities Multiple CVEs
07 Sep 2016 DEXIS Imaging Suite 10 contains hard-coded credentials CVE-2016-6532
06 Sep 2016 Dentsply Sirona CDR DICOM contains multiple hard-coded credentials CVE-2016-6530
06 Sep 2016 Open Dental uses blank database password by default CVE-2016-6531
06 Sep 2016 Fortinet FortiWAN load balancer appliance contains multiple vulnerabilities Multiple CVEs
Recent CERT Vulnerability Database Entries
Poor Coding
Programming standards are absent or ignored
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Development cycle problems
• SANS Institute
• “most software developers don’t understand security”
• “… small amount of security testing is done by the development team (21.6
percent) or quality assurance personnel (22.percent) – while the internal
security team accounts for most (83.2 percent) of the testing.”
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
CERT division of SEI
• Study and solve problems with widespread cybersecurity implications
• Research security vulnerabilities in software products,
• Contribute to long-term changes in networked systems
• Develop cutting-edge information and training to help improve
cybersecurity.
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
CERT Division of the SEI:
Anticipating and Solving the Nation’s Cybersecurity Challenges
• Cyber Risk and Resilience Management
• Cybersecurity Engineering
• Digital Intelligence and Investigation
• Incident Management
• Insider Threat
• Network Situational Awareness
• Secure Coding
• Vulnerability Analysis
CERT Information for Developers
• Secure Coding Standards Research and Development
• Secure Lifecycle Solutions
• Complexity Modeling and Analysis
• Software Security Assurance Measurement and Analysis
• Supply Chain Assurance
• Survivability Analysis Framework
• Security Quality Requirements Engineering
• Software Security Engineering:
• A Guide for Project Managers
CERT Secure Coding Standards wiki.
• https://www.securecoding.cert.org/confluence/display/seccode/SEI+
CERT+Coding+Standards
Avoid unintentional truncation when using fgets() or fgetws()
#include <stdbool.h>
#include <stdio.h>
bool get_data(char *buffer, int size) {
if (fgets(buffer, size, stdin)) {
return true;
}
return false;
}
void func(void) {
char buf[8];
if (get_data(buf, sizeof(buf))) {
printf("The user input %sn", buf);
} else {
printf("Error getting data from the usern");
}
}
Copies an input string into a buffer
Avoid unintentional truncation when using fgets() or fgetws()
#include <stdbool.h>
#include <stdio.h>
bool get_data(char *buffer, int size) {
if (fgets(buffer, size, stdin)) {
return true;
}
return false;
}
void func(void) {
char buf[8];
if (get_data(buf, sizeof(buf))) {
printf("The user input %sn", buf);
} else {
printf("Error getting data from the usern");
}
}
Copies an input string into a buffer and
assumes it captured all of the user’s input
Avoid unintentional truncation when using fgets() or fgetws()
#include <stdbool.h>
#include <stdio.h>
bool get_data(char *buffer, int size) {
if (fgets(buffer, size, stdin)) {
return true;
}
return false;
}
void func(void) {
char buf[8];
if (get_data(buf, sizeof(buf))) {
printf("The user input %sn", buf);
} else {
printf("Error getting data from the usern");
}
}
Copies an input string into a buffer and
assumes it captured all of the user’s input
If the last character in the buffer in not a
newline and the stream is not at the end-of-
file marker, the buffer was too small to
contain all of the data from the users.
Compliant solution
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
bool get_data(char *buffer, int size) {
if (fgets(buffer, size, stdin)) {
size_t len = strlen(buffer);
return feof(stdin) || (len != 0 && buffer[len-1] == 'n');
}
return false;
}
void func(void) {
char buf[8];
if (get_data(buf, sizeof(buf))) {
printf("The user input %sn", buf);
} else {
printf("Error getting data from the usern");
}
}
Poor Service Management
Service Transition and Operations
Lack of attention, patching, monitoring and analysis
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Service Transition
• Security cautions during transition
• Moving sensitive data
• Exposing sensitive data
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing
Service Operations
• Sony Breach
• Lack of updates
• TJX and Heartland
• Digital Intelligence and Investigation analysis led to solution
• Target
• Tool in the architecture produced an alert
• Practice or policy not in place to respond
• To share or not to share
• Cybersecurity Information Sharing Act
Resources
• CERT Division of SEI
• US-CERT
• National Vulnerabilities Database
• OVAL - Open Vulnerability and Assessment Language
• SANS Institute
• InfraGard
• NIST
For information on the MS in Computing
thomas.Kaczmarek@mu.edu
Marquette.edu/computing

More Related Content

PPTX
Cryptography and Network Security # Lecture 2
PPTX
Network security # Lecture 2
PPTX
Advanced Persistent Threats (APTs) - Information Security Management
PPT
Secure by design and secure software development
PPTX
Understanding Application Threat Modelling & Architecture
PDF
Cyber security series Application Security
PPTX
5 things i wish i knew about sast (DSO-LG July 2021)
PDF
Threat Hunting by Falgun Rathod - Cyber Octet Private Limited
Cryptography and Network Security # Lecture 2
Network security # Lecture 2
Advanced Persistent Threats (APTs) - Information Security Management
Secure by design and secure software development
Understanding Application Threat Modelling & Architecture
Cyber security series Application Security
5 things i wish i knew about sast (DSO-LG July 2021)
Threat Hunting by Falgun Rathod - Cyber Octet Private Limited

What's hot (19)

PDF
Web Application Penetration Testing
PPTX
IBM ridefinisce la strategia e l'approccio verso gli Avanced Persistent Threa...
PPTX
Persistence is Key: Advanced Persistent Threats
PDF
Chapter 13 web security
PDF
IT system security principles practices
PPTX
Ethical Hacking Conference 2015- Building Secure Products -a perspective
PDF
1 info sec+risk-mgmt
PDF
Jaime Blasco - Fighting Advanced Persistent Threat (APT) with Open Source Too...
PPTX
Incident Response: Validation, Containment & Forensics
PDF
Offensive cyber security engineer updated
PDF
Security Implications of the Cloud - CSS ATX 2017
PPTX
Vulnerability assessment &amp; Penetration testing Basics
PPTX
For Business's Sake, Let's focus on AppSec
PDF
Secure Coding and Threat Modeling
PPT
Application Security
PPTX
WTF is Penetration Testing v.2
PDF
Wfh security risks - Ed Adams, President, Security Innovation
PPTX
Is Antivirus (AV) Dead or Just Missing in Action
PPTX
Application security
Web Application Penetration Testing
IBM ridefinisce la strategia e l'approccio verso gli Avanced Persistent Threa...
Persistence is Key: Advanced Persistent Threats
Chapter 13 web security
IT system security principles practices
Ethical Hacking Conference 2015- Building Secure Products -a perspective
1 info sec+risk-mgmt
Jaime Blasco - Fighting Advanced Persistent Threat (APT) with Open Source Too...
Incident Response: Validation, Containment & Forensics
Offensive cyber security engineer updated
Security Implications of the Cloud - CSS ATX 2017
Vulnerability assessment &amp; Penetration testing Basics
For Business's Sake, Let's focus on AppSec
Secure Coding and Threat Modeling
Application Security
WTF is Penetration Testing v.2
Wfh security risks - Ed Adams, President, Security Innovation
Is Antivirus (AV) Dead or Just Missing in Action
Application security
Ad

Viewers also liked (17)

PPTX
National Cyber Security Awareness Month - Michael Kaiser
PPT
Avoid the Legal Traps of Relocating Jobs
PDF
Net Generation
PDF
C-Sec Pro
PDF
Cyber security-awareness-for-social-media-users - Devsena Mishra
PPTX
Cyber Security Awareness October 2014
PPTX
Security Awareness: 360 empowerment for cyber defense - JurInnov - Eric Vande...
PPTX
Cyber awareness program
PDF
Cyber Security Awareness (Reduce Personal & Business Risk)
PPTX
Cyber security awareness for end users
PPTX
Entrepreneurial ecosystem p1 intro
PPTX
Leveraging Social Media Skills
PDF
London Best Places to Work Roadshow | ARM
PPT
Social Media Strategies for Events - Hanzehogeschool Groningen 290312
PDF
Biotech guide3rdedition (2)
PDF
Grudging monkeys and microservices
PPT
Finding and Closing Business from the Social Web
National Cyber Security Awareness Month - Michael Kaiser
Avoid the Legal Traps of Relocating Jobs
Net Generation
C-Sec Pro
Cyber security-awareness-for-social-media-users - Devsena Mishra
Cyber Security Awareness October 2014
Security Awareness: 360 empowerment for cyber defense - JurInnov - Eric Vande...
Cyber awareness program
Cyber Security Awareness (Reduce Personal & Business Risk)
Cyber security awareness for end users
Entrepreneurial ecosystem p1 intro
Leveraging Social Media Skills
London Best Places to Work Roadshow | ARM
Social Media Strategies for Events - Hanzehogeschool Groningen 290312
Biotech guide3rdedition (2)
Grudging monkeys and microservices
Finding and Closing Business from the Social Web
Ad

Similar to Cyber security for system design (20)

PPTX
CS5300 class presentation on managing information systems
PPTX
Cyber security for business
PPT
Port of seattle security presentation david morris
PPTX
Automating Critical Security Controls for Threat Remediation and Compliance
PPTX
Thinking Differently About Security Protection and Prevention
PPTX
Solnet dev secops meetup
PDF
Careers in Cyber Security
PDF
Solvay secure application layer v2015 seba
PPTX
Cyber security fundamentals & ethical hacking
PPTX
chap-1 : Vulnerabilities in Information Systems
PPT
RSA2008: Sins of our Fathers, for which we still are punished
PPT
Discovering the Value of Verifying Web Application Security Using IBM Rationa...
PPTX
Mining Software Repositories for Security: Data Quality Issues Lessons from T...
PPTX
Security Data Quality Challenges
PPTX
CSS 17: NYC - Protecting your Web Applications
PPTX
CSO CXO Series Breakfast
PDF
Cybersecurity update 12
PPTX
Add-Structure-and-Credibility-to-Your-Security-Portfolio-with-CIS-Controls-v8...
PDF
Assessing Risk: Developing a Client/Server Security Architecture,
PDF
Webinar - Reducing the Risk of a Cyber Attack on Utilities
CS5300 class presentation on managing information systems
Cyber security for business
Port of seattle security presentation david morris
Automating Critical Security Controls for Threat Remediation and Compliance
Thinking Differently About Security Protection and Prevention
Solnet dev secops meetup
Careers in Cyber Security
Solvay secure application layer v2015 seba
Cyber security fundamentals & ethical hacking
chap-1 : Vulnerabilities in Information Systems
RSA2008: Sins of our Fathers, for which we still are punished
Discovering the Value of Verifying Web Application Security Using IBM Rationa...
Mining Software Repositories for Security: Data Quality Issues Lessons from T...
Security Data Quality Challenges
CSS 17: NYC - Protecting your Web Applications
CSO CXO Series Breakfast
Cybersecurity update 12
Add-Structure-and-Credibility-to-Your-Security-Portfolio-with-CIS-Controls-v8...
Assessing Risk: Developing a Client/Server Security Architecture,
Webinar - Reducing the Risk of a Cyber Attack on Utilities

Recently uploaded (20)

PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Approach and Philosophy of On baking technology
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Big Data Technologies - Introduction.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Approach and Philosophy of On baking technology
sap open course for s4hana steps from ECC to s4
Assigned Numbers - 2025 - Bluetooth® Document
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Unlocking AI with Model Context Protocol (MCP)
Encapsulation_ Review paper, used for researhc scholars
Programs and apps: productivity, graphics, security and other tools
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Diabetes mellitus diagnosis method based random forest with bat algorithm
NewMind AI Weekly Chronicles - August'25-Week II
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Mobile App Security Testing_ A Comprehensive Guide.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
The Rise and Fall of 3GPP – Time for a Sabbatical?
Network Security Unit 5.pdf for BCA BBA.
Big Data Technologies - Introduction.pptx
Building Integrated photovoltaic BIPV_UPV.pdf

Cyber security for system design

  • 1. Cyber Security for System Design Cyber Security Awareness means that you must be aware of threats and build systems with adequate defenses For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 2. Cyber Security Horror Stories For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 3. Data Breaches: Veteran's Administration • 26.5 million records (Name, SSN, & DoB) • Employee took the material home For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 4. Data Breaches: Sony Pictures • Malware Attack by hackers • New movie release stolen ($44 million production cost) • “Trade secrets” – schedules, plans, contacts, scripts • Employee information • Stolen or insider credentials For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 5. Data Breaches: Target • Attack by hackers • FireEye reported suspicions • 40 million customer credit information • 70 million emails • $148 million • Contractors stolen user id gave access to Target’s internal systems • Malware loaded inside Target systems • Other compromised computers used as data drops For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 6. Data Breaches: TJX & Heartland • T.J. Maxx, Marshalls’ Office Max, Barnes& Noble (Credit cards) • Heartland Payment Systems (Credit cards) • 130 million credit cards compromised • Surveillance of Fortune 500 companies • Exploited vulnerabilities – SQL injection • Sold stolen credit cards For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 7. Cyber Security Awareness • Understand Threats and Defenses • Encourage Personal Responsibility • All aspects of computing • Personal habits • Professional habits
  • 8. Insider Threats Dominate Attacks • Insider – 55% according to IBM study • Careless behavior • Intentional behavior including disgruntled employee attack • Contractor • Hacker • Defenses • security strategy and regulations • comprehensive data on user and system behavior • advanced analytic tools • automated incident-response.
  • 9. SANS Institute • Established in 1989 • Cooperative research and education organization • more than 165,000 security professionals around the world • Ranges from auditors and network administrators, to chief information security officers • Sharing the lessons learned and are finding solutions to the challenges • Many security practitioners in varied global organizations from corporations to universities • Largest source for information security training and security certification
  • 10. SANS - Top 25 Software Errors • Insecure Interaction Between Components (6 errors) • Risky Resource Management (8 errors) • Porous Defenses (11 errors) For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 11. Insecure Interaction Between Components • Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') • Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') • Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') • Unrestricted Upload of File with Dangerous Type • Cross-Site Request Forgery (CSRF) • URL Redirection to Untrusted Site ('Open Redirect')
  • 12. Risky Resource Management • Buffer Copy without Checking Size of Input ('Classic Buffer Overflow') • Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') • Download of Code Without Integrity Check • Inclusion of Functionality from Untrusted Control Sphere • Use of Potentially Dangerous Function • Incorrect Calculation of Buffer Size • Uncontrolled Format String • Integer Overflow or Wraparound
  • 13. Porous Defenses • Missing Authentication for Critical Function • Missing Authorization • Use of Hard-coded Credentials • Missing Encryption of Sensitive Data • Reliance on Untrusted Inputs in a Security Decision • Execution with Unnecessary Privileges • Incorrect Authorization • Incorrect Permission Assignment for Critical Resource • Use of a Broken or Risky Cryptographic Algorithm • Improper Restriction of Excessive Authentication Attempts • Use of a One-Way Hash without a Salt
  • 14. Takeover process • Attack and obtain access • Exploit a known vulnerability • Credentials obtained by • cracking • social engineering • phishing, spear phishing, clone phishing, Whaling • Install malware/rootkit For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 15. Hacking Kits For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 16. Aircrack-Ng Suite of Wi-Fi Hacking Tools • Airmon-Ng • Promiscuous mode – receives all traffic • Airodump-Ng • Captures packets • Aircrack-Ng • statistical techniques (WEP) • dictionary cracks for WPA and WPA2 after capturing the WPA handshake • Aireplay-Ng • Attacks such as Address Resolution Protocol injection or redirection • Airdecap-Ng • Decrypt wireless traffic For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 17. What are the problems? For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 18. Problems • Poor Habits • Personal habits of development team • Poor Development Practices • SDLC fails to make security a concern • Poor Architecture • Architectural standards do not include security concerns • Poor Coding • Programming standards are absent or ignored • Poor Service Management/Service Transition and Operations • Lack of attention, patching, monitoring and analysis
  • 19. Poor Habits Personal habits of development team For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 20. VA Breach • 26.5 million records(Name, SSN, & DoB) • Employee took the material home • Don’t use actual sensitive data in a test For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 21. Personal Habits • What you know is valuable • What you have stored is valuable • Protect yourself
  • 22. Poor Practices SDLC fails to make security a concern For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 23. Development cycle problems • Rush to bring web-based products online • Is security being considered? • Mobile applications without security cautions • Unique issues with mobile • Prototyping with sensitive data • SANS Institute • “… small amount of security testing is done by the development team (21.6 percent) or quality assurance personnel (22.percent) – while the internal security team accounts for most (83.2 percent) of the testing.” For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 24. An old problem • Industry overly focused on testing and scanning • Inspection mentality that was abandoned by most quality systems • Application security has to be part of the early stages of the SDLC • Teach developers how to write secure code and build secure systems For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 25. Poor Architecture Architectural standards do not include security concerns For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 26. Biggest mistakes • Poor threat understanding • False reliance on perimeter protection and products (e.g., anti-virus) • Failure to classify and protect sensitive data • Insecure storage of Personal Identifier Information (PII) • PII emailed as plain text • Web folders with PII in them • Files with PII in same web folder as the form • Insufficient separation • Networks, file systems, folders, etc. • Authority
  • 27. Data Breaches: TJX and Heartland • Tools to detect compromised accounts had many false positives • Solution: CCFinder developed • Identifies how stolen numbers are traded • Include stronger component in the architecture • Also include monitoring in the architecture • Two-factor identification • What you have • What you know • What are you physical characteristics
  • 28. Data Breaches: Sony Pictures • Malware Attack by hackers • Stolen or insider credentials • Defenses • Encrypt all sensitive data • Store passwords in a separate location • Two-factor authentication avoids stolen or insider credentials problem • Store PII someplace separate • Regular security checks and monitoring
  • 29. Data Breaches: Target • No two-factor identification • Access to one system opened the door to others • Identity and Access Management For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 30. Component Architecture Problem • 84% of attacks occur in the application layer • CISCO 215 Annual Security Report: • “Application-level components built by developers are often riddled with vulnerabilities.” 04 Oct 2016 Animas OneTouch Ping insulin pump contains multiple vulnerabilities Multiple CVEs 30 Sep 2016 U by BB&T iOS banking application fails to properly validate SSL certificates CVE-2016-6550 28 Sep 2016 Aternity version 9 vulnerable to cross-site scripting and remote code execution Multiple CVEs 13 Sep 2016 AVer Information EH6108H+ hybrid DVR contains multiple vulnerabilities Multiple CVEs 07 Sep 2016 DEXIS Imaging Suite 10 contains hard-coded credentials CVE-2016-6532 06 Sep 2016 Dentsply Sirona CDR DICOM contains multiple hard-coded credentials CVE-2016-6530 06 Sep 2016 Open Dental uses blank database password by default CVE-2016-6531 06 Sep 2016 Fortinet FortiWAN load balancer appliance contains multiple vulnerabilities Multiple CVEs Recent CERT Vulnerability Database Entries
  • 31. Poor Coding Programming standards are absent or ignored For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 32. Development cycle problems • SANS Institute • “most software developers don’t understand security” • “… small amount of security testing is done by the development team (21.6 percent) or quality assurance personnel (22.percent) – while the internal security team accounts for most (83.2 percent) of the testing.” For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 33. CERT division of SEI • Study and solve problems with widespread cybersecurity implications • Research security vulnerabilities in software products, • Contribute to long-term changes in networked systems • Develop cutting-edge information and training to help improve cybersecurity. For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 34. CERT Division of the SEI: Anticipating and Solving the Nation’s Cybersecurity Challenges • Cyber Risk and Resilience Management • Cybersecurity Engineering • Digital Intelligence and Investigation • Incident Management • Insider Threat • Network Situational Awareness • Secure Coding • Vulnerability Analysis
  • 35. CERT Information for Developers • Secure Coding Standards Research and Development • Secure Lifecycle Solutions • Complexity Modeling and Analysis • Software Security Assurance Measurement and Analysis • Supply Chain Assurance • Survivability Analysis Framework • Security Quality Requirements Engineering • Software Security Engineering: • A Guide for Project Managers
  • 36. CERT Secure Coding Standards wiki. • https://www.securecoding.cert.org/confluence/display/seccode/SEI+ CERT+Coding+Standards
  • 37. Avoid unintentional truncation when using fgets() or fgetws() #include <stdbool.h> #include <stdio.h> bool get_data(char *buffer, int size) { if (fgets(buffer, size, stdin)) { return true; } return false; } void func(void) { char buf[8]; if (get_data(buf, sizeof(buf))) { printf("The user input %sn", buf); } else { printf("Error getting data from the usern"); } } Copies an input string into a buffer
  • 38. Avoid unintentional truncation when using fgets() or fgetws() #include <stdbool.h> #include <stdio.h> bool get_data(char *buffer, int size) { if (fgets(buffer, size, stdin)) { return true; } return false; } void func(void) { char buf[8]; if (get_data(buf, sizeof(buf))) { printf("The user input %sn", buf); } else { printf("Error getting data from the usern"); } } Copies an input string into a buffer and assumes it captured all of the user’s input
  • 39. Avoid unintentional truncation when using fgets() or fgetws() #include <stdbool.h> #include <stdio.h> bool get_data(char *buffer, int size) { if (fgets(buffer, size, stdin)) { return true; } return false; } void func(void) { char buf[8]; if (get_data(buf, sizeof(buf))) { printf("The user input %sn", buf); } else { printf("Error getting data from the usern"); } } Copies an input string into a buffer and assumes it captured all of the user’s input If the last character in the buffer in not a newline and the stream is not at the end-of- file marker, the buffer was too small to contain all of the data from the users.
  • 40. Compliant solution #include <stdbool.h> #include <stdio.h> #include <string.h> bool get_data(char *buffer, int size) { if (fgets(buffer, size, stdin)) { size_t len = strlen(buffer); return feof(stdin) || (len != 0 && buffer[len-1] == 'n'); } return false; } void func(void) { char buf[8]; if (get_data(buf, sizeof(buf))) { printf("The user input %sn", buf); } else { printf("Error getting data from the usern"); } }
  • 41. Poor Service Management Service Transition and Operations Lack of attention, patching, monitoring and analysis For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 42. Service Transition • Security cautions during transition • Moving sensitive data • Exposing sensitive data For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing
  • 43. Service Operations • Sony Breach • Lack of updates • TJX and Heartland • Digital Intelligence and Investigation analysis led to solution • Target • Tool in the architecture produced an alert • Practice or policy not in place to respond • To share or not to share • Cybersecurity Information Sharing Act
  • 44. Resources • CERT Division of SEI • US-CERT • National Vulnerabilities Database • OVAL - Open Vulnerability and Assessment Language • SANS Institute • InfraGard • NIST For information on the MS in Computing thomas.Kaczmarek@mu.edu Marquette.edu/computing