Network Security Attack Analysis. cs490ns - cotter2 Outline Types of Attacks Vulnerabilities Exploited Network Attack Phases Attack Detection Tools.

Slides:



Advertisements
Similar presentations
Buffer Overflows Nick Feamster CS 6262 Spring 2009 (credit to Vitaly S. from UT for slides)
Advertisements

Slide Heading Seminar Series: Managing IT Risk In 2010 Understanding End User Attack Vectors Brian Judd, CISSP SynerComm January 20, 2009.
Buffer Overflow Prabhaker Mateti Wright State University.
Communications of the ACM (CACM), Vol. 32, No. 6, June 1989
For further information computersecurity.wlu.ca
Vulnerability Identification & Patch Management Nate Howe Vice President of Risk Management.
Current Security Threats WMO CBS ET-CTS Toulouse, France May 2008 Allan Darling, NOAA’s National Weather Service WMO CBS ET-CTS Toulouse, France.
Stack-Based Buffer Overflows Attacker – Can take over a system remotely across a network. local malicious users – To elevate their privileges and gain.
By Brian Vees.  SQL Injection  Username Enumeration  Cross Site Scripting (XSS)  Remote Code Execution  String Formatting Vulnerabilities.
Information Networking Security and Assurance Lab National Chung Cheng University The Ten Most Critical Web Application Security Vulnerabilities Ryan J.W.
Advanced Security Center Overview Northern Illinois University.
Information Networking Security and Assurance Lab National Chung Cheng University 1 Top Vulnerabilities in Web Applications (I) Unvalidated Input:  Information.
CS 290C: Formal Models for Web Software Lecture 1: Introduction Instructor: Tevfik Bultan.
Information Networking Security and Assurance Lab National Chung Cheng University 1 A Real World Attack: wu-ftp.
Guide to Operating System Security Chapter 2 Viruses, Worms, and Malicious Software.
Buffer Overflow Attacks. Memory plays a key part in many computer system functions. It’s a critical component to many internal operations. From mother.
Web Application Attacks ECE 4112 Fall 2007 Group 9 Zafeer Khan & Simmon Yau.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Basic Security Networking for Home and Small Businesses – Chapter 8.
Security Exploiting Overflows. Introduction r See the following link for more info: operating-systems-and-applications-in-
The OWASP Top 10 and Buffer Overflow Attacks
Web Application Access to Databases. Logistics Test 2: May 1 st (24 hours) Extra office hours: Friday 2:30 – 4:00 pm Tuesday May 5 th – you can review.
Ladd Van Tol Senior Software Engineer Security on the Web Part One - Vulnerabilities.
Exploitation: Buffer Overflow, SQL injection, Adobe files Source:
Computer Security and Penetration Testing
BLENDED ATTACKS EXPLOITS, VULNERABILITIES AND BUFFER-OVERFLOW TECHNIQUES IN COMPUTER VIRUSES By: Eric Chien and Peter Szor Presented by: Jesus Morales.
3-Protecting Systems Dr. John P. Abraham Professor UTPA.
Software Security Testing Vinay Srinivasan cell:
Attacking Applications: SQL Injection & Buffer Overflows.
The Internet TexPREP Summer Camp Computer Science.
Software Project Documentation. Types of Project Documents  Project Charter  Requirements  Mockups and Prototypes  Test Cases  Architecture / Design.
Top Five Web Application Vulnerabilities Vebjørn Moen Selmersenteret/NoWires.org Norsk Kryptoseminar Trondheim
OWASP Top Ten #1 Unvalidated Input. Agenda What is the OWASP Top 10? Where can I find it? What is Unvalidated Input? What environments are effected? How.
Denial of Service (DoS) DoS attacks are aggressive attacks on an individual computer or groups of computers with the intent to deny services to intended.
Client-based Application Attacks Adli Abdul Wahid Dept. of Comp. Science, IIUM
Data Security Overview. Data Security Periphery –Firewalls –Web Filtering –Intrusion Detection & Prevention Internal –Virus Protection –Anti Spy-ware.
CSCE 548 Secure Software Development Taxonomy of Coding Errors.
Security Attacks CS 795. Buffer Overflow Problem Buffer overflows can be triggered by inputs that are designed to execute code, or alter the way the program.
CIS 450 – Network Security Chapter 14 – Specific Exploits for UNIX.
Input Validation – common associated risks  ______________ user input controls SQL statements ultimately executed by a database server
Middleware Vulnerabilities Damian Tamayo Kansas State University MSE 2 nd Semester.
Buffer Overflow Attack Proofing of Code Binary Gopal Gupta, Parag Doshi, R. Reghuramalingam, Doug Harris The University of Texas at Dallas.
Shellcode Development -Femi Oloyede -Pallavi Murudkar.
Web Security Firewalls, Buffer overflows and proxy servers.
Information Security - 2. A Stack Frame. Pushed to stack on function CALL The return address is copied to the CPU Instruction Pointer when the function.
Example – SQL Injection MySQL & PHP code: // The next instruction prompts the user is to supply an ID $personID = getIDstringFromUser(); $sqlQuery = "SELECT.
Introduction to Networking. What is a Network? Discuss in groups.
Software Security. Bugs Most software has bugs Some bugs cause security vulnerabilities Incorrect processing of security related data Incorrect processing.
Vulnerabilities in Operating Systems Michael Gaydeski COSC December 2008.
Carrie Estes Collin Donaldson.  Zero day attacks  “zero day”  Web application attacks  Signing up for a class  Hardening the web server  Enhancing.
Vulnerability / Cybersecurity Research Discussion Dwayne Melancon, CISA Chief Technology Officer and VP of Research & Development.
Lecture 19 Page 1 CS 236 Online 6. Application Software Security Why it’s important: –Security flaws in applications are increasingly the attacker’s entry.
SQL Injection.
3.1 Types of Servers.
Group 18: Chris Hood Brett Poche
Ilija Jovičić Sophos Consultant.
Web Application Vulnerabilities, Detection Mechanisms, and Defenses
Chapter 7: Identifying Advanced Attacks
Example – SQL Injection
A Security Review Process for Existing Software Applications
The Security Problem Security must consider external environment of the system, and protect it from: unauthorized access. malicious modification or destruction.
TexPREP Summer Camp Computer Science
MIS Professor Sandvig MIS 324 Professor Sandvig
Database Driven Websites
CS 465 Buffer Overflow Slides by Kent Seamons and Tim van der Horst
Software Security Lesson Introduction
Lecture 2 - SQL Injection
Security at the Source.
CS5123 Software Validation and Quality Assurance
Test 3 review FTP & Cybersecurity
6. Application Software Security
Presentation transcript:

