Uploaded by X shell

005.Vulnerability Assessment

advertisement
Vulnerability Analysis And
Assessment
Monther Aldwairi
Hacking Steps
1. Reconnaissance: Information Gathering
1.
2.
Footprinting
Port Scanning
2. Enumeration/Threat-modeling/Vulnerability Analysis
3. Exploitation/Gaining Access/System Hacking
4. Post Exploitation
•
•
•
•
Privilege Escalation
Lateral Movement
Maintaining Access
Clearing Tracks
5. Reporting/Exfiltration
2
Terms
• Threat: a possible danger that might damage your computer network.
• It’s important to identify threats, but they can’t be controlled.
• Threats can cause harm when your organization has security vulnerabilities
(burglar or burglary)
• Vulnerability: is being susceptible to an attack due to security flaws in
your system.
• Vulnerabilities can be identified and corrected to protect your organization.
(forgot to lock door)
• Risk: refers to the potential for damage when a threat exploits a
vulnerability.
Cyber Threat Intelligence
• Cyber Threat Intelligence (CTI) collects and analyzes data to determine the
motivations, targets and TTPs (Tactics, Techniques, and Procedures ) of
cyber attacks / threat actors against your organization
• Cyber threat intelligence life cycle
1.
2.
3.
4.
Planning: Determining the purpose, objective and requirements of the CTI (SOC
Analyst, security products (IPS/IDS/EDR/Firewall, SIEM))
Data Collection & Processing: Collecting data and making it ready for analysis.
(Threat hunters and indecent responders)
Analysis: Analyzing the processed data, transforming the information into
intelligence and making it ready for sharing.
Dissemination & Feedback: Sharing threat intelligence data and determine
whether arrangements should be made for future threat intelligence operations.
Cyber Threat Hunting?
• Unlike most other SecOps, cyber threat hunting is proactive humanled defense activity that seeks out threat actors before successfully
launching an attack on your system
• The goal is to intercept potential attacks before damage is done, or to
mitigate damage of an attack in progress.
• Threat analysts (security, forensics, and intelligence analysis skills) work with
your security teams to build indicators of compromise (IOC), and profile the
TTPs of your adversary.
• The threat hunter will seek out evidence of malicious activities that did not
generate security alerts, using data analytics tools.
• Threat hunting is particularly needed in battling APTs that start with an initial
undetected compromise, and then build out long-term multi-phase attacks.
Threat Hunting Tactics
1. Recognizing Suspicious Software. Identify by process name or by process
hash.
2. Behavior Changes (monitoring processes)
3. Scripting Abuse (monitor for execution of a scripting engines (cscript,
wscript, and powershell)
4. Antivirus Follow-Up
5. Persistence. Monitor programs that run every time the system boots up,
logs on …etc.
6. Lateral Movement. Monitor unusual user/endpoint logon combinations,
as well as abnormal network connections made between systems.
7. Bait the Bad Guys. Honeypots, vulnerable ports, weak passwords …etc.
Vulnerability Management
• Vulnerability management is a proactive approach to mitigate or prevent the exploitation
of IT vulnerabilities.
• The goal is to reduce the likelihood that your system will be compromised.
1.
2.
3.
4.
5.
Keep up with security threats and trends.
Install, configure and continuously update your vulnerability management software
• Automated vulnerability scanners, allow you to regularly search and identify vulnerabilities
You are likely to find thousands of vulnerabilities.
• Classify and define the severity of each vulnerability and the level of risk it poses to your company.
Mitigate. Determine how you will prevent vulnerabilities from being exploited.
• Patch promptly or automate with patch management tools. (NIST Guide to Patch Management)
Reporting and Notification. Sharing information about how vulnerabilities are being
exploited by adversaries can help defenders across the world.
Vulnerability Response
• Standard vulnerability management programs
include: phases for identifying, analyzing,
remediating, and reporting vulnerabilities.
• Proactively identify reports of vulnerabilities that are actively exploited in the wild by
monitoring threat feeds and information sources:
•
•
•
•
•
•
•
•
CISA/US-CERT National Cyber Awareness System (NCAS)
CISA Binding Operational Directive (BOD), to manage the unacceptable risk of known vulnerabilities.
NIST’s National Vulnerability Database (NVD)
CVE Details
MITRE CVE, Common Weaknesses Enumeration (CWE)
Common Vulnerability Scoring System (CVSS)
OSVDB (open source vulnerability database)
Chinese National Vulnerability Database (CNVD)
• Internal SOC monitoring and incident response.
Remediation
• In most cases, remediation should consist of patching!
• Other mitigations (patches do not exist or not tested yet)
1.
2.
3.
4.
5.
Limiting access;
Isolating vulnerable systems, applications, services, profiles, or other assets;
Making permanent configuration changes;
Disabling services, reconfiguring firewalls to block access;
Increasing monitoring to detect exploitation.
Common Vulnerabilities
Common Vulnerabilities
• Major categories of network vulnerabilities
1. Software or firmware defects (See following slides)
2. Configuration or implementation errors
• Apache HTTP configuration. MaxClients: concurrent users default value is 256
• Must have memory capacity to process those requests
3. Process or procedure weaknesses: vulnerabilities that result from human
error
• More difficult to detect and fix
• Policy is violated
• Solutions ➔ Awareness and training sessions for employees
Defects in Software or Firmware
1. Buffer overruns (overflows)
2. Integer overflows (Programmer does not restrict data to data type
size boundaries)
3. Format string problems (user input passed to a formatting function
without validation)
4. C++ catastrophes (uninitialized function pointers)
5. Failure to handle errors correctly
6. Catching exceptions (incorrect or intercepting error-handling calls)
7. Injection (program does not properly validate user input)
Defects in Software or Firmware
8. Failure to protect stored data (Protect data during transit and while
at rest)
9. Information leakage (release of sensitive data outside intended
organization)
10. Race conditions (two threads, processes, or applications are able to
modify a resource not ensuring desired order of events)
11. Poor usability (application difficult to work with and users find ways
to bypass security features)
12. Not updating easily
13. Executing code with too much privilege
Defects in Software or Firmware
14. Weaknesses introduced with mobile code (ActiveX control, Flash
application, Java applets)
15. Weak password-based systems
16. Weak random numbers
17. Using cryptography incorrectly
18. Failing to protect network traffic (eavesdropping)
19. Improper use of PKI, especially SSL
20. Trusting network name resolution (DNS manipulation)
Finding Vulnerabilities
• Manual process of penetration testing
• Various automated tools available
•
•
•
•
•
•
•
•
•
Footprinting
Port scanners
Vulnerability scanners (Nessus, OpenVAS, GFI LanGuard, Qualys Cloud Platform)
Web scanners
Fuzzers produce a variety of user inputs to monitor programs for unexpected crashes/outcomes
Packet sniffers, MiTM (Wireshark, Ettercap, Cain and Abel)
Wireless security tools (Kismet, NetStumbler, AirSnare, Vistumbler, Aircrack-ng)
Firewall analysis tools (Firewalk, wafw00f)
Penetration Testing Framework
1.
2.
3.
4.
5.
6.
Metasploit
Mitre ATT&CK
Immunity’s CANVAS
CORE Impact
Cobalt Strike
Burp Suite
Vulnerability Disclosure
• Approaches to handling the disclosure of vulnerabilities
• Full disclosure
• Delayed disclosure
• Disclose only after a fix is available
• Responsible disclosure
• Report vulnerability to the vendor first
• Allow vendor time to fix
• SANS Internet Storm Center monitors the level of malicious activity on the
Internet
• Information Sharing and Analysis Center (IT-ISAC)
• Forum of Incident Response and Security Teams (FIRST) enables reactive
and proactive incident
Download