2022-05-01 13:25:53 +00:00
# 2049 - Pentesting NFS Service
2022-04-28 16:01:33 +00:00
< details >
< summary > < strong > Support HackTricks and get benefits!< / strong > < / summary >
2022-09-09 11:28:04 +00:00
- Do you work in a **cybersecurity company** ? Do you want to see your **company advertised in HackTricks** ? or do you want to have access to the **latest version of the PEASS or download HackTricks in PDF** ? Check the [**SUBSCRIPTION PLANS** ](https://github.com/sponsors/carlospolop )!
2022-04-28 16:01:33 +00:00
2022-09-09 11:28:04 +00:00
- Discover [**The PEASS Family** ](https://opensea.io/collection/the-peass-family ), our collection of exclusive [**NFTs** ](https://opensea.io/collection/the-peass-family )
2022-04-28 16:01:33 +00:00
2022-09-09 11:28:04 +00:00
- Get the [**official PEASS & HackTricks swag** ](https://peass.creator-spring.com )
2022-04-28 16:01:33 +00:00
2022-09-09 11:28:04 +00:00
- **Join the** [**💬** ](https://emojipedia.org/speech-balloon/ ) [**Discord group** ](https://discord.gg/hRep4RUj7f ) or the [**telegram group** ](https://t.me/peass ) or **follow** me on **Twitter** [**🐦** ](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md )[**@carlospolopm** ](https://twitter.com/carlospolopm )**.**
2022-04-28 16:01:33 +00:00
2022-09-09 11:28:04 +00:00
- **Share your hacking tricks by submitting PRs to the** [**hacktricks github repo** ](https://github.com/carlospolop/hacktricks )**.**
2022-04-28 16:01:33 +00:00
< / details >
2022-05-01 13:25:53 +00:00
## **Basic Information**
2020-07-15 15:43:14 +00:00
It is a client/server system that allows users to access files across a network and treat them as if they resided in a local file directory.
**Default port**: 2049
2022-05-01 13:25:53 +00:00
```
2020-07-15 15:43:14 +00:00
2049/tcp open nfs 2-3 (RPC #100003
```
2022-05-01 13:25:53 +00:00
## Enumeration
2020-07-15 15:43:14 +00:00
2022-05-01 13:25:53 +00:00
### Useful nmap scripts
2020-07-15 15:43:14 +00:00
```bash
nfs-ls #List NFS exports and check permissions
nfs-showmount #Like showmount -e
nfs-statfs #Disk statistics and info from NFS share
```
2022-05-01 13:25:53 +00:00
### Useful metasploit modules
2020-07-15 15:43:14 +00:00
```bash
scanner/nfs/nfsmount #Scan NFS mounts and list permissions
```
2022-05-01 13:25:53 +00:00
### Mounting
2020-07-15 15:43:14 +00:00
To know **which folder** has the server **available** to mount you an ask it using:
```bash
showmount -e < IP >
```
Then mount it using:
```bash
mount -t nfs [-o vers=2] < ip > :< remote_folder > < local_folder > -o nolock
```
You should specify to **use version 2** because it doesn't have **any** **authentication** or **authorization** .
**Example:**
```bash
mkdir /mnt/new_back
mount -t nfs [-o vers=2] 10.12.0.150:/backup /mnt/new_back -o nolock
```
2022-05-01 13:25:53 +00:00
## Permissions
2020-07-15 15:43:14 +00:00
2022-05-01 13:25:53 +00:00
If you mount a folder which contains **files or folders only accesible by some user** (by **UID** ). You can **create** **locally** a user with that **UID** and using that **user** you will be able to **access** the file/folder.
2020-07-15 15:43:14 +00:00
2022-05-01 13:25:53 +00:00
## NSFShell
2020-07-15 15:43:14 +00:00
To easily list, mount and change UID and GID to have access to files you can use [nfsshell ](https://github.com/NetDirect/nfsshell ).
[Nice NFSShell tutorial. ](https://www.pentestpartners.com/security-blog/using-nfsshell-to-compromise-older-environments/ )
2022-05-01 13:25:53 +00:00
## Config files
2020-07-15 15:43:14 +00:00
2022-05-01 13:25:53 +00:00
```
2020-07-15 15:43:14 +00:00
/etc/exports
/etc/lib/nfs/etab
```
2022-05-01 13:25:53 +00:00
## Privilege Escalation using NFS misconfigurations
2020-07-15 15:43:14 +00:00
2022-05-01 13:25:53 +00:00
[NFS no\_root\_squash and no\_all\_squash privilege escalation ](../linux-hardening/privilege-escalation/nfs-no\_root\_squash-misconfiguration-pe.md )
2020-07-15 15:43:14 +00:00
2022-05-01 13:25:53 +00:00
## HackTricks Automatic Commands
2021-08-12 12:55:42 +00:00
2022-05-01 13:25:53 +00:00
```
2021-08-12 12:55:42 +00:00
Protocol_Name: NFS #Protocol Abbreviation if there is one.
Port_Number: 2049 #Comma separated if there is more than one.
Protocol_Description: Network File System #Protocol Abbreviation Spelled out
2021-08-15 17:39:13 +00:00
Entry_1:
Name: Notes
Description: Notes for NFS
Note: |
It is a client/server system that allows users to access files across a network and treat them as if they resided in a local file directory.
#apt install nfs-common
showmount 10.10.10.180 ~or~showmount -e 10.10.10.180
2021-08-12 12:55:42 +00:00
should show you available shares (example /home)
2021-08-14 10:42:47 +00:00
2021-08-15 17:39:13 +00:00
mount -t nfs -o ver=2 10.10.10.180:/home /mnt/
cd /mnt
nano into /etc/passwd and change the uid (probably 1000 or 1001) to match the owner of the files if you are not able to get in
2021-08-12 12:55:42 +00:00
2021-08-15 17:39:13 +00:00
https://book.hacktricks.xyz/pentesting/nfs-service-pentesting
2021-08-12 12:55:42 +00:00
2021-08-15 17:39:13 +00:00
Entry_2:
Name: Nmap
Description: Nmap with NFS Scripts
2021-09-19 09:07:30 +00:00
Command: nmap --script=nfs-ls.nse,nfs-showmount.nse,nfs-statfs.nse -p 2049 {IP}
2021-08-12 12:55:42 +00:00
```
2021-08-14 10:42:47 +00:00
2022-04-28 16:01:33 +00:00
< details >
< summary > < strong > Support HackTricks and get benefits!< / strong > < / summary >
2022-09-09 11:28:04 +00:00
- Do you work in a **cybersecurity company** ? Do you want to see your **company advertised in HackTricks** ? or do you want to have access to the **latest version of the PEASS or download HackTricks in PDF** ? Check the [**SUBSCRIPTION PLANS** ](https://github.com/sponsors/carlospolop )!
2022-04-28 16:01:33 +00:00
2022-09-09 11:28:04 +00:00
- Discover [**The PEASS Family** ](https://opensea.io/collection/the-peass-family ), our collection of exclusive [**NFTs** ](https://opensea.io/collection/the-peass-family )
2022-04-28 16:01:33 +00:00
2022-09-09 11:28:04 +00:00
- Get the [**official PEASS & HackTricks swag** ](https://peass.creator-spring.com )
2022-04-28 16:01:33 +00:00
2022-09-09 11:28:04 +00:00
- **Join the** [**💬** ](https://emojipedia.org/speech-balloon/ ) [**Discord group** ](https://discord.gg/hRep4RUj7f ) or the [**telegram group** ](https://t.me/peass ) or **follow** me on **Twitter** [**🐦** ](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md )[**@carlospolopm** ](https://twitter.com/carlospolopm )**.**
2022-04-28 16:01:33 +00:00
2022-09-09 11:28:04 +00:00
- **Share your hacking tricks by submitting PRs to the** [**hacktricks github repo** ](https://github.com/carlospolop/hacktricks )**.**
2022-04-28 16:01:33 +00:00
< / details >