Network Security Attack Analysis

cs490ns - cotter2 Outline Types of Attacks Vulnerabilities Exploited Network Attack Phases Attack Detection Tools

Top Cyber-security Risks Application vulnerabilities exceed OS vulnerabilities –Password guessing – SQL, FTP, SSH Web application attacks –Server-side, client-side attacks –PHP remote file Include –Cross-site scripting –SQL injection Windows: Conficker/Downadup Apple: QuickTime … Zero Day Vulnerabilities –File Format Vulnerabilities (pdf, Word, Execl, Flash, etc.)

cs490ns - cotter4 – Top 20 4/08 Client-side Vulnerabilities in: C1. Web Browsers C2. Office Software C3. Clients C4. Media Players Server-side Vulnerabilities in: S1. Web Applications S2. Windows Services S3. Unix and Mac OS Services S4. Backup Software S5. Anti-virus Software S6. Management Servers S7. Database Software Security Policy and Personnel: H1. Excessive User Rights and Unauthorized Devices H2. Phishing/Spear Phishing H3. Unencrypted Laptops and Removable Media Application Abuse: A1. Instant Messaging A2. Peer-to-Peer Programs Network Devices: N1. VoIP Servers and Phones Zero Day Attacks: Z1. Zero Day Attacks

cs490ns - cotter5 Example Description C4 Media Players –C4.1Description –C4.2Operating Systems Affected –C4.3CVE Entries –C4.4How to determine if you are vulnerable –C4.5How to protect against MP vulnerabilities –C4.6References

C4.3 CVE Entries RealPlayer CVE , CVE , CVE Apple iTunes CVE CVE Adobe Flash Player CVE , CVE CVE CVE Apple Quicktime CVE , CVE , CVE , CVE , CVE , CVE , CVE ,CVE , CVE , CVE , CVE , CVE , CVE , CVE ,CVE , CVE , CVE , CVE , CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE CVE Windows Media Player CVE , CVE , CVE , CVE CVE CVE CVE CVE

nvd.nist.gov

cs490ns - cotter8 Types of Attacks Software vulnerabilities –Buffer overflows Viruses, trojans, etc. System or service configuration mistakes Password weaknesses Denial-of-Service attacks Wireless Attacks

