1 / 34

System Penetration with Metasploit Framework

System Penetration with Metasploit Framework. Presentation by Rob Bobek. Content. Part I: System Penetration Many Attack Vectors Understanding Software Exploitation Attacks Understanding Exploits Understanding Payloads Metasploit Framework Understanding MSF Part II:

jake
Download Presentation

System Penetration with Metasploit Framework

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. System Penetration with Metasploit Framework Presentation by Rob Bobek

  2. Content • Part I: • System Penetration • Many Attack Vectors • Understanding Software Exploitation Attacks • Understanding Exploits • Understanding Payloads • Metasploit Framework • Understanding MSF • Part II: • Snort Introduction • Understanding Snort • Snort Installation/Configuration • IDScenter Configuration • The Attack Experiment • Network Topology and Hardware Configuration/Details • Software Details • Vulnerability Details • Conducting the Attack • Snort Observations • References • Questions

  3. Part I – System Penetration • What do I mean by System Penetration? The act of successfully breaching security on a remote computer system in order to gain some form of control access. • So, what is Metasploit Framework? • First we need to learn some basic concepts before understanding what the Metasploit Framework is and what it is capable of providing.

  4. Many Attack Vectors! • Gaining access to a secured system can be a difficult task that requires skill and maybe luck. However, we have also have plenty of simple techniques, commonly used today, to achieve the same result. Such include; • Authentication Attacks • Password guessing using common strings or using default passwords • Ex: Wireless Routers have default passwords  Majority don’t change this!!! • Ex: Windows Administrator Account are often blank • Password Brute Force Attack • These method has become extremely fast with the of Rainbow Tables! • Rainbow tables pre-computed tables of password hashes. • Social Engineering Attacks • To influence someone into divulging confidential information using techniques. • Ex: Phishing Attacks • A malicious user who impersonates him or herself as trustworthy a entity • SQL Injection Attacks • To inject unexpected malformed SQL into a query in order to manipulate the database in unintended ways. • Ex: Injection of SQL to spit out information from certain tables • Ex: Inject an administrator account for yourself

  5. Many Attack Vectors! • However, one of the most dangerous and yet a very effective attack used by malicious users today areSoftware Exploitation Attacks! Software Exploitation Attacks can be used to gain access to unauthorized systems, leverage user account privileges, crash systems or provide installation of malicious software (such as Spyware, Virus’s, Trojans, Adware, etc.) without the awareness of the other party.

  6. Understanding S.E. Attacks. • First, let’s understand basics. • According to Wikipedia; “The word vulnerability, in computer security, refers to a weakness in a system allowing an attacker to violate the confidentiality, integrity, availability, access control, consistency or audit mechanisms of the system or the data and applications it hosts” • To Software Developers, a bug is synonymous to a vulnerability. • Ex: Errors in program’s source code or flawed program design • Buffer overflows • Memory leaks • Dead locks • Arithmetic overflow • Accessing protected memory (Access Violation)

  7. Understanding S.E. Attacks • Regardless though which type of software bug we are speaking of, they are used as the foundation to form an exploit. • Therefore, an exploit is a security attack on a vulnerability. • In other words (again), an exploit attacking a vulnerability is generating an event that the application/program/OS is not programmed/designed to recover successfully and therefore the result is a system that discontinues to function correctly • How will this give us access to a secured System? Ans: It won’t. • Each exploit can be designed to meet the methodology of your attack. • Ex: An attacker exploits an IDS to reboot it or crash it before he/she launches a further attack to avoid detection.

  8. Understanding Payloads • However, Exploits have more potential! • They are commonly used to install system malware or gain system access or recruit client machines into an existing ‘botnet’. • This is accomplished with the help of a payload • The payload is a sequence of code that is executed when the vulnerability is triggered • To make things clear, an Exploit is really broken up into two parts, like so; EXPLOIT = Vulnerability + Payload;

  9. Understanding Payloads • The payload is usually written in Assembly Language • Platform and OS dependant. • A Win32 payload will not work in Linux (even if we are exploiting the same bug) • Big Endian, Small Endian Architectures • Different payload types exist and they accomplish different tasks • exec  Execute a command or program on the remote system • download_exec  Download a file from a URL and execute • upload_exec  Upload a local file and execute • adduser  Add user to system accounts

  10. Understanding Payloads • However, the most common payload type used with exploits are shellcodes or aka shell payloads. • These payloads are very useful because they provide the attacker an interactive shell that can be used to completely control the system remotely • The term is inherited from Unix  /bin/sh • For Win OS’s, shells actually refer to command prompt  cmd.exe • There are two different types of shell payloads; • Bind Shells  A socket is created, a port is bound to it and when an a connection is established to it, it will spawn a shell. • Reverse Shells  Instead of creating a listening socket, a connection is created to a predefined IP and Port and a shell is then shoveled to the Attacker.

  11. Metasploit Framework What is the Metasploit Framework? • According to the Metasploit Team; “The Metasploit Framework is a platform for writing, testing, and using exploit code. The primary users of the Framework are professionals performing penetration testing, shellcode development, and vulnerability research.”

  12. Understanding MSF • The MSF is not only an environment for exploit development but also a platform for launching exploits on real-world applications. It is packaged with real exploits that can provide real damage if not used professionally. • The fact that MSF is an open-source tool and provides such a simplified method for launching dangerous attacks, it has and still is attracting wannabe hackers and script kiddies that do no more than create additional problems on networks and system.

  13. Part II – Snort Introduction • A problem exists will large networks  • Without proper equipment, it becomes more difficult for Administrators and Analyst's to continuously keep track of the security and integrity of their network. This is true because larger network have more potential areas to be targeted and therefore detection of attacks become a challenging task. • What are Network Intrusion Detection System’s? • This is proper equipment • It is technology that has been designed to automatically detect malicious content on a network and provide the administrator with a response in the event of a problem.

  14. Understanding Snort • Simply, Snort is an open-source Intrusion Detection System (IDS) and an Intrusion Prevention System (IPS) technology. • Meaning it will monitor our networks traffic for malicious content to determine if there is a problem and it will also take immediate action if it detects a problem • Snort can perform real-time analysis on packet streams to detect many variations of attacks and probes. Such attacks and probes include, as listed on snorg.org, are buffer overflows, stealth port scans, CGI attacks, SMB probes, OS fingerprinting attempts, and much more. • Snort is also a real-time alerting agent. • Example: Snort can be configured to send Bob an e-mail when a low-priority attack is detected but send Joe a pager notification when a high-priority attack is detected.

  15. Snort Installation/Configuration • Installation easy! • Requires WinPcap libraries • However, configuration is not so easy • Required manual modifications to snort.conf • Difficult to debug • IDScenter makes snort configuration much easier! • http://www.engagesecurity.com/products/idscenter/ • In a nutshell, IDScenter is a front-end GUI for the snort.conf configuration file • IDScenter also includes; • snort.conf testers • No worries about syntax • Alert file viewer

  16. IDScenter Configurations Figure: IDScenter Main Panel

  17. IDScenter Configurations Figure: Initialize Environment Variables

  18. IDScenter Configurations Figure: Added Bleeding Edge Threats Rulesets

  19. The Attack Experiment Goal: • To conduct a Software Exploitation Attack using Metasploit Framework against a Victim machine in order to gain system access • To make things interesting, the Victim’s machine will also have Snort running locally as an IDS in order to see how it reacts to the attack.

  20. Network Topology and Hardware Configurations/Details

  21. Software Details • Victim(*No anti-virus or similar scanner is running on this machine) • Operating System: Windows XP Professional 5.1.2600, Service Pack 2 (not fully updated) • Snort 2.7.0 • Attacker • Operating System: Slackware Linux via BackTrack 2 Bootable Live CD • Metasploit Framework 3.0 – Beta Development Release

  22. Vulnerability Details • Microsoft Security Bulletin - MS06-001 Vulnerability in Graphics Rendering Engine Could Allow Remote Code Execution (912919) • Originally posted on January 5, 2006 • However, it was running wild as a 0-Day vulnerability for a couple weeks • The heart of the vulnerability was within ‘Graphics Rendering Engine’ of the OS; where a problem would occur whenever it handled corrupted Windows Metafile images. This is was not typical buffer overflow problem but merely a flaw in the design. • At the time, it was an extremely critical vulnerability!

  23. Conducting the Attack Figure: Booting up Backtrack

  24. Conducting the Attack Figure: Metasploit Command Line Interface

  25. Conducting the Attack Figure: Exploit Selection Figure: Exploit Initialization

  26. Conducting the Attack Figure: Payload Selection

  27. Conducting the Attack Figure: Module and Payload Configuration

  28. Conducting the Attack Figure: Attack launched using ‘exploit’ command

  29. Conducting the Attack Figure: Victim Exploited

  30. Conducting the Attack Figure: Successful attack opens remote control session Figure: Active sessions

  31. Conducting the Attack Figure: System Access ! Figure: ‘ipconfig’ executed on Victim’s machine

  32. Figure: Attack and the effects of it detected by Snort

  33. References [1] “Software Bug” URL: http://en.wikipedia.org/wiki/Computer_bug [2] “Computer Security” URL: http://en.wikipedia.org/wiki/Computer_security [3] “Exploit (computer security)” URL: http://en.wikipedia.org/wiki/Exploit_(computer_security) [4] “BackTrack Security Live CD” URL: http://www.remote-exploit.org/ [5] “Metasploit Framework” URL: http://www.metasploit.com/ [6] “Snort” URL: http://www.snort.org/ [7] “WinPcap” URL: http://www.winpcap.org/ [8] “IDScenter” URL: http://www.engagesecurity.com/products/idscenter/ [9] ” Bleeding Edge Threats” URL: http://www.bleedingthreats.net/ [10] “Microsoft Security Bulletin MS06-001” URL: http://www.microsoft.com/technet/security/bulletin/MS06-001.mspx

  34. Questions ?

More Related