cs490ns - cotter9 Buffer Overflows Objective: –Send more data to an application input than it is designed to handle. –Craft the data such that the overflow portion will be interpreted as executable code. –Typically done by getting data to overflow in stack so that it overwrites PC address Depends on: –Traditional (non-checked) data validation. –Code instructions that do not validate input.

cs490ns - cotter10 Buffer Overflow Example void function(char *str) { char buffer[16]; strcpy(buffer,str); } void main() { char large_string[256]; int i; for( i = 0; i < 255; i++) large_string[i] = 'A'; function(large_string); }

cs490ns - cotter11 Stack Structure for function bottom of top of memory code buffer sfp ret *str < [XXXXXXXXXXXXXXXX][XXXX][XXXX][XXXX] top of bottom of stack *strpointer to char buffer (argument into function) retpointer to return address in main sfpsaved frame pointer (reference into memory frame) bufferstorage allocated for character array code…

cs490ns - cotter12 Stack Overflow bottom of top of memory buffer sfp ret *str < [XXXXXXXXXXXXXXXX][1F3C][1F9A][1F7C] top of bottom of stack bottom of top of memory buffer sfp ret *str < [AAAAAAAAAAAAAAAA][AAAA][AAAA][AAAA] top of bottom of stack After strcpy: Before strcpy:

cs490ns - cotter13 Stack Manipulation bottom of top of memory buffer sfp ret *str < [AAAAAAAAAAAAAAAA][XXXX][1F94][XXXX] top of bottom of stack Overflow buffer with the bytes needed to overwrite the return pointer with a desired address That points to an instruction of your own crafting bottom of top of memory buffer sfp ret *str < [AAAAAAAAAAAAAAAA][XXXX][1F41][XXXX] top of bottom of stack

cs490ns - cotter14 Viruses, trojans, etc. Check for evidence of programs (and versions) that are susceptible to attack. Test for outdated (or unchecked) virus scan software.

cs490ns - cotter15 System or service configuration mistakes Default passwords left in place –Router passwords –Program passwords Default (unused) services left running –Sendmail –Echo, time, etc. Default settings for firewalls and routers

cs490ns - cotter16 Password weaknesses Test for standard password weaknesses –Short passwords –Dictionary based passwords –Personal information passwords (pets, family, etc.) Test for unencrypted passwords Try to download encrypted password files –/etc/passwd, /etc/shadow Use dictionary, etc as source –Encrypt word, compare to password file

cs490ns - cotter17 Wireless Attacks Scan for Access Points (War Driving) Look for SSID beacons Test for mac address blocking Look for unencrypted access points If encrypted, test for WEP / WPA –If WEP, consider the value of capturing data and trying to recover secret through IV

cs490ns - cotter18 Network Attack Phases Reconnaissance Vulnerability Identification Penetration Control Embedding Data extraction / modification Attack Relay

cs490ns - cotter19 Reconnaissance Find out about network topology –What IP addresses are active? –What Operating Systems do they use? –What services / servers do they support? –What other machines do they talk to? Tools –Port Scanners –DNS queries (zone transfers) Defense –Snort, Shadow

cs490ns - cotter20 Vulnerability Identification Once systems have been scanned, specific sweeps are made to check for specific service or system vulnerabilities –See SANS top 20 –Buffer overflows, etc. Most Popular Targets –Servers difficult to remove or relocate ( DNS, mail, web, etc.) Defense –Don’t expose vulnerabilities!

cs490ns - cotter21 Penetration Most sucessful hack is one that is not detected –Second best is an attack that cannot be traced. Systems with some security typically rely on a “hard shell”. –Firewall or proxy servers –Perhaps IDS If firewall is secure, then use the users –Track external site visits –Taint DNS records to point to an attack machine –Let users establish the connection for you!

cs490ns - cotter22 Control Typically a bootsrtap process. –Find an exploit that allows you to control a process (program). –Use that process to start up a process of your choosing with permissions of the owner of the original process –This process will contact the attack host and download the full exploit. –Use that process to execute another exploit that will get root privilege (if needed).

cs490ns - cotter23 Embedding Once into the system, the hacker will attempt to hide several different access programs. –If one exploit is discovered, perhaps others will not. –Alter logging programs to not display packets –Alter process display programs to not show processes –Etc. Want to be sure that the attack program (bot) will survive a restart.

cs490ns - cotter24 Embedding Store exploits by overwriting little used existing files (games,etc.) Store most of the exploit as fragments inside other files (steganography), then use a small reassembly program to rebuild on command Hide program on unused portions of the disk Load poritons of the bot onto unused eeprom on the network card.

cs490ns - cotter25 Data extraction / modification First order of business is to send system data back to relay –Windows – registry –Linux - /proc Transmit data slowly – over several different sessions Encrypt and embed data into known (or expected) data flows – www, ftp, , etc. –Use existing programs RMON and arpwatch

cs490ns - cotter26 Attack Relay Use this new system as a relay to attack other systems. –Use multiple relays – ideally in multiple countries – to link to attacked machines. –Use multiple machines for an attack A few suspicious packets from a machine once in a week may not be acted upon Multiple machines are harder to block.

cs490ns - cotter27 Attack Detection Tools Scanners –Virus Scanners –SpyBots –Malware scanners IDS –Network based –Host based

Profile of an Advanced Cyber Intrusion Ongoing (since 1999) series of suspected intrusions on US commercial and military sites from PRC Information presented in an unclassified document that details China’s capability to conduct cyber attacks document One element of that report is a detailed report of an intrusion into a US commercial network

Awareness of the Problem Information security staff at the company became aware of the intrusion when they detected large volumes of data leaving their network –Coming from multiple machines –Going to multiple addresses mostly (completely?) within the US Were able to implement blocks to stop the flow, but an unknown volume of data was transmitted.

Two Teams Able to distinguish teams based on the tools and techniques used. Forensic Profile –Able to distinguish individuals based on “keyboard behavior” – tools, techniques, command combinations, elapsed time between keyboard entries, etc. Breach Team –Figure out how to get into the network and secure machines. Collection Team –Determine what information to extract and implement the extraction.

Data Compromised Information extracted was very carefully selected. –Files picked out of directories of related information –Files generally were not opened pripr to extraction Suggests that intruders had very detailed knowledge of the information in the network and had been able to search through the files to identify what they wanted. –Took a lot of time –Took detailed knowledge of the company

Activity prior to exfiltration Information Security (IS) detected low levels of intrusive activity prior to exfiltration. –Seemed to be folcused on maintenance of their presence within the network –When detected IS would block the link. –Apparently intruders were able to open up other links undetected to continue their reconaissance. Process continued for several days (at least).

Reconnaissance Phase Identify specific files, directories and file shares that contained desirable information Identify specific users who would have access to desired information and compromise their accounts. Uncover and use password policies Identify group memberships Construct detailed network architecture diagrams to facilitate information movement Process was very methodical and quiet.

Data Exfiltration Operation Cmd / Control Work station Work station Staging File Server File Server File Server Exfilt Host Exfilt Host Exfilt Host External Host External Host External Host Staging Compromised users Staging Sys via RDP Sending Hosts (Internal) Collection Host (External) External Command and Control (C2)

Analysis Used dozens of accounts over about 150 occasions to gather information. –Very difficult to correlate the activities prior to exfiltration. Group memberships were particularly important in accessing data from non- compromised accounts.

Data Staging Process Took place over several days Noticed an increase in short duration communications –Appeared to be used to verify resources, set up redundant channels, etc. Transfer done in the evening (same time each night). Transfer desired data from file servers to mail servers. –75% of the company’s several dozen mail servers were involved in the intrusion. Rename files to resemble legitimate Windows files on mail servers. Encrypt and compress files into 650 MB RAR archives

Exfiltration Secure a compromised user machine for use as an internal C2 station Move data into staging servers Test all staging servers by downloading a 20MB video file. –Terminated download before complete. Identify local (US) external hosts to receive the data Used several versions of FTP (both standard and customized versions) to get a working configuration for offloading files. Finally got a working configuration to a US University site. Replicated the configuration 5 more times to increase throughput. Eventually detected and blocked. IS noted repeated attempts over the next 5 hours to regain access.

cs490ns - cotter38 Summary There are many ways that hackers can get into systems Complexity of systems today makes it difficult to protect all possible attack vectors. Several web sites available to identify trends (SANS, etc.) Understand the process!

cs490ns - cotter39 References Stealth Coordinated Attack HOWTO by Dragos Ruiu –Google for a copy (it seems to move around) Network Intrusion Detection 3 rd ed.- Northcutt and Novak – New Riders Publishing 2003 Maximum Linux Security – Anonymous – Sams Publishing – 2000 Ethical Hacking and Network Defense – Simpson – Thomson Course Technonogy – 2006 Smashing the Stack for Fun and Profit – PRC and Cyber Warfare – RC_Cyber_Paper_FINAL_Approved%20Report_16Oct2009.pdf